From 564c3f9933f1d0b527fd17054b6b04a66c8a576b Mon Sep 17 00:00:00 2001 From: lhy1024 Date: Fri, 7 Mar 2025 02:18:13 +0800 Subject: [PATCH 01/25] resource control: support more mode for BURSTABLE Signed-off-by: lhy1024 --- .../information-schema-resource-groups.md | 42 ++++++++++--------- .../sql-statement-alter-resource-group.md | 12 +++--- .../sql-statement-create-resource-group.md | 16 +++---- .../sql-statement-drop-resource-group.md | 10 ++--- tidb-resource-control-background-tasks.md | 10 ++--- tidb-resource-control-ru-groups.md | 2 +- 6 files changed, 47 insertions(+), 45 deletions(-) diff --git a/information-schema/information-schema-resource-groups.md b/information-schema/information-schema-resource-groups.md index 65ac6eee14e6..8bf93f94ae82 100644 --- a/information-schema/information-schema-resource-groups.md +++ b/information-schema/information-schema-resource-groups.md @@ -13,14 +13,16 @@ DESC resource_groups; ``` ```sql -+------------+-------------+------+------+---------+-------+ -| Field | Type | Null | Key | Default | Extra | -+------------+-------------+------+------+---------+-------+ -| NAME | varchar(32) | NO | | NULL | | -| RU_PER_SEC | bigint(21) | YES | | NULL | | -| PRIORITY | varchar(6) | YES | | NULL | | -| BURSTABLE | varchar(3) | YES | | NULL | | -+------------+-------------+------+------+---------+-------+ ++-------------+--------------+------+------+---------+-------+ +| Field | Type | Null | Key | Default | Extra | ++-------------+--------------+------+------+---------+-------+ +| NAME | varchar(32) | NO | | NULL | | +| RU_PER_SEC | varchar(21) | YES | | NULL | | +| PRIORITY | varchar(6) | YES | | NULL | | +| BURSTABLE | varchar(3) | YES | | NULL | | +| QUERY_LIMIT | varchar(256) | YES | | NULL | | +| BACKGROUND | varchar(256) | YES | | NULL | | ++-------------+--------------+------+------+---------+-------+ 3 rows in set (0.00 sec) ``` @@ -31,11 +33,11 @@ SELECT * FROM information_schema.resource_groups; -- 查看资源组,TiDB 默 ``` ```sql -+---------+------------+----------+-----------+ -| NAME | RU_PER_SEC | PRIORITY | BURSTABLE | -+---------+------------+----------+-----------+ -| default | UNLIMITED | MEDIUM | YES | -+---------+------------+----------+-----------+ ++---------+------------+----------+----------------+-------------+------------+ +| NAME | RU_PER_SEC | PRIORITY | BURSTABLE | QUERY_LIMIT | BACKGROUND | ++---------+------------+----------+----------------+-------------+------------+ +| default | UNLIMITED | MEDIUM | YES(UNLIMITED) | NULL | NULL | ++---------+------------+----------+----------------+-------------+------------+ ``` ```sql @@ -64,11 +66,11 @@ SELECT * FROM information_schema.resource_groups WHERE NAME = 'rg1'; -- 查看 ``` ```sql -+------+------------+----------+-----------+-------------+ -| NAME | RU_PER_SEC | PRIORITY | BURSTABLE | QUERY_LIMIT | -+------+------------+----------+-----------+-------------+ -| rg1 | 1000 | MEDIUM | NO | NULL | -+------+------------+----------+-----------+-------------+ ++------+------------+----------+-----------+-------------+------------+ +| NAME | RU_PER_SEC | PRIORITY | BURSTABLE | QUERY_LIMIT | BACKGROUND | ++------+------------+----------+-----------+-------------+------------+ +| rg1 | 1000 | MEDIUM | NO | NULL | NULL | ++------+------------+----------+-----------+-------------+------------+ 1 row in set (0.00 sec) ``` @@ -77,8 +79,8 @@ SELECT * FROM information_schema.resource_groups WHERE NAME = 'rg1'; -- 查看 * `NAME`:资源组名称。 * `RU_PER_SEC`:资源组的回填速度,单位为每秒回填的 [Request Unit (RU)](/tidb-resource-control-ru-groups.md#什么是-request-unit-ru) 数量。 * `PRIORITY`:任务在 TiKV 上处理的绝对优先级。不同的资源按照 `PRIORITY` 的设置进行调度,`PRIORITY` 高的任务会被优先调度。如果资源组的 `PRIORITY` 相同,则会根据 `RU_PER_SEC` 的配置按比例调度。如果不指定 `PRIORITY`,资源组的默认优先级为 `MEDIUM`。 -* `BURSTABLE`:是否允许此资源组超额使用剩余的系统资源。 +* `BURSTABLE`:是否允许此资源组超额使用剩余的系统资源。分为三种模式,`OFF`,即不允许此资源组超额使用剩余的系统资源;`MODERATED`,即有限度地允许此资源组超额使用剩余的系统资源;`UNLIMITED`,即无限度地允许此资源组超额使用剩余的系统资源。如果仅配置 `BURSTABLE`,而未指定 `MODERATED` 或者是 `UNLIMITED`,将默认启用 `MODERATED`。 > **注意:** > -> TiDB 集群在初始化时会自动创建 `default` 资源组,其 `RU_PER_SEC` 的默认值为 `UNLIMITED` (等同于 `INT` 类型最大值,即 `2147483647`),且为 `BURSTABLE` 模式。所有未绑定资源组的请求都将自动绑定至此资源组。在新建配置其他资源组时,建议根据实际情况修改 `default` 资源组的配置。 +> TiDB 集群在初始化时会自动创建 `default` 资源组,其 `RU_PER_SEC` 的默认值为 `UNLIMITED` (等同于 `INT` 类型最大值,即 `2147483647`),且 `BURSTABLE` 为 `UNLIMITED` 模式。对于没有绑定资源组的语句会自动绑定至此资源组。此资源组不支持删除,但允许修改其 RU 的配置。 diff --git a/sql-statements/sql-statement-alter-resource-group.md b/sql-statements/sql-statement-alter-resource-group.md index 4cddfa61605e..73fd8009883a 100644 --- a/sql-statements/sql-statement-alter-resource-group.md +++ b/sql-statements/sql-statement-alter-resource-group.md @@ -80,7 +80,7 @@ TiDB 支持以下 `DirectResourceGroupOption`, 其中 [Request Unit (RU)](/tidb- |---------------|--------------|--------------------------------------| | `RU_PER_SEC` | 每秒 RU 填充的速度 | `RU_PER_SEC = 500` 表示此资源组每秒回填 500 个 RU。 | | `PRIORITY` | 任务在 TiKV 上处理的绝对优先级 | `PRIORITY = HIGH` 表示优先级高。若未指定则默认为 `MEDIUM`。 | -| `BURSTABLE` | 允许对应的资源组超出配额后使用空余的系统资源。 | +| `BURSTABLE` | 允许对应的资源组超出配额后使用空余的系统资源。分为三种模式,`OFF`,即不允许此资源组超额使用剩余的系统资源;`MODERATED`,即有限度地允许此资源组超额使用剩余的系统资源;`UNLIMITED`,即无限度地允许此资源组超额使用剩余的系统资源。如果仅配置 `BURSTABLE`,而未指定 `MODERATED` 或者是 `UNLIMITED`,将默认启用 `MODERATED`。 | | `QUERY_LIMIT` | 当查询执行满足该条件时,识别该查询为 Runaway Query 并执行相应的操作 | `QUERY_LIMIT=(EXEC_ELAPSED='60s', ACTION=KILL, WATCH=EXACT DURATION='10m')` 表示当执行时间超过 60 秒后识别为 Runaway Query,对该查询执行终止操作,并在 10 分钟内对同样的 SQL 直接执行终止操作。`QUERY_LIMIT=()` 或 `QUERY_LIMIT=NULL` 则表示不进行 Runaway 控制。具体参数介绍参见[管理资源消耗超出预期的查询 (Runaway Queries)](/tidb-resource-control-runaway-queries.md)。 | | `BACKGROUND` | 后台任务相关的设置。具体参数介绍参见[管理后台任务](/tidb-resource-control-background-tasks.md) | `BACKGROUND=(TASK_TYPES="br,stats", UTILIZATION_LIMIT=30)` 表示将备份恢复和收集统计信息相关的任务作为后台任务调度,并且后台任务最多可以使用 TiKV 30% 的资源。 | @@ -164,11 +164,11 @@ SELECT * FROM information_schema.resource_groups WHERE NAME ='default'; ``` ```sql -+---------+------------+----------+-----------+-------------+-------------------------------------------+ -| NAME | RU_PER_SEC | PRIORITY | BURSTABLE | QUERY_LIMIT | BACKGROUND | -+---------+------------+----------+-----------+-------------+-------------------------------------------+ -| default | UNLIMITED | MEDIUM | YES | NULL | TASK_TYPES='br,ddl', UTILIZATION_LIMIT=30 | -+---------+------------+----------+-----------+-------------+-------------------------------------------+ ++---------+------------+----------+----------------+-------------+------------+ +| NAME | RU_PER_SEC | PRIORITY | BURSTABLE | QUERY_LIMIT | BACKGROUND | ++---------+------------+----------+----------------+-------------+------------+ +| default | UNLIMITED | MEDIUM | YES(UNLIMITED) | NULL | NULL | ++---------+------------+----------+----------------+-------------+------------+ 1 rows in set (1.30 sec) ``` diff --git a/sql-statements/sql-statement-create-resource-group.md b/sql-statements/sql-statement-create-resource-group.md index dfd06d4343f2..2606737344da 100644 --- a/sql-statements/sql-statement-create-resource-group.md +++ b/sql-statements/sql-statement-create-resource-group.md @@ -77,13 +77,13 @@ TiDB 支持以下 `DirectResourceGroupOption`, 其中 [Request Unit (RU)](/tidb- |---------------|--------------|--------------------------------------| | `RU_PER_SEC` | 每秒 RU 填充的速度 | `RU_PER_SEC = 500` 表示此资源组每秒回填 500 个 RU。 | | `PRIORITY` | 任务在 TiKV 上处理的绝对优先级 | `PRIORITY = HIGH` 表示优先级高。若未指定,则默认为 `MEDIUM`。 | -| `BURSTABLE` | 允许对应的资源组超出配额后使用空余的系统资源。 | +| `BURSTABLE` | 允许对应的资源组超出配额后使用空余的系统资源。分为三种模式,`OFF`,即不允许此资源组超额使用剩余的系统资源;`MODERATED`,即有限度地允许此资源组超额使用剩余的系统资源;`UNLIMITED`,即无限度地允许此资源组超额使用剩余的系统资源。如果仅配置 `BURSTABLE`,而未指定 `MODERATED` 或者是 `UNLIMITED`,将默认启用 `MODERATED`。 | | `QUERY_LIMIT` | 当查询执行满足该条件时,识别该查询为 Runaway Query 并进行相应的控制 | `QUERY_LIMIT=(EXEC_ELAPSED='60s', ACTION=KILL, WATCH=EXACT DURATION='10m')` 表示当执行时间超过 60 秒后识别为 Runaway Query,对该查询执行终止操作,并在 10 分钟内对同样的 SQL 直接执行终止操作。`QUERY_LIMIT=()` 或 `QUERY_LIMIT=NULL` 则表示不进行 Runaway 控制。具体参数介绍详见[管理资源消耗超出预期的查询 (Runaway Queries)](/tidb-resource-control-runaway-queries.md)。 | > **注意:** > > - `CREATE RESOURCE GROUP` 语句只能在全局变量 [`tidb_enable_resource_control`](/system-variables.md#tidb_enable_resource_control-从-v660-版本开始引入) 设置为 `ON` 时才能执行。 -> - TiDB 集群在初始化时会自动创建 `default` 资源组,其 `RU_PER_SEC` 的默认值为 `UNLIMITED` (等同于 `INT` 类型最大值,即 `2147483647`),且为 `BURSTABLE` 模式。所有未绑定资源组的请求都将自动绑定至此资源组。在新建配置其他资源组时,建议根据实际情况修改 `default` 资源组的配置。 +> - TiDB 集群在初始化时会自动创建 `default` 资源组,其 `RU_PER_SEC` 的默认值为 `UNLIMITED` (等同于 `INT` 类型最大值,即 `2147483647`),且 `BURSTABLE` 为 `UNLIMITED` 模式。所有未绑定资源组的请求都将自动绑定至此资源组。在新建配置其他资源组时,建议根据实际情况修改 `default` 资源组的配置。 > - 目前仅 `default` 资源组支持修改 `BACKGROUND` 相关设置。 ## 示例 @@ -123,12 +123,12 @@ SELECT * FROM information_schema.resource_groups WHERE NAME ='rg1' or NAME = 'rg ``` ```sql -+------+------------+----------+-----------+---------------------------------+ -| NAME | RU_PER_SEC | PRIORITY | BURSTABLE | QUERY_LIMIT | -+------+------------+----------+-----------+---------------------------------+ -| rg1 | 100 | HIGH | YES | NULL | -| rg2 | 200 | MEDIUM | NO | EXEC_ELAPSED=100ms, ACTION=KILL | -+------+------------+----------+-----------+---------------------------------+ ++------+------------+----------+----------------+-----------------------------------+------------+ +| NAME | RU_PER_SEC | PRIORITY | BURSTABLE | QUERY_LIMIT | BACKGROUND | ++------+------------+----------+----------------+-----------------------------------+------------+ +| rg1 | 100 | HIGH | YES(UNLIMITED) | NULL | NULL | +| rg2 | 200 | MEDIUM | NO | EXEC_ELAPSED='100ms', ACTION=KILL | NULL | ++------+------------+----------+----------------+-----------------------------------+------------+ 2 rows in set (1.30 sec) ``` diff --git a/sql-statements/sql-statement-drop-resource-group.md b/sql-statements/sql-statement-drop-resource-group.md index df0ca1459b21..8da446632b7d 100644 --- a/sql-statements/sql-statement-drop-resource-group.md +++ b/sql-statements/sql-statement-drop-resource-group.md @@ -51,11 +51,11 @@ SELECT * FROM information_schema.resource_groups WHERE NAME ='rg1'; ``` ```sql -+------+------------+----------+-----------+-------------+ -| NAME | RU_PER_SEC | PRIORITY | BURSTABLE | QUERY_LIMIT | -+------+------------+----------+-----------+-------------+ -| rg1 | 500 | MEDIUM | YES | NULL | -+------+------------+----------+-----------+-------------+ ++------+------------+----------+----------------+-------------+------------+ +| NAME | RU_PER_SEC | PRIORITY | BURSTABLE | QUERY_LIMIT | BACKGROUND | ++------+------------+----------+----------------+-------------+------------+ +| rg1 | 500 | MEDIUM | YES(UNLIMITED) | NULL | NULL | ++------+------------+----------+----------------+-------------+------------+ 1 row in set (0.01 sec) ``` diff --git a/tidb-resource-control-background-tasks.md b/tidb-resource-control-background-tasks.md index 13de02a407f3..52538e22550e 100644 --- a/tidb-resource-control-background-tasks.md +++ b/tidb-resource-control-background-tasks.md @@ -61,11 +61,11 @@ summary: 介绍如何通过资源管控 (Resource Control) 控制后台任务。 输出结果如下: ``` - +---------+------------+----------+-----------+-------------+-------------------------------------------+ - | NAME | RU_PER_SEC | PRIORITY | BURSTABLE | QUERY_LIMIT | BACKGROUND | - +---------+------------+----------+-----------+-------------+-------------------------------------------+ - | default | UNLIMITED | MEDIUM | YES | NULL | TASK_TYPES='br,ddl', UTILIZATION_LIMIT=30 | - +---------+------------+----------+-----------+-------------+-------------------------------------------+ + +---------+------------+----------+----------------+-------------+------------+ + | NAME | RU_PER_SEC | PRIORITY | BURSTABLE | QUERY_LIMIT | BACKGROUND | + +---------+------------+----------+----------------+-------------+------------+ + | default | UNLIMITED | MEDIUM | YES(UNLIMITED) | NULL | NULL | + +---------+------------+----------+----------------+-------------+------------+ ``` 5. 如果希望将当前会话里的任务显式标记为后台类型,你可以使用 `tidb_request_source_type` 显式指定任务类型,如: diff --git a/tidb-resource-control-ru-groups.md b/tidb-resource-control-ru-groups.md index 581425b7cf54..418c56f9a844 100644 --- a/tidb-resource-control-ru-groups.md +++ b/tidb-resource-control-ru-groups.md @@ -180,7 +180,7 @@ ALTER USER usr2 RESOURCE GROUP rg2; > **注意:** > > - 使用 `CREATE USER` 或者 `ALTER USER` 将用户绑定到资源组后,只会对该用户新建的会话生效,不会对该用户已有的会话生效。 -> - TiDB 集群在初始化时会自动创建 `default` 资源组,其 `RU_PER_SEC` 的默认值为 `UNLIMITED` (等同于 `INT` 类型最大值,即 `2147483647`),且为 `BURSTABLE` 模式。对于没有绑定资源组的语句会自动绑定至此资源组。此资源组不支持删除,但允许修改其 RU 的配置。 +> - TiDB 集群在初始化时会自动创建 `default` 资源组,其 `RU_PER_SEC` 的默认值为 `UNLIMITED` (等同于 `INT` 类型最大值,即 `2147483647`),且 `BURSTABLE` 为 `UNLIMITED` 模式。对于没有绑定资源组的语句会自动绑定至此资源组。此资源组不支持删除,但允许修改其 RU 的配置。 要解除用户与资源组的绑定,只需将其重新绑定到 `default` 资源组即可,如下所示: From 8e2dd78cd6d0f205abffd9b29de0508e9165af86 Mon Sep 17 00:00:00 2001 From: lhy1024 Date: Fri, 7 Mar 2025 10:45:03 +0800 Subject: [PATCH 02/25] add more example Signed-off-by: lhy1024 --- sql-statements/sql-statement-alter-resource-group.md | 6 ++++-- sql-statements/sql-statement-create-resource-group.md | 6 ++++-- tidb-resource-control-ru-groups.md | 7 ++++++- 3 files changed, 14 insertions(+), 5 deletions(-) diff --git a/sql-statements/sql-statement-alter-resource-group.md b/sql-statements/sql-statement-alter-resource-group.md index 73fd8009883a..cf238815f54a 100644 --- a/sql-statements/sql-statement-alter-resource-group.md +++ b/sql-statements/sql-statement-alter-resource-group.md @@ -28,8 +28,10 @@ ResourceGroupOptionList ::= DirectResourceGroupOption ::= "RU_PER_SEC" EqOpt LengthNum | "PRIORITY" EqOpt ResourceGroupPriorityOption -| "BURSTABLE" -| "BURSTABLE" EqOpt Boolean +| "BURSTABLE" +| "BURSTABLE" EqOpt "MODERATED" +| "BURSTABLE" EqOpt "UNLIMITED" +| "BURSTABLE" EqOpt "OFF" | "QUERY_LIMIT" EqOpt '(' ResourceGroupRunawayOptionList ')' | "QUERY_LIMIT" EqOpt '(' ')' | "QUERY_LIMIT" EqOpt "NULL" diff --git a/sql-statements/sql-statement-create-resource-group.md b/sql-statements/sql-statement-create-resource-group.md index 2606737344da..29ea7badcabc 100644 --- a/sql-statements/sql-statement-create-resource-group.md +++ b/sql-statements/sql-statement-create-resource-group.md @@ -28,8 +28,10 @@ ResourceGroupOptionList ::= DirectResourceGroupOption ::= "RU_PER_SEC" EqOpt stringLit | "PRIORITY" EqOpt ResourceGroupPriorityOption -| "BURSTABLE" -| "BURSTABLE" EqOpt Boolean +| "BURSTABLE" +| "BURSTABLE" EqOpt "MODERATED" +| "BURSTABLE" EqOpt "UNLIMITED" +| "BURSTABLE" EqOpt "OFF" | "QUERY_LIMIT" EqOpt '(' ResourceGroupRunawayOptionList ')' | "QUERY_LIMIT" EqOpt '(' ')' | "QUERY_LIMIT" EqOpt "NULL" diff --git a/tidb-resource-control-ru-groups.md b/tidb-resource-control-ru-groups.md index 418c56f9a844..e526fbf9fea3 100644 --- a/tidb-resource-control-ru-groups.md +++ b/tidb-resource-control-ru-groups.md @@ -133,12 +133,17 @@ Request Unit (RU) 是 TiDB 对 CPU、IO 等系统资源的统一抽象的计量 下面举例说明如何创建资源组。 -1. 创建 `rg1` 资源组,限额是每秒 500 RU,并且允许这个资源组的应用超额占用资源。 +1. 创建 `rg1` 资源组,限额是每秒 500 RU,并且允许这个资源组的应用超额占用资源。不特意指定的话,其 `BURSTABLE` 模式为 `MODERATED`。 ```sql CREATE RESOURCE GROUP IF NOT EXISTS rg1 RU_PER_SEC = 500 BURSTABLE; ``` +2. 创建 `rg1` 资源组,限额是每秒 500 RU,并且允许这个资源组的应用超额占用资源,其模式为 `UNLIMITED`。 + + ```sql + CREATE RESOURCE GROUP IF NOT EXISTS rg1 RU_PER_SEC = 500 BURSTABLE=UNLIMITED; + 2. 创建 `rg2` 资源组,RU 的回填速度是每秒 600 RU。在系统资源充足的时候,不允许这个资源组的应用超额占用资源。 ```sql From c87dcee28c6691c084b66e5937b59b909beedd4d Mon Sep 17 00:00:00 2001 From: lhy1024 Date: Fri, 7 Mar 2025 11:00:13 +0800 Subject: [PATCH 03/25] fix Signed-off-by: lhy1024 --- tidb-resource-control-ru-groups.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/tidb-resource-control-ru-groups.md b/tidb-resource-control-ru-groups.md index e526fbf9fea3..0a8e09996573 100644 --- a/tidb-resource-control-ru-groups.md +++ b/tidb-resource-control-ru-groups.md @@ -144,13 +144,13 @@ Request Unit (RU) 是 TiDB 对 CPU、IO 等系统资源的统一抽象的计量 ```sql CREATE RESOURCE GROUP IF NOT EXISTS rg1 RU_PER_SEC = 500 BURSTABLE=UNLIMITED; -2. 创建 `rg2` 资源组,RU 的回填速度是每秒 600 RU。在系统资源充足的时候,不允许这个资源组的应用超额占用资源。 +3. 创建 `rg2` 资源组,RU 的回填速度是每秒 600 RU。在系统资源充足的时候,不允许这个资源组的应用超额占用资源。 ```sql CREATE RESOURCE GROUP IF NOT EXISTS rg2 RU_PER_SEC = 600; ``` -3. 创建 `rg3` 资源组,设置绝对优先级为 `HIGH`。绝对优先级目前支持 `LOW|MEDIUM|HIGH`,资源组的默认绝对优先级为 `MEDIUM`。 +4. 创建 `rg3` 资源组,设置绝对优先级为 `HIGH`。绝对优先级目前支持 `LOW|MEDIUM|HIGH`,资源组的默认绝对优先级为 `MEDIUM`。 ```sql CREATE RESOURCE GROUP IF NOT EXISTS rg3 RU_PER_SEC = 100 PRIORITY = HIGH; From c553d320363a0c798e473176cf60834e5658f50f Mon Sep 17 00:00:00 2001 From: lhy1024 Date: Wed, 12 Mar 2025 14:47:11 +0800 Subject: [PATCH 04/25] Update information-schema/information-schema-resource-groups.md Co-authored-by: Roger Song --- information-schema/information-schema-resource-groups.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/information-schema/information-schema-resource-groups.md b/information-schema/information-schema-resource-groups.md index 8bf93f94ae82..9624892c291c 100644 --- a/information-schema/information-schema-resource-groups.md +++ b/information-schema/information-schema-resource-groups.md @@ -79,7 +79,7 @@ SELECT * FROM information_schema.resource_groups WHERE NAME = 'rg1'; -- 查看 * `NAME`:资源组名称。 * `RU_PER_SEC`:资源组的回填速度,单位为每秒回填的 [Request Unit (RU)](/tidb-resource-control-ru-groups.md#什么是-request-unit-ru) 数量。 * `PRIORITY`:任务在 TiKV 上处理的绝对优先级。不同的资源按照 `PRIORITY` 的设置进行调度,`PRIORITY` 高的任务会被优先调度。如果资源组的 `PRIORITY` 相同,则会根据 `RU_PER_SEC` 的配置按比例调度。如果不指定 `PRIORITY`,资源组的默认优先级为 `MEDIUM`。 -* `BURSTABLE`:是否允许此资源组超额使用剩余的系统资源。分为三种模式,`OFF`,即不允许此资源组超额使用剩余的系统资源;`MODERATED`,即有限度地允许此资源组超额使用剩余的系统资源;`UNLIMITED`,即无限度地允许此资源组超额使用剩余的系统资源。如果仅配置 `BURSTABLE`,而未指定 `MODERATED` 或者是 `UNLIMITED`,将默认启用 `MODERATED`。 +* `BURSTABLE`:是否允许此资源组超额使用剩余的系统资源。分为三种模式,`OFF`,即不允许此资源组超额使用剩余的系统资源;`MODERATED`,即有限度地允许此资源组超额使用剩余的系统资源,优先保证资源组限额内的资源得到分配;`UNLIMITED`,即无限度地允许此资源组超额使用剩余的系统资源,与限额内资源同等竞争。如果没有为 `BURSTABLE` 指定目标值,将默认启用 `MODERATED`。 > **注意:** > From 77b5a923db11987534e282be678fa58389ff2f8c Mon Sep 17 00:00:00 2001 From: lhy1024 Date: Wed, 12 Mar 2025 14:47:19 +0800 Subject: [PATCH 05/25] Update sql-statements/sql-statement-alter-resource-group.md Co-authored-by: Roger Song --- sql-statements/sql-statement-alter-resource-group.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sql-statements/sql-statement-alter-resource-group.md b/sql-statements/sql-statement-alter-resource-group.md index cf238815f54a..f31abb1f7cf9 100644 --- a/sql-statements/sql-statement-alter-resource-group.md +++ b/sql-statements/sql-statement-alter-resource-group.md @@ -82,7 +82,7 @@ TiDB 支持以下 `DirectResourceGroupOption`, 其中 [Request Unit (RU)](/tidb- |---------------|--------------|--------------------------------------| | `RU_PER_SEC` | 每秒 RU 填充的速度 | `RU_PER_SEC = 500` 表示此资源组每秒回填 500 个 RU。 | | `PRIORITY` | 任务在 TiKV 上处理的绝对优先级 | `PRIORITY = HIGH` 表示优先级高。若未指定则默认为 `MEDIUM`。 | -| `BURSTABLE` | 允许对应的资源组超出配额后使用空余的系统资源。分为三种模式,`OFF`,即不允许此资源组超额使用剩余的系统资源;`MODERATED`,即有限度地允许此资源组超额使用剩余的系统资源;`UNLIMITED`,即无限度地允许此资源组超额使用剩余的系统资源。如果仅配置 `BURSTABLE`,而未指定 `MODERATED` 或者是 `UNLIMITED`,将默认启用 `MODERATED`。 | +| `BURSTABLE` | 允许对应的资源组超出配额后使用空余的系统资源。分为三种模式,`OFF`,即不允许此资源组超额使用剩余的系统资源;`MODERATED`,即有限度地允许此资源组超额使用剩余的系统资源;`UNLIMITED`,即无限度地允许此资源组超额使用剩余的系统资源。如果没有为 `BURSTABLE` 指定目标值,将默认启用 `MODERATED`。 | | `QUERY_LIMIT` | 当查询执行满足该条件时,识别该查询为 Runaway Query 并执行相应的操作 | `QUERY_LIMIT=(EXEC_ELAPSED='60s', ACTION=KILL, WATCH=EXACT DURATION='10m')` 表示当执行时间超过 60 秒后识别为 Runaway Query,对该查询执行终止操作,并在 10 分钟内对同样的 SQL 直接执行终止操作。`QUERY_LIMIT=()` 或 `QUERY_LIMIT=NULL` 则表示不进行 Runaway 控制。具体参数介绍参见[管理资源消耗超出预期的查询 (Runaway Queries)](/tidb-resource-control-runaway-queries.md)。 | | `BACKGROUND` | 后台任务相关的设置。具体参数介绍参见[管理后台任务](/tidb-resource-control-background-tasks.md) | `BACKGROUND=(TASK_TYPES="br,stats", UTILIZATION_LIMIT=30)` 表示将备份恢复和收集统计信息相关的任务作为后台任务调度,并且后台任务最多可以使用 TiKV 30% 的资源。 | From df1abc7b5ad142fcaf3876a3c3e6329f9610fc12 Mon Sep 17 00:00:00 2001 From: lhy1024 Date: Wed, 12 Mar 2025 14:47:26 +0800 Subject: [PATCH 06/25] Update sql-statements/sql-statement-create-resource-group.md Co-authored-by: Roger Song --- sql-statements/sql-statement-create-resource-group.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sql-statements/sql-statement-create-resource-group.md b/sql-statements/sql-statement-create-resource-group.md index 29ea7badcabc..0d27d1aa5ff9 100644 --- a/sql-statements/sql-statement-create-resource-group.md +++ b/sql-statements/sql-statement-create-resource-group.md @@ -79,7 +79,7 @@ TiDB 支持以下 `DirectResourceGroupOption`, 其中 [Request Unit (RU)](/tidb- |---------------|--------------|--------------------------------------| | `RU_PER_SEC` | 每秒 RU 填充的速度 | `RU_PER_SEC = 500` 表示此资源组每秒回填 500 个 RU。 | | `PRIORITY` | 任务在 TiKV 上处理的绝对优先级 | `PRIORITY = HIGH` 表示优先级高。若未指定,则默认为 `MEDIUM`。 | -| `BURSTABLE` | 允许对应的资源组超出配额后使用空余的系统资源。分为三种模式,`OFF`,即不允许此资源组超额使用剩余的系统资源;`MODERATED`,即有限度地允许此资源组超额使用剩余的系统资源;`UNLIMITED`,即无限度地允许此资源组超额使用剩余的系统资源。如果仅配置 `BURSTABLE`,而未指定 `MODERATED` 或者是 `UNLIMITED`,将默认启用 `MODERATED`。 | +| `BURSTABLE` | 允许对应的资源组超出配额后使用空余的系统资源。分为三种模式,`OFF`,即不允许此资源组超额使用剩余的系统资源;`MODERATED`,即有限度地允许此资源组超额使用剩余的系统资源;`UNLIMITED`,即无限度地允许此资源组超额使用剩余的系统资源。如果没有为 `BURSTABLE` 指定目标值,将默认启用 `MODERATED`。 | | `QUERY_LIMIT` | 当查询执行满足该条件时,识别该查询为 Runaway Query 并进行相应的控制 | `QUERY_LIMIT=(EXEC_ELAPSED='60s', ACTION=KILL, WATCH=EXACT DURATION='10m')` 表示当执行时间超过 60 秒后识别为 Runaway Query,对该查询执行终止操作,并在 10 分钟内对同样的 SQL 直接执行终止操作。`QUERY_LIMIT=()` 或 `QUERY_LIMIT=NULL` 则表示不进行 Runaway 控制。具体参数介绍详见[管理资源消耗超出预期的查询 (Runaway Queries)](/tidb-resource-control-runaway-queries.md)。 | > **注意:** From b98db284dd4f5bafa49e825c6fb09497c2591b01 Mon Sep 17 00:00:00 2001 From: lhy1024 Date: Fri, 6 Jun 2025 18:20:39 +0800 Subject: [PATCH 07/25] fix typo Signed-off-by: lhy1024 --- .../sql-statement-create-resource-group.md | 2 +- sql-statements/sql-statement-drop-resource-group.md | 2 +- tidb-resource-control-ru-groups.md | 13 +++++++------ 3 files changed, 9 insertions(+), 8 deletions(-) diff --git a/sql-statements/sql-statement-create-resource-group.md b/sql-statements/sql-statement-create-resource-group.md index 29ea7badcabc..a1e5a2cff697 100644 --- a/sql-statements/sql-statement-create-resource-group.md +++ b/sql-statements/sql-statement-create-resource-group.md @@ -128,7 +128,7 @@ SELECT * FROM information_schema.resource_groups WHERE NAME ='rg1' or NAME = 'rg +------+------------+----------+----------------+-----------------------------------+------------+ | NAME | RU_PER_SEC | PRIORITY | BURSTABLE | QUERY_LIMIT | BACKGROUND | +------+------------+----------+----------------+-----------------------------------+------------+ -| rg1 | 100 | HIGH | YES(UNLIMITED) | NULL | NULL | +| rg1 | 100 | HIGH | YES(MODERATED) | NULL | NULL | | rg2 | 200 | MEDIUM | NO | EXEC_ELAPSED='100ms', ACTION=KILL | NULL | +------+------------+----------+----------------+-----------------------------------+------------+ 2 rows in set (1.30 sec) diff --git a/sql-statements/sql-statement-drop-resource-group.md b/sql-statements/sql-statement-drop-resource-group.md index 8da446632b7d..df00d137b2a7 100644 --- a/sql-statements/sql-statement-drop-resource-group.md +++ b/sql-statements/sql-statement-drop-resource-group.md @@ -54,7 +54,7 @@ SELECT * FROM information_schema.resource_groups WHERE NAME ='rg1'; +------+------------+----------+----------------+-------------+------------+ | NAME | RU_PER_SEC | PRIORITY | BURSTABLE | QUERY_LIMIT | BACKGROUND | +------+------------+----------+----------------+-------------+------------+ -| rg1 | 500 | MEDIUM | YES(UNLIMITED) | NULL | NULL | +| rg1 | 500 | MEDIUM | YES(MODERATED) | NULL | NULL | +------+------------+----------+----------------+-------------+------------+ 1 row in set (0.01 sec) ``` diff --git a/tidb-resource-control-ru-groups.md b/tidb-resource-control-ru-groups.md index 0a8e09996573..74ebed608049 100644 --- a/tidb-resource-control-ru-groups.md +++ b/tidb-resource-control-ru-groups.md @@ -139,21 +139,22 @@ Request Unit (RU) 是 TiDB 对 CPU、IO 等系统资源的统一抽象的计量 CREATE RESOURCE GROUP IF NOT EXISTS rg1 RU_PER_SEC = 500 BURSTABLE; ``` -2. 创建 `rg1` 资源组,限额是每秒 500 RU,并且允许这个资源组的应用超额占用资源,其模式为 `UNLIMITED`。 +2. 创建 `rg2` 资源组,RU 的回填速度是每秒 600 RU。在系统资源充足的时候,不允许这个资源组的应用超额占用资源。 ```sql - CREATE RESOURCE GROUP IF NOT EXISTS rg1 RU_PER_SEC = 500 BURSTABLE=UNLIMITED; + CREATE RESOURCE GROUP IF NOT EXISTS rg2 RU_PER_SEC = 600; + ``` -3. 创建 `rg2` 资源组,RU 的回填速度是每秒 600 RU。在系统资源充足的时候,不允许这个资源组的应用超额占用资源。 +3. 创建 `rg3` 资源组,设置绝对优先级为 `HIGH`。绝对优先级目前支持 `LOW|MEDIUM|HIGH`,资源组的默认绝对优先级为 `MEDIUM`。 ```sql - CREATE RESOURCE GROUP IF NOT EXISTS rg2 RU_PER_SEC = 600; + CREATE RESOURCE GROUP IF NOT EXISTS rg3 RU_PER_SEC = 100 PRIORITY = HIGH; ``` -4. 创建 `rg3` 资源组,设置绝对优先级为 `HIGH`。绝对优先级目前支持 `LOW|MEDIUM|HIGH`,资源组的默认绝对优先级为 `MEDIUM`。 +4. 创建 `rg4` 资源组,限额是每秒 500 RU,并且允许这个资源组的应用超额占用资源,其模式为 `UNLIMITED`。 ```sql - CREATE RESOURCE GROUP IF NOT EXISTS rg3 RU_PER_SEC = 100 PRIORITY = HIGH; + CREATE RESOURCE GROUP IF NOT EXISTS rg4 RU_PER_SEC = 500 BURSTABLE=UNLIMITED; ``` ### 绑定资源组 From df0a2068ed70bb77e3f7c9826334d258631feac3 Mon Sep 17 00:00:00 2001 From: lhy1024 Date: Wed, 11 Jun 2025 16:30:55 +0800 Subject: [PATCH 08/25] Update information-schema/information-schema-resource-groups.md Co-authored-by: Lilian Lee --- information-schema/information-schema-resource-groups.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/information-schema/information-schema-resource-groups.md b/information-schema/information-schema-resource-groups.md index 9624892c291c..2ab365d458d2 100644 --- a/information-schema/information-schema-resource-groups.md +++ b/information-schema/information-schema-resource-groups.md @@ -23,7 +23,7 @@ DESC resource_groups; | QUERY_LIMIT | varchar(256) | YES | | NULL | | | BACKGROUND | varchar(256) | YES | | NULL | | +-------------+--------------+------+------+---------+-------+ -3 rows in set (0.00 sec) +6 rows in set (0.00 sec) ``` ## 示例 From ac2c3bbe77a7473737ef847cf7177301d3687923 Mon Sep 17 00:00:00 2001 From: lhy1024 Date: Wed, 11 Jun 2025 16:31:49 +0800 Subject: [PATCH 09/25] Update information-schema/information-schema-resource-groups.md Co-authored-by: Lilian Lee --- information-schema/information-schema-resource-groups.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/information-schema/information-schema-resource-groups.md b/information-schema/information-schema-resource-groups.md index 2ab365d458d2..e2add2657564 100644 --- a/information-schema/information-schema-resource-groups.md +++ b/information-schema/information-schema-resource-groups.md @@ -83,4 +83,4 @@ SELECT * FROM information_schema.resource_groups WHERE NAME = 'rg1'; -- 查看 > **注意:** > -> TiDB 集群在初始化时会自动创建 `default` 资源组,其 `RU_PER_SEC` 的默认值为 `UNLIMITED` (等同于 `INT` 类型最大值,即 `2147483647`),且 `BURSTABLE` 为 `UNLIMITED` 模式。对于没有绑定资源组的语句会自动绑定至此资源组。此资源组不支持删除,但允许修改其 RU 的配置。 +> TiDB 集群在初始化时会自动创建 `default` 资源组,其 `RU_PER_SEC` 的默认值为 `UNLIMITED` (等同于 `INT` 类型最大值,即 `2147483647`),且 `BURSTABLE` 为 `UNLIMITED` 模式。所有未绑定资源组的语句将自动绑定至该资源组。`default` 资源组不支持删除,但支持修改其 RU 配置。 From 049c96bef212ae30c56b52be74155f4b0491934d Mon Sep 17 00:00:00 2001 From: lhy1024 Date: Wed, 11 Jun 2025 16:32:04 +0800 Subject: [PATCH 10/25] Update sql-statements/sql-statement-create-resource-group.md Co-authored-by: Lilian Lee --- sql-statements/sql-statement-create-resource-group.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sql-statements/sql-statement-create-resource-group.md b/sql-statements/sql-statement-create-resource-group.md index 72cf8768b2e7..5586e5e67278 100644 --- a/sql-statements/sql-statement-create-resource-group.md +++ b/sql-statements/sql-statement-create-resource-group.md @@ -85,7 +85,7 @@ TiDB 支持以下 `DirectResourceGroupOption`, 其中 [Request Unit (RU)](/tidb- > **注意:** > > - `CREATE RESOURCE GROUP` 语句只能在全局变量 [`tidb_enable_resource_control`](/system-variables.md#tidb_enable_resource_control-从-v660-版本开始引入) 设置为 `ON` 时才能执行。 -> - TiDB 集群在初始化时会自动创建 `default` 资源组,其 `RU_PER_SEC` 的默认值为 `UNLIMITED` (等同于 `INT` 类型最大值,即 `2147483647`),且 `BURSTABLE` 为 `UNLIMITED` 模式。所有未绑定资源组的请求都将自动绑定至此资源组。在新建配置其他资源组时,建议根据实际情况修改 `default` 资源组的配置。 +> - TiDB 集群在初始化时会自动创建 `default` 资源组,其 `RU_PER_SEC` 的默认值为 `UNLIMITED` (等同于 `INT` 类型最大值,即 `2147483647`),且 `BURSTABLE` 为 `UNLIMITED` 模式。所有未绑定资源组的语句将自动绑定至该资源组。在新建配置其他资源组时,建议根据实际情况修改 `default` 资源组的配置。 > - 目前仅 `default` 资源组支持修改 `BACKGROUND` 相关设置。 ## 示例 From 7ea1e6de592ab68195e3a39d7af42e6befc22d82 Mon Sep 17 00:00:00 2001 From: lhy1024 Date: Wed, 11 Jun 2025 16:32:35 +0800 Subject: [PATCH 11/25] Update tidb-resource-control-ru-groups.md Co-authored-by: Lilian Lee --- tidb-resource-control-ru-groups.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tidb-resource-control-ru-groups.md b/tidb-resource-control-ru-groups.md index 74ebed608049..842c31907327 100644 --- a/tidb-resource-control-ru-groups.md +++ b/tidb-resource-control-ru-groups.md @@ -151,7 +151,7 @@ Request Unit (RU) 是 TiDB 对 CPU、IO 等系统资源的统一抽象的计量 CREATE RESOURCE GROUP IF NOT EXISTS rg3 RU_PER_SEC = 100 PRIORITY = HIGH; ``` -4. 创建 `rg4` 资源组,限额是每秒 500 RU,并且允许这个资源组的应用超额占用资源,其模式为 `UNLIMITED`。 +4. 创建 `rg4` 资源组,限额是每秒 500 RU,并且允许这个资源组的应用超额占用资源,其 `BURSTABLE` 模式为 `UNLIMITED`。 ```sql CREATE RESOURCE GROUP IF NOT EXISTS rg4 RU_PER_SEC = 500 BURSTABLE=UNLIMITED; From e0034c26a2530afdbbd94f96a26ea0c03de20bc5 Mon Sep 17 00:00:00 2001 From: lhy1024 Date: Wed, 11 Jun 2025 16:33:15 +0800 Subject: [PATCH 12/25] Update tidb-resource-control-ru-groups.md Co-authored-by: Lilian Lee --- tidb-resource-control-ru-groups.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tidb-resource-control-ru-groups.md b/tidb-resource-control-ru-groups.md index 842c31907327..4f62168864ea 100644 --- a/tidb-resource-control-ru-groups.md +++ b/tidb-resource-control-ru-groups.md @@ -186,7 +186,7 @@ ALTER USER usr2 RESOURCE GROUP rg2; > **注意:** > > - 使用 `CREATE USER` 或者 `ALTER USER` 将用户绑定到资源组后,只会对该用户新建的会话生效,不会对该用户已有的会话生效。 -> - TiDB 集群在初始化时会自动创建 `default` 资源组,其 `RU_PER_SEC` 的默认值为 `UNLIMITED` (等同于 `INT` 类型最大值,即 `2147483647`),且 `BURSTABLE` 为 `UNLIMITED` 模式。对于没有绑定资源组的语句会自动绑定至此资源组。此资源组不支持删除,但允许修改其 RU 的配置。 +> - TiDB 集群在初始化时会自动创建 `default` 资源组,其 `RU_PER_SEC` 的默认值为 `UNLIMITED` (等同于 `INT` 类型最大值,即 `2147483647`),且 `BURSTABLE` 为 `UNLIMITED` 模式。所有未绑定资源组的语句将自动绑定至该资源组。`default` 资源组不支持删除,但支持修改其 RU 配置。 要解除用户与资源组的绑定,只需将其重新绑定到 `default` 资源组即可,如下所示: From f1d3139ec7fe99ed8b2522ad171b22a26cbdceee Mon Sep 17 00:00:00 2001 From: lhy1024 Date: Wed, 11 Jun 2025 16:40:00 +0800 Subject: [PATCH 13/25] Update tidb-resource-control-ru-groups.md Co-authored-by: Lilian Lee --- tidb-resource-control-ru-groups.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tidb-resource-control-ru-groups.md b/tidb-resource-control-ru-groups.md index 4f62168864ea..618de141e9ae 100644 --- a/tidb-resource-control-ru-groups.md +++ b/tidb-resource-control-ru-groups.md @@ -133,7 +133,7 @@ Request Unit (RU) 是 TiDB 对 CPU、IO 等系统资源的统一抽象的计量 下面举例说明如何创建资源组。 -1. 创建 `rg1` 资源组,限额是每秒 500 RU,并且允许这个资源组的应用超额占用资源。不特意指定的话,其 `BURSTABLE` 模式为 `MODERATED`。 +1. 创建 `rg1` 资源组,限额是每秒 500 RU,并且允许这个资源组的应用超额占用资源。如果不特意指定 `BURSTABLE` 模式,则默认启用 `MODERATED` 模式。 ```sql CREATE RESOURCE GROUP IF NOT EXISTS rg1 RU_PER_SEC = 500 BURSTABLE; From aa316af8185b8cc3c6269bb98362062172c2bc73 Mon Sep 17 00:00:00 2001 From: lhy1024 Date: Wed, 11 Jun 2025 16:42:59 +0800 Subject: [PATCH 14/25] Update information-schema/information-schema-resource-groups.md Co-authored-by: Lilian Lee --- information-schema/information-schema-resource-groups.md | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/information-schema/information-schema-resource-groups.md b/information-schema/information-schema-resource-groups.md index e2add2657564..3b6f4d398f07 100644 --- a/information-schema/information-schema-resource-groups.md +++ b/information-schema/information-schema-resource-groups.md @@ -79,7 +79,10 @@ SELECT * FROM information_schema.resource_groups WHERE NAME = 'rg1'; -- 查看 * `NAME`:资源组名称。 * `RU_PER_SEC`:资源组的回填速度,单位为每秒回填的 [Request Unit (RU)](/tidb-resource-control-ru-groups.md#什么是-request-unit-ru) 数量。 * `PRIORITY`:任务在 TiKV 上处理的绝对优先级。不同的资源按照 `PRIORITY` 的设置进行调度,`PRIORITY` 高的任务会被优先调度。如果资源组的 `PRIORITY` 相同,则会根据 `RU_PER_SEC` 的配置按比例调度。如果不指定 `PRIORITY`,资源组的默认优先级为 `MEDIUM`。 -* `BURSTABLE`:是否允许此资源组超额使用剩余的系统资源。分为三种模式,`OFF`,即不允许此资源组超额使用剩余的系统资源;`MODERATED`,即有限度地允许此资源组超额使用剩余的系统资源,优先保证资源组限额内的资源得到分配;`UNLIMITED`,即无限度地允许此资源组超额使用剩余的系统资源,与限额内资源同等竞争。如果没有为 `BURSTABLE` 指定目标值,将默认启用 `MODERATED`。 +* `BURSTABLE`:是否允许此资源组超额使用剩余的系统资源。支持以下三种模式,如果没有为 `BURSTABLE` 指定目标值,将默认启用 `MODERATED` 模式。 + - `OFF`:表示不允许此资源组超额使用剩余的系统资源; + - `MODERATED`:表示有限度地允许此资源组超额使用剩余的系统资源,优先保证资源组限额内的资源得到分配; + - `UNLIMITED`:表示无限度地允许此资源组超额使用剩余的系统资源,与限额内资源同等竞争。 > **注意:** > From 0aa58630d62b2b965f0824b709f9524f251e4716 Mon Sep 17 00:00:00 2001 From: lhy1024 Date: Wed, 11 Jun 2025 16:43:07 +0800 Subject: [PATCH 15/25] Update sql-statements/sql-statement-create-resource-group.md Co-authored-by: Lilian Lee --- sql-statements/sql-statement-create-resource-group.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sql-statements/sql-statement-create-resource-group.md b/sql-statements/sql-statement-create-resource-group.md index 5586e5e67278..f7737c824f43 100644 --- a/sql-statements/sql-statement-create-resource-group.md +++ b/sql-statements/sql-statement-create-resource-group.md @@ -79,7 +79,7 @@ TiDB 支持以下 `DirectResourceGroupOption`, 其中 [Request Unit (RU)](/tidb- |---------------|--------------|--------------------------------------| | `RU_PER_SEC` | 每秒 RU 填充的速度 | `RU_PER_SEC = 500` 表示此资源组每秒回填 500 个 RU。 | | `PRIORITY` | 任务在 TiKV 上处理的绝对优先级 | `PRIORITY = HIGH` 表示优先级高。若未指定,则默认为 `MEDIUM`。 | -| `BURSTABLE` | 允许对应的资源组超出配额后使用空余的系统资源。分为三种模式,`OFF`,即不允许此资源组超额使用剩余的系统资源;`MODERATED`,即有限度地允许此资源组超额使用剩余的系统资源;`UNLIMITED`,即无限度地允许此资源组超额使用剩余的系统资源。如果没有为 `BURSTABLE` 指定目标值,将默认启用 `MODERATED`。 | +| `BURSTABLE` | 允许对应的资源组超出配额后使用空余的系统资源。分为三种模式:`OFF`,表示不允许此资源组超额使用剩余的系统资源;`MODERATED`,表示有限度地允许此资源组超额使用剩余的系统资源;`UNLIMITED`,表示无限度地允许此资源组超额使用剩余的系统资源。如果没有为 `BURSTABLE` 指定目标值,将默认启用 `MODERATED` 模式。 | | `QUERY_LIMIT` | 当查询执行满足该条件时,识别该查询为 Runaway Query 并进行相应的控制 | `QUERY_LIMIT=(EXEC_ELAPSED='60s', ACTION=KILL, WATCH=EXACT DURATION='10m')` 表示当执行时间超过 60 秒后识别为 Runaway Query,对该查询执行终止操作,并在 10 分钟内对同样的 SQL 直接执行终止操作。`QUERY_LIMIT=()` 或 `QUERY_LIMIT=NULL` 则表示不进行 Runaway 控制。具体参数介绍详见[管理资源消耗超出预期的查询 (Runaway Queries)](/tidb-resource-control-runaway-queries.md)。 | > **注意:** From ef332aff17a6a013702d8360fdc84e0d683878fe Mon Sep 17 00:00:00 2001 From: Lilian Lee Date: Wed, 11 Jun 2025 16:53:53 +0800 Subject: [PATCH 16/25] Update wording for consistency --- sql-statements/sql-statement-alter-resource-group.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sql-statements/sql-statement-alter-resource-group.md b/sql-statements/sql-statement-alter-resource-group.md index f31abb1f7cf9..adf628af95ee 100644 --- a/sql-statements/sql-statement-alter-resource-group.md +++ b/sql-statements/sql-statement-alter-resource-group.md @@ -82,7 +82,7 @@ TiDB 支持以下 `DirectResourceGroupOption`, 其中 [Request Unit (RU)](/tidb- |---------------|--------------|--------------------------------------| | `RU_PER_SEC` | 每秒 RU 填充的速度 | `RU_PER_SEC = 500` 表示此资源组每秒回填 500 个 RU。 | | `PRIORITY` | 任务在 TiKV 上处理的绝对优先级 | `PRIORITY = HIGH` 表示优先级高。若未指定则默认为 `MEDIUM`。 | -| `BURSTABLE` | 允许对应的资源组超出配额后使用空余的系统资源。分为三种模式,`OFF`,即不允许此资源组超额使用剩余的系统资源;`MODERATED`,即有限度地允许此资源组超额使用剩余的系统资源;`UNLIMITED`,即无限度地允许此资源组超额使用剩余的系统资源。如果没有为 `BURSTABLE` 指定目标值,将默认启用 `MODERATED`。 | +| `BURSTABLE` | 允许对应的资源组超出配额后使用空余的系统资源。分为三种模式:`OFF`,表示不允许此资源组超额使用剩余的系统资源;`MODERATED`,表示有限度地允许此资源组超额使用剩余的系统资源;`UNLIMITED`,表示无限度地允许此资源组超额使用剩余的系统资源。如果没有为 `BURSTABLE` 指定目标值,将默认启用 `MODERATED` 模式。 | | `QUERY_LIMIT` | 当查询执行满足该条件时,识别该查询为 Runaway Query 并执行相应的操作 | `QUERY_LIMIT=(EXEC_ELAPSED='60s', ACTION=KILL, WATCH=EXACT DURATION='10m')` 表示当执行时间超过 60 秒后识别为 Runaway Query,对该查询执行终止操作,并在 10 分钟内对同样的 SQL 直接执行终止操作。`QUERY_LIMIT=()` 或 `QUERY_LIMIT=NULL` 则表示不进行 Runaway 控制。具体参数介绍参见[管理资源消耗超出预期的查询 (Runaway Queries)](/tidb-resource-control-runaway-queries.md)。 | | `BACKGROUND` | 后台任务相关的设置。具体参数介绍参见[管理后台任务](/tidb-resource-control-background-tasks.md) | `BACKGROUND=(TASK_TYPES="br,stats", UTILIZATION_LIMIT=30)` 表示将备份恢复和收集统计信息相关的任务作为后台任务调度,并且后台任务最多可以使用 TiKV 30% 的资源。 | From ddbafce9e00ba5051e0bcebc2e78acb2186904d2 Mon Sep 17 00:00:00 2001 From: lilin90 Date: Mon, 16 Jun 2025 17:05:43 +0800 Subject: [PATCH 17/25] Remove tabs --- sql-statements/sql-statement-alter-resource-group.md | 8 ++++---- sql-statements/sql-statement-create-resource-group.md | 8 ++++---- 2 files changed, 8 insertions(+), 8 deletions(-) diff --git a/sql-statements/sql-statement-alter-resource-group.md b/sql-statements/sql-statement-alter-resource-group.md index adf628af95ee..452f986f9c8b 100644 --- a/sql-statements/sql-statement-alter-resource-group.md +++ b/sql-statements/sql-statement-alter-resource-group.md @@ -28,10 +28,10 @@ ResourceGroupOptionList ::= DirectResourceGroupOption ::= "RU_PER_SEC" EqOpt LengthNum | "PRIORITY" EqOpt ResourceGroupPriorityOption -| "BURSTABLE" -| "BURSTABLE" EqOpt "MODERATED" -| "BURSTABLE" EqOpt "UNLIMITED" -| "BURSTABLE" EqOpt "OFF" +| "BURSTABLE" +| "BURSTABLE" EqOpt "MODERATED" +| "BURSTABLE" EqOpt "UNLIMITED" +| "BURSTABLE" EqOpt "OFF" | "QUERY_LIMIT" EqOpt '(' ResourceGroupRunawayOptionList ')' | "QUERY_LIMIT" EqOpt '(' ')' | "QUERY_LIMIT" EqOpt "NULL" diff --git a/sql-statements/sql-statement-create-resource-group.md b/sql-statements/sql-statement-create-resource-group.md index f7737c824f43..2adaac23e98d 100644 --- a/sql-statements/sql-statement-create-resource-group.md +++ b/sql-statements/sql-statement-create-resource-group.md @@ -28,10 +28,10 @@ ResourceGroupOptionList ::= DirectResourceGroupOption ::= "RU_PER_SEC" EqOpt stringLit | "PRIORITY" EqOpt ResourceGroupPriorityOption -| "BURSTABLE" -| "BURSTABLE" EqOpt "MODERATED" -| "BURSTABLE" EqOpt "UNLIMITED" -| "BURSTABLE" EqOpt "OFF" +| "BURSTABLE" +| "BURSTABLE" EqOpt "MODERATED" +| "BURSTABLE" EqOpt "UNLIMITED" +| "BURSTABLE" EqOpt "OFF" | "QUERY_LIMIT" EqOpt '(' ResourceGroupRunawayOptionList ')' | "QUERY_LIMIT" EqOpt '(' ')' | "QUERY_LIMIT" EqOpt "NULL" From 0c88290e0637f9e0aa0c9724d8cdb17eb4e972a1 Mon Sep 17 00:00:00 2001 From: Lilian Lee Date: Thu, 26 Jun 2025 17:53:49 +0800 Subject: [PATCH 18/25] Update table format --- sql-statements/sql-statement-alter-resource-group.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sql-statements/sql-statement-alter-resource-group.md b/sql-statements/sql-statement-alter-resource-group.md index 452f986f9c8b..642e8a60eacb 100644 --- a/sql-statements/sql-statement-alter-resource-group.md +++ b/sql-statements/sql-statement-alter-resource-group.md @@ -82,7 +82,7 @@ TiDB 支持以下 `DirectResourceGroupOption`, 其中 [Request Unit (RU)](/tidb- |---------------|--------------|--------------------------------------| | `RU_PER_SEC` | 每秒 RU 填充的速度 | `RU_PER_SEC = 500` 表示此资源组每秒回填 500 个 RU。 | | `PRIORITY` | 任务在 TiKV 上处理的绝对优先级 | `PRIORITY = HIGH` 表示优先级高。若未指定则默认为 `MEDIUM`。 | -| `BURSTABLE` | 允许对应的资源组超出配额后使用空余的系统资源。分为三种模式:`OFF`,表示不允许此资源组超额使用剩余的系统资源;`MODERATED`,表示有限度地允许此资源组超额使用剩余的系统资源;`UNLIMITED`,表示无限度地允许此资源组超额使用剩余的系统资源。如果没有为 `BURSTABLE` 指定目标值,将默认启用 `MODERATED` 模式。 | +| `BURSTABLE` | 允许对应的资源组超出配额后使用空余的系统资源。 | 分为三种模式:`OFF`,表示不允许此资源组超额使用剩余的系统资源;`MODERATED`,表示有限度地允许此资源组超额使用剩余的系统资源;`UNLIMITED`,表示无限度地允许此资源组超额使用剩余的系统资源。如果没有为 `BURSTABLE` 指定目标值,将默认启用 `MODERATED` 模式。 | | `QUERY_LIMIT` | 当查询执行满足该条件时,识别该查询为 Runaway Query 并执行相应的操作 | `QUERY_LIMIT=(EXEC_ELAPSED='60s', ACTION=KILL, WATCH=EXACT DURATION='10m')` 表示当执行时间超过 60 秒后识别为 Runaway Query,对该查询执行终止操作,并在 10 分钟内对同样的 SQL 直接执行终止操作。`QUERY_LIMIT=()` 或 `QUERY_LIMIT=NULL` 则表示不进行 Runaway 控制。具体参数介绍参见[管理资源消耗超出预期的查询 (Runaway Queries)](/tidb-resource-control-runaway-queries.md)。 | | `BACKGROUND` | 后台任务相关的设置。具体参数介绍参见[管理后台任务](/tidb-resource-control-background-tasks.md) | `BACKGROUND=(TASK_TYPES="br,stats", UTILIZATION_LIMIT=30)` 表示将备份恢复和收集统计信息相关的任务作为后台任务调度,并且后台任务最多可以使用 TiKV 30% 的资源。 | From a50ac16b45dac028ac1bba40f38ef730911c316d Mon Sep 17 00:00:00 2001 From: Lilian Lee Date: Thu, 26 Jun 2025 17:55:39 +0800 Subject: [PATCH 19/25] Update for wording and format consistency --- sql-statements/sql-statement-alter-resource-group.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sql-statements/sql-statement-alter-resource-group.md b/sql-statements/sql-statement-alter-resource-group.md index 642e8a60eacb..2ab2bed24737 100644 --- a/sql-statements/sql-statement-alter-resource-group.md +++ b/sql-statements/sql-statement-alter-resource-group.md @@ -82,7 +82,7 @@ TiDB 支持以下 `DirectResourceGroupOption`, 其中 [Request Unit (RU)](/tidb- |---------------|--------------|--------------------------------------| | `RU_PER_SEC` | 每秒 RU 填充的速度 | `RU_PER_SEC = 500` 表示此资源组每秒回填 500 个 RU。 | | `PRIORITY` | 任务在 TiKV 上处理的绝对优先级 | `PRIORITY = HIGH` 表示优先级高。若未指定则默认为 `MEDIUM`。 | -| `BURSTABLE` | 允许对应的资源组超出配额后使用空余的系统资源。 | 分为三种模式:`OFF`,表示不允许此资源组超额使用剩余的系统资源;`MODERATED`,表示有限度地允许此资源组超额使用剩余的系统资源;`UNLIMITED`,表示无限度地允许此资源组超额使用剩余的系统资源。如果没有为 `BURSTABLE` 指定目标值,将默认启用 `MODERATED` 模式。 | +| `BURSTABLE` | 是否允许对应的资源组超出配额后使用空余的系统资源 | 分为三种模式:`OFF`,表示不允许此资源组超额使用剩余的系统资源;`MODERATED`,表示有限度地允许此资源组超额使用剩余的系统资源;`UNLIMITED`,表示无限度地允许此资源组超额使用剩余的系统资源。如果没有为 `BURSTABLE` 指定目标值,将默认启用 `MODERATED` 模式。 | | `QUERY_LIMIT` | 当查询执行满足该条件时,识别该查询为 Runaway Query 并执行相应的操作 | `QUERY_LIMIT=(EXEC_ELAPSED='60s', ACTION=KILL, WATCH=EXACT DURATION='10m')` 表示当执行时间超过 60 秒后识别为 Runaway Query,对该查询执行终止操作,并在 10 分钟内对同样的 SQL 直接执行终止操作。`QUERY_LIMIT=()` 或 `QUERY_LIMIT=NULL` 则表示不进行 Runaway 控制。具体参数介绍参见[管理资源消耗超出预期的查询 (Runaway Queries)](/tidb-resource-control-runaway-queries.md)。 | | `BACKGROUND` | 后台任务相关的设置。具体参数介绍参见[管理后台任务](/tidb-resource-control-background-tasks.md) | `BACKGROUND=(TASK_TYPES="br,stats", UTILIZATION_LIMIT=30)` 表示将备份恢复和收集统计信息相关的任务作为后台任务调度,并且后台任务最多可以使用 TiKV 30% 的资源。 | From b105eb3a4c356258f0a713988c02588124b2e3ff Mon Sep 17 00:00:00 2001 From: Lilian Lee Date: Thu, 26 Jun 2025 17:57:48 +0800 Subject: [PATCH 20/25] Update wording for consistency --- sql-statements/sql-statement-alter-resource-group.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sql-statements/sql-statement-alter-resource-group.md b/sql-statements/sql-statement-alter-resource-group.md index 2ab2bed24737..2a31eac43821 100644 --- a/sql-statements/sql-statement-alter-resource-group.md +++ b/sql-statements/sql-statement-alter-resource-group.md @@ -82,7 +82,7 @@ TiDB 支持以下 `DirectResourceGroupOption`, 其中 [Request Unit (RU)](/tidb- |---------------|--------------|--------------------------------------| | `RU_PER_SEC` | 每秒 RU 填充的速度 | `RU_PER_SEC = 500` 表示此资源组每秒回填 500 个 RU。 | | `PRIORITY` | 任务在 TiKV 上处理的绝对优先级 | `PRIORITY = HIGH` 表示优先级高。若未指定则默认为 `MEDIUM`。 | -| `BURSTABLE` | 是否允许对应的资源组超出配额后使用空余的系统资源 | 分为三种模式:`OFF`,表示不允许此资源组超额使用剩余的系统资源;`MODERATED`,表示有限度地允许此资源组超额使用剩余的系统资源;`UNLIMITED`,表示无限度地允许此资源组超额使用剩余的系统资源。如果没有为 `BURSTABLE` 指定目标值,将默认启用 `MODERATED` 模式。 | +| `BURSTABLE` | 是否允许此资源组超额使用剩余的系统资源 | 分为三种模式:`OFF`,表示不允许此资源组超额使用剩余的系统资源;`MODERATED`,表示有限度地允许此资源组超额使用剩余的系统资源;`UNLIMITED`,表示无限度地允许此资源组超额使用剩余的系统资源。如果没有为 `BURSTABLE` 指定目标值,将默认启用 `MODERATED` 模式。 | | `QUERY_LIMIT` | 当查询执行满足该条件时,识别该查询为 Runaway Query 并执行相应的操作 | `QUERY_LIMIT=(EXEC_ELAPSED='60s', ACTION=KILL, WATCH=EXACT DURATION='10m')` 表示当执行时间超过 60 秒后识别为 Runaway Query,对该查询执行终止操作,并在 10 分钟内对同样的 SQL 直接执行终止操作。`QUERY_LIMIT=()` 或 `QUERY_LIMIT=NULL` 则表示不进行 Runaway 控制。具体参数介绍参见[管理资源消耗超出预期的查询 (Runaway Queries)](/tidb-resource-control-runaway-queries.md)。 | | `BACKGROUND` | 后台任务相关的设置。具体参数介绍参见[管理后台任务](/tidb-resource-control-background-tasks.md) | `BACKGROUND=(TASK_TYPES="br,stats", UTILIZATION_LIMIT=30)` 表示将备份恢复和收集统计信息相关的任务作为后台任务调度,并且后台任务最多可以使用 TiKV 30% 的资源。 | From 86159ca82df596f15d521a687d8d4e8a186c0e7a Mon Sep 17 00:00:00 2001 From: Lilian Lee Date: Thu, 26 Jun 2025 18:18:53 +0800 Subject: [PATCH 21/25] Update format --- sql-statements/sql-statement-create-resource-group.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sql-statements/sql-statement-create-resource-group.md b/sql-statements/sql-statement-create-resource-group.md index 2adaac23e98d..876f54361ee4 100644 --- a/sql-statements/sql-statement-create-resource-group.md +++ b/sql-statements/sql-statement-create-resource-group.md @@ -79,7 +79,7 @@ TiDB 支持以下 `DirectResourceGroupOption`, 其中 [Request Unit (RU)](/tidb- |---------------|--------------|--------------------------------------| | `RU_PER_SEC` | 每秒 RU 填充的速度 | `RU_PER_SEC = 500` 表示此资源组每秒回填 500 个 RU。 | | `PRIORITY` | 任务在 TiKV 上处理的绝对优先级 | `PRIORITY = HIGH` 表示优先级高。若未指定,则默认为 `MEDIUM`。 | -| `BURSTABLE` | 允许对应的资源组超出配额后使用空余的系统资源。分为三种模式:`OFF`,表示不允许此资源组超额使用剩余的系统资源;`MODERATED`,表示有限度地允许此资源组超额使用剩余的系统资源;`UNLIMITED`,表示无限度地允许此资源组超额使用剩余的系统资源。如果没有为 `BURSTABLE` 指定目标值,将默认启用 `MODERATED` 模式。 | +| `BURSTABLE` | 是否允许此资源组超额使用剩余的系统资源 | 分为三种模式:`OFF`,表示不允许此资源组超额使用剩余的系统资源;`MODERATED`,表示有限度地允许此资源组超额使用剩余的系统资源;`UNLIMITED`,表示无限度地允许此资源组超额使用剩余的系统资源。如果没有为 `BURSTABLE` 指定目标值,将默认启用 `MODERATED` 模式。 | | `QUERY_LIMIT` | 当查询执行满足该条件时,识别该查询为 Runaway Query 并进行相应的控制 | `QUERY_LIMIT=(EXEC_ELAPSED='60s', ACTION=KILL, WATCH=EXACT DURATION='10m')` 表示当执行时间超过 60 秒后识别为 Runaway Query,对该查询执行终止操作,并在 10 分钟内对同样的 SQL 直接执行终止操作。`QUERY_LIMIT=()` 或 `QUERY_LIMIT=NULL` 则表示不进行 Runaway 控制。具体参数介绍详见[管理资源消耗超出预期的查询 (Runaway Queries)](/tidb-resource-control-runaway-queries.md)。 | > **注意:** From bd9328eafb0d24a8a3eb4451461fbfabf58b4243 Mon Sep 17 00:00:00 2001 From: Lilian Lee Date: Thu, 26 Jun 2025 18:19:35 +0800 Subject: [PATCH 22/25] Update for consistency --- sql-statements/sql-statement-create-resource-group.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sql-statements/sql-statement-create-resource-group.md b/sql-statements/sql-statement-create-resource-group.md index 876f54361ee4..9990bbb43ab1 100644 --- a/sql-statements/sql-statement-create-resource-group.md +++ b/sql-statements/sql-statement-create-resource-group.md @@ -85,7 +85,7 @@ TiDB 支持以下 `DirectResourceGroupOption`, 其中 [Request Unit (RU)](/tidb- > **注意:** > > - `CREATE RESOURCE GROUP` 语句只能在全局变量 [`tidb_enable_resource_control`](/system-variables.md#tidb_enable_resource_control-从-v660-版本开始引入) 设置为 `ON` 时才能执行。 -> - TiDB 集群在初始化时会自动创建 `default` 资源组,其 `RU_PER_SEC` 的默认值为 `UNLIMITED` (等同于 `INT` 类型最大值,即 `2147483647`),且 `BURSTABLE` 为 `UNLIMITED` 模式。所有未绑定资源组的语句将自动绑定至该资源组。在新建配置其他资源组时,建议根据实际情况修改 `default` 资源组的配置。 +> - TiDB 集群在初始化时会自动创建 `default` 资源组,其 `RU_PER_SEC` 的默认值为 `UNLIMITED` (等同于 `INT` 类型最大值,即 `2147483647`),且 `BURSTABLE` 为 `UNLIMITED` 模式。所有未绑定资源组的语句将自动绑定至该资源组。`default` 资源组不支持删除,但支持修改其 RU 配置。 > - 目前仅 `default` 资源组支持修改 `BACKGROUND` 相关设置。 ## 示例 From 41f242c2dfd9d0e7ba5c9582d2a7362e7616bb34 Mon Sep 17 00:00:00 2001 From: lhy1024 Date: Thu, 3 Jul 2025 10:55:32 +0800 Subject: [PATCH 23/25] Update information-schema/information-schema-resource-groups.md Co-authored-by: xixirangrang --- information-schema/information-schema-resource-groups.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/information-schema/information-schema-resource-groups.md b/information-schema/information-schema-resource-groups.md index 3b6f4d398f07..100b3bb9f1e9 100644 --- a/information-schema/information-schema-resource-groups.md +++ b/information-schema/information-schema-resource-groups.md @@ -81,8 +81,8 @@ SELECT * FROM information_schema.resource_groups WHERE NAME = 'rg1'; -- 查看 * `PRIORITY`:任务在 TiKV 上处理的绝对优先级。不同的资源按照 `PRIORITY` 的设置进行调度,`PRIORITY` 高的任务会被优先调度。如果资源组的 `PRIORITY` 相同,则会根据 `RU_PER_SEC` 的配置按比例调度。如果不指定 `PRIORITY`,资源组的默认优先级为 `MEDIUM`。 * `BURSTABLE`:是否允许此资源组超额使用剩余的系统资源。支持以下三种模式,如果没有为 `BURSTABLE` 指定目标值,将默认启用 `MODERATED` 模式。 - `OFF`:表示不允许此资源组超额使用剩余的系统资源; - - `MODERATED`:表示有限度地允许此资源组超额使用剩余的系统资源,优先保证资源组限额内的资源得到分配; - - `UNLIMITED`:表示无限度地允许此资源组超额使用剩余的系统资源,与限额内资源同等竞争。 + - `MODERATED`:表示**有限度**地允许此资源组超额使用剩余的系统资源,优先保证资源组限额内的资源得到分配; + - `UNLIMITED`:表示**无限度**地允许此资源组超额使用剩余的系统资源,与限额内资源同等竞争。 > **注意:** > From b87569752a7970176d9cb616aa233dc55f4362e2 Mon Sep 17 00:00:00 2001 From: lhy1024 Date: Fri, 4 Jul 2025 16:07:12 +0800 Subject: [PATCH 24/25] update Signed-off-by: lhy1024 --- .../information-schema-resource-groups.md | 12 ++++++------ .../sql-statement-alter-resource-group.md | 14 +++++++------- .../sql-statement-create-resource-group.md | 12 ++++++------ .../sql-statement-drop-resource-group.md | 10 +++++----- tidb-resource-control-background-tasks.md | 10 +++++----- 5 files changed, 29 insertions(+), 29 deletions(-) diff --git a/information-schema/information-schema-resource-groups.md b/information-schema/information-schema-resource-groups.md index e2add2657564..b134574b16d9 100644 --- a/information-schema/information-schema-resource-groups.md +++ b/information-schema/information-schema-resource-groups.md @@ -33,11 +33,11 @@ SELECT * FROM information_schema.resource_groups; -- 查看资源组,TiDB 默 ``` ```sql -+---------+------------+----------+----------------+-------------+------------+ -| NAME | RU_PER_SEC | PRIORITY | BURSTABLE | QUERY_LIMIT | BACKGROUND | -+---------+------------+----------+----------------+-------------+------------+ -| default | UNLIMITED | MEDIUM | YES(UNLIMITED) | NULL | NULL | -+---------+------------+----------+----------------+-------------+------------+ ++---------+------------+----------+-----------+-------------+------------+ +| NAME | RU_PER_SEC | PRIORITY | BURSTABLE | QUERY_LIMIT | BACKGROUND | ++---------+------------+----------+-----------+-------------+------------+ +| default | UNLIMITED | MEDIUM | UNLIMITED | NULL | NULL | ++---------+------------+----------+-----------+-------------+------------+ ``` ```sql @@ -69,7 +69,7 @@ SELECT * FROM information_schema.resource_groups WHERE NAME = 'rg1'; -- 查看 +------+------------+----------+-----------+-------------+------------+ | NAME | RU_PER_SEC | PRIORITY | BURSTABLE | QUERY_LIMIT | BACKGROUND | +------+------------+----------+-----------+-------------+------------+ -| rg1 | 1000 | MEDIUM | NO | NULL | NULL | +| rg1 | 1000 | MEDIUM | OFF | NULL | NULL | +------+------------+----------+-----------+-------------+------------+ 1 row in set (0.00 sec) ``` diff --git a/sql-statements/sql-statement-alter-resource-group.md b/sql-statements/sql-statement-alter-resource-group.md index f31abb1f7cf9..83a8b3f5d103 100644 --- a/sql-statements/sql-statement-alter-resource-group.md +++ b/sql-statements/sql-statement-alter-resource-group.md @@ -122,7 +122,7 @@ SELECT * FROM information_schema.resource_groups WHERE NAME ='rg1'; +------+------------+----------+-----------+-------------+------------+ | NAME | RU_PER_SEC | PRIORITY | BURSTABLE | QUERY_LIMIT | BACKGROUND | +------+------------+----------+-----------+-------------+------------+ -| rg1 | 100 | MEDIUM | NO | NULL | NULL | +| rg1 | 100 | MEDIUM | OFF | NULL | NULL | +------+------------+----------+-----------+-------------+------------+ 1 rows in set (1.30 sec) ``` @@ -146,7 +146,7 @@ SELECT * FROM information_schema.resource_groups WHERE NAME ='rg1'; +------+------------+----------+-----------+----------------------------------------------------------------+------------+ | NAME | RU_PER_SEC | PRIORITY | BURSTABLE | QUERY_LIMIT | BACKGROUND | +------+------------+----------+-----------+----------------------------------------------------------------+------------+ -| rg1 | 200 | LOW | NO | EXEC_ELAPSED='1s', ACTION=COOLDOWN, WATCH=EXACT DURATION='30s' | NULL | +| rg1 | 200 | LOW | OFF | EXEC_ELAPSED='1s', ACTION=COOLDOWN, WATCH=EXACT DURATION='30s' | NULL | +------+------------+----------+-----------+----------------------------------------------------------------+------------+ 1 rows in set (1.30 sec) ``` @@ -166,11 +166,11 @@ SELECT * FROM information_schema.resource_groups WHERE NAME ='default'; ``` ```sql -+---------+------------+----------+----------------+-------------+------------+ -| NAME | RU_PER_SEC | PRIORITY | BURSTABLE | QUERY_LIMIT | BACKGROUND | -+---------+------------+----------+----------------+-------------+------------+ -| default | UNLIMITED | MEDIUM | YES(UNLIMITED) | NULL | NULL | -+---------+------------+----------+----------------+-------------+------------+ ++---------+------------+----------+-----------+-------------+------------+ +| NAME | RU_PER_SEC | PRIORITY | BURSTABLE | QUERY_LIMIT | BACKGROUND | ++---------+------------+----------+-----------+-------------+------------+ +| default | UNLIMITED | MEDIUM | UNLIMITED | NULL | NULL | ++---------+------------+----------+-----------+-------------+------------+ 1 rows in set (1.30 sec) ``` diff --git a/sql-statements/sql-statement-create-resource-group.md b/sql-statements/sql-statement-create-resource-group.md index 5586e5e67278..9e091bea3b3d 100644 --- a/sql-statements/sql-statement-create-resource-group.md +++ b/sql-statements/sql-statement-create-resource-group.md @@ -125,12 +125,12 @@ SELECT * FROM information_schema.resource_groups WHERE NAME ='rg1' or NAME = 'rg ``` ```sql -+------+------------+----------+----------------+-----------------------------------+------------+ -| NAME | RU_PER_SEC | PRIORITY | BURSTABLE | QUERY_LIMIT | BACKGROUND | -+------+------------+----------+----------------+-----------------------------------+------------+ -| rg1 | 100 | HIGH | YES(MODERATED) | NULL | NULL | -| rg2 | 200 | MEDIUM | NO | EXEC_ELAPSED='100ms', ACTION=KILL | NULL | -+------+------------+----------+----------------+-----------------------------------+------------+ ++------+------------+----------+-----------+-----------------------------------+------------+ +| NAME | RU_PER_SEC | PRIORITY | BURSTABL | QUERY_LIMIT | BACKGROUND | ++------+------------+----------+-----------+-----------------------------------+------------+ +| rg1 | 100 | HIGH | MODERATED | NULL | NULL | +| rg2 | 200 | MEDIUM | OFF | EXEC_ELAPSED='100ms', ACTION=KILL | NULL | ++------+------------+----------+-----------+-----------------------------------+------------+ 2 rows in set (1.30 sec) ``` diff --git a/sql-statements/sql-statement-drop-resource-group.md b/sql-statements/sql-statement-drop-resource-group.md index df00d137b2a7..f52ae16a47f0 100644 --- a/sql-statements/sql-statement-drop-resource-group.md +++ b/sql-statements/sql-statement-drop-resource-group.md @@ -51,11 +51,11 @@ SELECT * FROM information_schema.resource_groups WHERE NAME ='rg1'; ``` ```sql -+------+------------+----------+----------------+-------------+------------+ -| NAME | RU_PER_SEC | PRIORITY | BURSTABLE | QUERY_LIMIT | BACKGROUND | -+------+------------+----------+----------------+-------------+------------+ -| rg1 | 500 | MEDIUM | YES(MODERATED) | NULL | NULL | -+------+------------+----------+----------------+-------------+------------+ ++------+------------+----------+-----------+-------------+------------+ +| NAME | RU_PER_SEC | PRIORITY | BURSTABLE | QUERY_LIMIT | BACKGROUND | ++------+------------+----------+-----------+-------------+------------+ +| rg1 | 500 | MEDIUM | MODERATED | NULL | NULL | ++------+------------+----------+-----------+-------------+------------+ 1 row in set (0.01 sec) ``` diff --git a/tidb-resource-control-background-tasks.md b/tidb-resource-control-background-tasks.md index 52538e22550e..2905542dab30 100644 --- a/tidb-resource-control-background-tasks.md +++ b/tidb-resource-control-background-tasks.md @@ -61,11 +61,11 @@ summary: 介绍如何通过资源管控 (Resource Control) 控制后台任务。 输出结果如下: ``` - +---------+------------+----------+----------------+-------------+------------+ - | NAME | RU_PER_SEC | PRIORITY | BURSTABLE | QUERY_LIMIT | BACKGROUND | - +---------+------------+----------+----------------+-------------+------------+ - | default | UNLIMITED | MEDIUM | YES(UNLIMITED) | NULL | NULL | - +---------+------------+----------+----------------+-------------+------------+ + +---------+------------+----------+-----------+-------------+------------+ + | NAME | RU_PER_SEC | PRIORITY | BURSTABLE | QUERY_LIMIT | BACKGROUND | + +---------+------------+----------+-----------+-------------+------------+ + | default | UNLIMITED | MEDIUM | UNLIMITED | NULL | NULL | + +---------+------------+----------+-----------+-------------+------------+ ``` 5. 如果希望将当前会话里的任务显式标记为后台类型,你可以使用 `tidb_request_source_type` 显式指定任务类型,如: From 364bacbc04806b85612f8a63c6eff32135ee99f6 Mon Sep 17 00:00:00 2001 From: Lilian Lee Date: Mon, 14 Jul 2025 14:05:07 +0800 Subject: [PATCH 25/25] Update wording Co-authored-by: xixirangrang --- tidb-resource-control-ru-groups.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tidb-resource-control-ru-groups.md b/tidb-resource-control-ru-groups.md index 618de141e9ae..44627357eeb7 100644 --- a/tidb-resource-control-ru-groups.md +++ b/tidb-resource-control-ru-groups.md @@ -151,7 +151,7 @@ Request Unit (RU) 是 TiDB 对 CPU、IO 等系统资源的统一抽象的计量 CREATE RESOURCE GROUP IF NOT EXISTS rg3 RU_PER_SEC = 100 PRIORITY = HIGH; ``` -4. 创建 `rg4` 资源组,限额是每秒 500 RU,并且允许这个资源组的应用超额占用资源,其 `BURSTABLE` 模式为 `UNLIMITED`。 +4. 创建 `rg4` 资源组,限额是每秒 500 RU,并将 `BURSTABLE` 模式设为 `UNLIMITED`,无限度地允许该资源组的应用超额使用资源。 ```sql CREATE RESOURCE GROUP IF NOT EXISTS rg4 RU_PER_SEC = 500 BURSTABLE=UNLIMITED;