業務ニーズに応じて、SHARDING プロパティを持つテーブルグループを作成できます。
制限事項
OceanBaseデータベースのアップグレード中は、テーブルグループの作成は禁止されています。
テーブルグループの作成
テーブルグループを作成するSQLステートメントは次のとおりです:
CREATE TABLEGROUP tablegroup_name [tablegroup_option];
tablegroup_option:
SHARDING = 'NONE'
SHARDING = 'PARTITION'
SHARDING = 'ADAPTIVE'
ステートメントの使用方法:
tablegroup_name:作成するテーブルグループ名。SHARDING:テーブルグループのプロパティ。異なるプロパティ値は、テーブルグループ内のテーブルに対して異なる要件を課します。SHARDINGプロパティを指定しない場合、デフォルトでSHARDING = 'ADAPTIVE'のテーブルグループが作成されます。SHARDING = 'NONE':テーブルグループに追加されるテーブルに対して、特に制限はありません。SHARDING = 'PARTITION':テーブルグループに追加されるすべてのテーブルについて、その対応するパーティションの定義(パーティションタイプ、パーティション数、パーティション値を含む)が、テーブルグループ内のすべてのテーブルのパーティションの定義と一致している必要があります。同一のパーティション定義とは具体的には以下を指します:
- パーティションタイプが同一であること。例えば、どちらもRangeパーティションである場合。
- Hashパーティションの場合、参照する列数とパーティション数が同一であること。
- Rangeパーティションの場合、参照する列数とパーティション数が同一であり、かつRange分割ポイントも同一であること。
SHARDING = 'ADAPTIVE':テーブルグループに追加されるすべてのテーブルについて、その対応するパーティションとサブパーティションの定義(パーティションタイプ、パーティション数、パーティション値を含む)が、テーブルグループ内のすべてのテーブルのパーティションとサブパーティションの定義と一致している必要があります。同一のパーティション定義とは具体的には以下を指します:
- パーティションタイプが同一であること。例えば、どちらもHash + Rangeパーティションである場合。
- Hashパーティションの場合、参照する列数とパーティション数が同一であること。
- Rangeパーティションの場合、参照する列数とパーティション数が同一であり、かつRange分割ポイントも同一であること。
- サブパーティションについては、そのパーティションタイプに基づき、パーティションと同様の要件が適用されます。
テーブルグループを作成する例は次のとおりです:
CREATE TABLEGROUP tblgroup1 SHARDING = 'NONE';
次のステップ
テーブルグループを作成した後、条件を満たす既存のテーブルをテーブルグループに追加できます。具体的な操作については、テーブルをテーブルグループに追加するを参照してください。