title | summary |
---|---|
RESOURCE_GROUPS |
Learn the `RESOURCE_GROUPS` information_schema table. |
Note:
This feature is not available on TiDB Serverless clusters.
The RESOURCE_GROUPS
table shows the information about all resource groups. For more information, see Use Resource Control to Achieve Resource Isolation.
USE information_schema;
DESC resource_groups;
+------------+-------------+------+------+---------+-------+
| 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 | |
+------------+-------------+------+------+---------+-------+
3 rows in set (0.00 sec)
SELECT * FROM information_schema.resource_groups; -- View all resource groups. TiDB has a `default` resource group.
+---------+------------+----------+-----------+
| NAME | RU_PER_SEC | PRIORITY | BURSTABLE |
+---------+------------+----------+-----------+
| default | UNLIMITED | MEDIUM | YES |
+---------+------------+----------+-----------+
CREATE RESOURCE GROUP rg1 RU_PER_SEC=1000; -- Create a resource group `rg1`
Query OK, 0 rows affected (0.34 sec)
SHOW CREATE RESOURCE GROUP rg1; -- Show the definition of the `rg1` resource group
+----------------+---------------------------------------------------------------+
| Resource_Group | Create Resource Group |
+----------------+---------------------------------------------------------------+
| rg1 | CREATE RESOURCE GROUP `rg1` RU_PER_SEC=1000 PRIORITY="MEDIUM" |
+----------------+---------------------------------------------------------------+
1 row in set (0.00 sec)
SELECT * FROM information_schema.resource_groups WHERE NAME = 'rg1'; -- View the resource groups `rg1`
+------+------------+----------+-----------+-------------+
| NAME | RU_PER_SEC | PRIORITY | BURSTABLE | QUERY_LIMIT |
+------+------------+----------+-----------+-------------+
| rg1 | 1000 | MEDIUM | NO | NULL |
+------+------------+----------+-----------+-------------+
1 row in set (0.00 sec)
The descriptions of the columns in the RESOURCE_GROUPS
table are as follows:
NAME
: the name of the resource group.RU_PER_SEC
: the backfilling speed of the resource group. The unit is RU/second, in which RU means Request Unit.PRIORITY
: the absolute priority of tasks to be processed on TiKV. Different resources are scheduled according to thePRIORITY
setting. Tasks with highPRIORITY
are scheduled first. For resource groups with the samePRIORITY
, tasks will be scheduled proportionally according to theRU_PER_SEC
configuration. IfPRIORITY
is not specified, the default priority isMEDIUM
.BURSTABLE
: whether to allow the resource group to overuse the available system resources.
Note:
TiDB automatically creates a
default
resource group during cluster initialization. For this resource group, the default value ofRU_PER_SEC
isUNLIMITED
(equivalent to the maximum value of theINT
type, that is,2147483647
) and it is inBURSTABLE
mode. All requests that are not bound to any resource group are automatically bound to thisdefault
resource group. When you create a new configuration for another resource group, it is recommended to modify thedefault
resource group configuration as needed.