説明
この構成パラメータは、V2.2.30バージョンから導入されました。
機能の概要
default_progressive_merge_numは、テーブル作成時のデフォルトのプログレッシブマージ回数を設定します。
権限要件
パラメータの確認
sysテナントとすべてのユーザーテナントはSHOW PARAMETERSステートメント、またはGV$OB_PARAMETERSビューを使用してこのパラメータを確認できます。パラメータの変更
sysテナントとユーザーテナントはこの構成パラメータを変更できます。
プロパティの説明
プロパティ |
説明 |
|---|---|
| パラメータタイプ | Int |
| デフォルト値 | 0 |
| 値の範囲 | [0, +∞) |
| 変更は可能か | はい。ALTER SYSTEM SETステートメントを使用して変更できます。 |
| OBServerノードの再起動が必要か | 不要です。設定は即時に反映されます。 |
使用方法
OceanBaseデータベースはテーブルデータのプログレッシブマージをサポートしています。これは、テーブルに対してデータ書き換えを必要とするDDL操作を実行した後、テーブルデータの書き換えを複数回のマージに分散し、1回のマージで部分的なデータのみを書き換えることができる機能です。テーブルレベルのプロパティprogressive_merge_numでマージ動作を制御することも、default_progressive_merge_num構成パラメータで新規テーブル作成時のデフォルトのプログレッシブマージ回数を設定することもできます。
新規テーブルにprogressive_merge_numプロパティを指定しなかった場合、システムはテーブルレベルのプロパティprogressive_merge_numの値をdefault_progressive_merge_numの値に設定します。
progressive_merge_numプロパティの値の意味は以下のとおりです:
- progressive_merge_num = 0 の場合、デフォルト値の100を使用します。
- progressive_merge_num = 1 の場合、フルコンパクションのみを強制的に実行し、増分マージやプログレッシブマージは実行しません。
- progressive_merge_num = X の場合、X ラウンドのメジャーコンパクションで全データが書き換えられることを意味し、各ラウンドで 1/X のデータが書き換えられます。
設定例
新規テーブル作成時のプログレッシブコンパクション回数のデフォルト値を 100 に設定します。
obclient> ALTER SYSTEM SET default_progressive_merge_num = 0;