サブプログラム SET_TABLEGROUP_BALANCE_WEIGHT は、SHARDING NONE タイプのテーブルグループの重みを設定します。
説明
このサブプログラムは、V4.4.1バージョンからサポートされています。
構文
DBMS_BALANCE.SET_TABLEGROUP_BALANCE_WEIGHT(
weight INT,
tablegroup_name VARCHAR(65535)
);
パラメータ説明
パラメータ |
説明 |
|---|---|
| weight | テーブルグループの重み値(整数)。値の範囲は[1, +∞)です。値が大きいほど、割り当てられるリソースの割合が高くなります。 |
| tablegroup_name | テーブルグループ名。 |
使用方法
DBMS_BALANCE.SET_TABLEGROUP_BALANCE_WEIGHT は、SHARDING NONE テーブルグループの重みを設定します。
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を参照してください。