説明
この構成パラメータは、V2.2.30バージョンから導入されました。
機能の概要
writing_throttling_trigger_percentageは、書き込みスロットリングをトリガーするしきい値を設定します。
権限要件
パラメータの確認
sysテナントとすべてのユーザーテナントはSHOW PARAMETERSステートメント、またはGV$OB_PARAMETERSビューを使用してこのパラメータを確認できます。パラメータの変更
sysテナントとユーザーテナントはこの構成パラメータを変更できます。
プロパティの説明
プロパティ |
説明 |
|---|---|
| パラメータタイプ | Int |
| デフォルト値 | 60
説明この構成パラメータは、V4.0.0バージョン以降、デフォルト値が100から60に調整されました。 |
| 値の範囲 | [1, 100] |
| 変更は可能か | はい。ALTER SYSTEM SETステートメントを使用して変更できます。 |
| OBServerノードの再起動が必要か | 不要です。設定は即時に反映されます。 |
使用方法
OceanBaseデータベースは、最新に書き込まれたデータをMemStoreに保存します。メモリオーバーフローを防ぐため、システムは2つの重要な保護メカニズムを提供しています:
- 凍結メカニズム:メモリ内のデータをディスクに永続化し、メモリ空き容量を確保します。
- スロットリングメカニズム:メモリ負荷が高すぎる場合、書き込み速度を低下させることで、メモリ解放のための時間を稼ぎます。
これら2つのメカニズムは、テナントレベルの構成パラメータによってトリガーのタイミングが制御されます。freeze_trigger_percentage(凍結しきい値)と
writing_throttling_trigger_percentage(スロットリングしきい値)です。早期のスロットリングによるパフォーマンス低下を避けるため、
writing_throttling_trigger_percentageの値は必ずfreeze_trigger_percentageの値より大きく設定する必要があります。V4.0.0バージョン以降、この構成パラメータのデフォルト値は60に調整されました。これは、スロットリング機能が非常に安定しており、ほとんどの業務シナリオでは、突発的なインポートトラフィックを除いて、基本的にスロットリングがトリガーされないためです。インポートシナリオにおいても、最終的に書き込みが停止するよりも、スロットリングの方がユーザー体験が良いため、デフォルトでこの機能は有効になっています。スロットリングの効果をスムーズにするため、スロットリングのトリガーポイントを80ではなく60に設定しています。スロットリングのトリガーポイントを80に設定すると、残りの20%のbufferを消費して、累積した80%のMEMStoreメモリ使用量を緩和する必要があり、これによりスロットリングの効果が極めて急激になり、業務側の応答時間が急激に増加することになります。
MemStoreの使用済みメモリがこのしきい値に達すると、書き込みスロットリングがトリガーされます。この構成パラメータの値が100の場合、書き込みスロットリングメカニズムは無効になります。
設定例
書き込みスロットリングのしきい値を60に設定します。
obclient> ALTER SYSTEM SET writing_throttling_trigger_percentage = 60;