RESOURCE_GROUPS
RESOURCE_GROUPS 表展示了所有资源组的信息。更多信息,参见 使用资源管控实现资源组限制与流控。
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; -- 查看所有资源组。TiDB 有一个 `default` 资源组。
+---------+------------+----------+-----------+
| NAME | RU_PER_SEC | PRIORITY | BURSTABLE |
+---------+------------+----------+-----------+
| default | UNLIMITED | MEDIUM | YES |
+---------+------------+----------+-----------+
CREATE RESOURCE GROUP rg1 RU_PER_SEC=1000; -- 创建资源组 `rg1`
Query OK, 0 rows affected (0.34 sec)
SHOW CREATE RESOURCE GROUP rg1; -- 查看资源组 `rg1` 的定义
+----------------+---------------------------------------------------------------+
| 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'; -- 查看资源组 `rg1`
+------+------------+----------+-----------+-------------+
| NAME | RU_PER_SEC | PRIORITY | BURSTABLE | QUERY_LIMIT |
+------+------------+----------+-----------+-------------+
| rg1 | 1000 | MEDIUM | NO | NULL |
+------+------------+----------+-----------+-------------+
1 row in set (0.00 sec)
RESOURCE_GROUPS 表中各列的说明如下:
NAME:资源组的名称。RU_PER_SEC:资源组的回填速度,单位为 RU/秒,其中 RU 表示 Request Unit。PRIORITY:在 TiKV 上待处理任务的绝对优先级。不同资源会根据PRIORITY设置进行调度。PRIORITY高的任务会优先被调度。对于相同PRIORITY的资源组,任务会根据RU_PER_SEC配置按比例调度。如果未指定PRIORITY,则默认优先级为MEDIUM。BURSTABLE:是否允许该资源组超额使用系统可用资源。