リソースグループの作成

CREATE RESOURCE GROUPステートメントを使用してリソース グループを作成できます。

注記:

この機能はTiDB サーバーレスクラスターでは使用できません。

概要

CreateResourceGroupStmt
CREATERESOURCEGROUPIfNotExistsResourceGroupNameResourceGroupOptionList
IfNotExists
IFNOTEXISTS
ResourceGroupName
IdentifierDEFAULT
ResourceGroupOptionList
DirectResourceGroupOptionResourceGroupOptionListDirectResourceGroupOptionResourceGroupOptionList,DirectResourceGroupOption
DirectResourceGroupOption
RU_PER_SECEqOptstringLitPRIORITYEqOptResourceGroupPriorityOptionBURSTABLEBURSTABLEEqOptBooleanQUERY_LIMITEqOpt(ResourceGroupRunawayOptionList)QUERY_LIMITEqOpt()QUERY_LIMITEqOptNULLBACKGROUNDEqOpt(BackgroundOptionList)BACKGROUNDEqOpt()BACKGROUNDEqOptNULL
ResourceGroupPriorityOption
LOWMEDIUMHIGH
ResourceGroupRunawayOptionList
DirectResourceGroupRunawayOptionResourceGroupRunawayOptionListDirectResourceGroupRunawayOptionResourceGroupRunawayOptionList,DirectResourceGroupRunawayOption
DirectResourceGroupRunawayOption
EXEC_ELAPSEDEqOptstringLitACTIONEqOptResourceGroupRunawayActionOptionWATCHEqOptResourceGroupRunawayWatchOptionWatchDurationOption
WatchDurationOption
DURATIONEqOptstringLitDURATIONEqOptUNLIMITED
ResourceGroupRunawayWatchOption
EXACTSIMILARPLAN
ResourceGroupRunawayActionOption
DRYRUNCOOLDOWNKILL

リソースグループ名パラメータ( ResourceGroupName )はグローバルに一意である必要があります。

TiDB は次のDirectResourceGroupOptionをサポートします。3 リクエストユニット (RU) 、CPU、IO、およびその他のシステム リソース用の TiDB 内の統一された抽象化単位です。

オプション説明
RU_PER_SEC1秒あたりのRUバックフィル速度RU_PER_SEC = 500 、このリソース グループが 1 秒あたり 500 RU でバックフィルされることを示します。
PRIORITYTiKVで処理されるタスクの絶対的な優先度PRIORITY = HIGH優先度が高いことを示します。指定しない場合、デフォルト値はMEDIUMです。
BURSTABLEBURSTABLE属性が設定されている場合、TiDB は、クォータを超えたときに、対応するリソース グループが使用可能なシステム リソースを使用することを許可します。
QUERY_LIMITクエリ実行がこの条件を満たす場合、クエリはランナウェイ クエリとして識別され、対応するアクションが実行されます。QUERY_LIMIT=(EXEC_ELAPSED='60s', ACTION=KILL, WATCH=EXACT DURATION='10m') 、実行時間が 60 秒を超えるとクエリがランナウェイ クエリとして識別されることを示します。クエリは終了します。同じ SQL テキストを持つすべての SQL ステートメントは、今後 10 分以内に即時に終了しますQUERY_LIMIT=()またはQUERY_LIMIT=NULL 、ランナウェイ制御が有効になっていないことを意味します。6 ランナウェイクエリ参照してください。

注記:

  • CREATE RESOURCE GROUPステートメントは、グローバル変数tidb_enable_resource_controlONに設定されている場合にのみ実行できます。TiDB は、クラスターの初期化中にdefaultリソース グループを自動的に作成します。このリソース グループの場合、 RU_PER_SECのデフォルト値はUNLIMITED ( INTタイプの最大値である2147483647に相当) であり、 BURSTABLEモードです。どのリソース グループにもバインドされていないすべてのリクエストは、このdefaultリソース グループに自動的にバインドされます。別のリソース グループに新しい構成を作成する場合は、必要に応じてdefaultリソース グループの構成を変更することをお勧めします。
  • 現在、 BACKGROUND構成の変更をサポートしているのはdefaultリソース グループのみです。

2 つのリソース グループrg1rg2を作成します。

DROP RESOURCE GROUP IF EXISTS rg1;
Query OK, 0 rows affected (0.22 sec)
CREATE RESOURCE GROUP IF NOT EXISTS rg1 RU_PER_SEC = 100 PRIORITY = HIGH BURSTABLE;
Query OK, 0 rows affected (0.08 sec)
CREATE RESOURCE GROUP IF NOT EXISTS rg2 RU_PER_SEC = 200 QUERY_LIMIT=(EXEC_ELAPSED='100ms', ACTION=KILL);
Query OK, 0 rows affected (0.08 sec)
SELECT * FROM information_schema.resource_groups WHERE NAME ='rg1' or NAME = 'rg2';
+------+------------+----------+-----------+---------------------------------+ | NAME | RU_PER_SEC | PRIORITY | BURSTABLE | QUERY_LIMIT | +------+------------+----------+-----------+---------------------------------+ | rg1 | 100 | HIGH | YES | NULL | | rg2 | 200 | MEDIUM | NO | EXEC_ELAPSED=100ms, ACTION=KILL | +------+------------+----------+-----------+---------------------------------+ 2 rows in set (1.30 sec)

MySQL 互換性

MySQL もリソースグループの作成サポートしていますが、許容されるパラメータが TiDB と異なるため互換性がありません。

参照

このページは役に立ちましたか?