説明
この構成パラメータは、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;