サブプログラム SET_TABLEGROUP_BALANCE_WEIGHT は、Sharding = 'NONE' タイプのテーブルグループの重みを設定します。
説明
このサブプログラムはV4.4.1バージョンからサポートされています。
使用上の制限
V4.4.2バージョンでは:
V4.4.2 BP1(含まれない)以前のバージョンでは、Sharding属性が
NONEのテーブルグループに対してのみ重み設定が可能です。V4.4.2 BP1以降のバージョンでは、
SHARDING = 'NONE'+SCOPE = 'SERVER'およびSHARDING = 'NONE'+SCOPE = 'ZONE'のテーブルグループに対してのみ重み設定が可能であり、SHARDING = 'NONE'+SCOPE = 'CLUSTER'のテーブルグループには対応していません。
構文
DBMS_BALANCE.SET_TABLEGROUP_BALANCE_WEIGHT(
weight INT,
tablegroup_name VARCHAR(65535)
);
パラメータ説明
パラメータ |
説明 |
|---|---|
| weight | テーブルグループの重み値(整数)。値の範囲は[1, +∞)です。値が大きいほど割り当てられるリソースの割合が高くなります。 |
| tablegroup_name | テーブルグループ名。 |
使用方法
enable_database_sharding_none = trueの場合、新規作成されたデータベースに同時に作成されるデフォルトのバインドテーブルグループの重みは1に設定されます。その他、重みが設定されていないSHARDING NONEテーブルグループのデフォルト重みは0であり、重み均等化には参加しません。重みを持つテーブルグループ内では、そのテーブルグループ内のテーブルレベル・パーティションレベルの重みは無効となります。
テーブルグループの重みは最大3段階に分けることを推奨します:
- 大重み = 100% *
SHARDING NONEテーブルグループの総数。 - 中重み = 50% *
SHARDING NONEテーブルグループの総数。 - 小重み = 1。
- 大重み = 100% *
例
sysテナント内で呼び出し、テナント
mysql下のテーブルグループTG_TD_testの重みを10に設定します。obclient> CALL DBMS_BALANCE.SET_TABLEGROUP_BALANCE_WEIGHT(10, 'TG_TD_test') TENANT = 'mysql';ユーザーテナントが呼び出し、自身のテナント配下のテーブルグループ
TG_TD_testの重みを10に設定します。obclient> CALL DBMS_BALANCE.SET_TABLEGROUP_BALANCE_WEIGHT(10, 'TG_TD_test');
関連ドキュメント
Sharding = 'NONE'タイプのテーブルグループの重みを削除する方法の詳細については、CLEAR_TABLEGROUP_BALANCE_WEIGHTを参照してください。- 各テーブルグループの重みを確認する方法の詳細については、oceanbase.CDB_OB_DATABASESまたはoceanbase.DBA_OB_DATABASESを参照してください。
- データベース作成時にユーザーテーブルの自動集計を有効にするかどうかを制御する方法の詳細については、enable_database_sharding_noneを参照してください。