ALTER WORKLOAD GROUP
説明
このステートメントは、ワークロードグループを変更するために使用されます。
構文
ALTER WORKLOAD GROUP "<rg_name>"
PROPERTIES (
`<property>`
[ , ... ]
);
パラメータ
1.<property>
<property> 格式为 <key> = <value>,<key>的具体可选值如下:
| Parameter | デスクリプション | Required |
|---|---|---|
<cpu_share> | ワークロードグループが取得できるCPU時間を設定するために使用され、CPUリソースのソフト分離を実現できます。cpu_shareは、実行中のワークロードグループが利用可能なCPUリソースの重みを示す相対値です。例えば、ユーザーがcpu_shareをそれぞれ10、30、40に設定した3つのワークロードグループrg-a、rg-b、rg-cを作成し、ある時点でrg-aとrg-bがタスクを実行している一方でrg-cにはタスクがない場合、rg-aは(10 / (10 + 30)) = 25%のCPUリソースを取得でき、ワークロードグループrg-bは75%のCPUリソースを取得できます。システムで実行されているワークロードグループが1つだけの場合、そのcpu_shareの値に関係なく、すべてのCPUリソースを取得します。 | Y |
<memory_limit> | ワークロードグループが使用できるbeメモリの割合を設定します。ワークロードグループのメモリ制限の絶対値は:physical_memory * mem_limit * memory_limitです。ここでmem_limitはbe設定項目です。システム内のすべてのワークロードグループのmemory_limitの合計は100%を超えてはいけません。ワークロードグループは、ほとんどの場合、グループ内のタスクに対してmemory_limitの使用が保証されます。ワークロードグループのメモリ使用量がこの制限を超えると、余分なメモリを解放するために、グループ内のより大きなメモリ使用量を持つタスクがキャンセルされる場合があります。enable_memory_overcommitを参照してください。 | Y |
<enable_memory_overcommit> | ワークロードグループのソフトメモリ分離を有効にします。デフォルトはfalseです。falseに設定すると、ワークロードグループはハードメモリ分離され、ワークロードグループのメモリ使用量が制限を超えた直後に、最大のメモリ使用量を持つタスクがすぐにキャンセルされ、余分なメモリが解放されます。trueに設定すると、ワークロードグループはハードメモリ分離され、ワークロードグループのメモリ使用量が制限を超えた直後に、最大のメモリ使用量を持つタスクがすぐにキャンセルされ、余分なメモリが解放されます。trueに設定すると、ワークロードグループはソフト分離され、システムに空きメモリリソースがある場合、ワークロードグループはmemory_limit制限を超えた後もシステムメモリを継続して使用でき、システム全体のメモリが不足すると、最大のメモリ占有量を持つグループ内のいくつかのタスクをキャンセルし、余分なメモリの一部を解放してシステムメモリ圧迫を緩和します。ワークロードグループでこの設定を有効にする場合、すべてのワークロードグループのmemory_limitの合計を100%未満にし、残りの部分をワークロードグループのメモリオーバーコミット用に使用することを推奨します。 | Y |
Examples
-
g1という名前のワークロードグループを変更する:
alter workload group g1
properties (
"cpu_share"="30",
"memory_limit"="30%"
);