TIDB_HOT_REGIONS_HISTORY
TIDB_HOT_REGIONS_HISTORY
表提供了由 PD 本地定期记录的历史热点 Region 的相关信息。
默认情况下,记录间隔为 10 分钟,热点 Region 历史信息的保留周期为 7 天。
USE information_schema;
DESC tidb_hot_regions_history;
+-------------+--------------+------+------+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+-------------+--------------+------+------+---------+-------+
| UPDATE_TIME | timestamp(6) | YES | | NULL | |
| DB_NAME | varchar(64) | YES | | NULL | |
| TABLE_NAME | varchar(64) | YES | | NULL | |
| TABLE_ID | bigint(21) | YES | | NULL | |
| INDEX_NAME | varchar(64) | YES | | NULL | |
| INDEX_ID | bigint(21) | YES | | NULL | |
| REGION_ID | bigint(21) | YES | | NULL | |
| STORE_ID | bigint(21) | YES | | NULL | |
| PEER_ID | bigint(21) | YES | | NULL | |
| IS_LEARNER | tinyint(1) | NO | | 0 | |
| IS_LEADER | tinyint(1) | NO | | 0 | |
| TYPE | varchar(64) | YES | | NULL | |
| HOT_DEGREE | bigint(21) | YES | | NULL | |
| FLOW_BYTES | double | YES | | NULL | |
| KEY_RATE | double | YES | | NULL | |
| QUERY_RATE | double | YES | | NULL | |
+-------------+--------------+------+------+---------+-------+
16 rows in set (0.00 sec)
TIDB_HOT_REGIONS_HISTORY
表中的字段说明如下:
- UPDATE_TIME:热点 Region 的更新时间。
- DB_NAME:热点 Region 所在对象的数据库名。
- TABLE_ID:热点 Region 所在表的 ID。
- TABLE_NAME:热点 Region 所在表的名称。
- INDEX_NAME:热点 Region 所在索引的名称。
- INDEX_ID:热点 Region 所在索引的 ID。
- REGION_ID:热点 Region 的 ID。
- STORE_ID:热点 Region 所在 store 的 ID。
- PEER_ID:热点 Region 对应的 Peer 的 ID。
- IS_LEARNER:该 PEER 是否为 LEARNER。
- IS_LEADER:该 PEER 是否为 LEADER。
- TYPE:热点 Region 的类型。
- HOT_DEGREE:热点 Region 的热度值。
- FLOW_BYTES:Region 内的读写字节数。
- KEY_RATE:Region 内的读写 key 数。
- QUERY_RATE:Region 内的读写查询数。
常见使用场景
查询指定时间段内的热点 Region。请将
update_time
替换为你的实际时间。SELECT * FROM INFORMATION_SCHEMA.TIDB_HOT_REGIONS_HISTORY WHERE update_time >'2021-08-18 21:40:00' and update_time <'2021-09-19 00:00:00';查询指定时间段内某张表的热点 Region。请将
update_time
和table_name
替换为你的实际值。SELECT * FROM INFORMATION_SCHEMA.TIDB_HOT_REGIONS_HISTORY WHERE update_time >'2021-08-18 21:40:00' and update_time <'2021-09-19 00:00:00' and TABLE_NAME = 'table_name';查询指定时间段内热点 Region 的分布情况。请将
update_time
和table_name
替换为你的实际值。SELECT count(region_id) cnt, store_id FROM INFORMATION_SCHEMA.TIDB_HOT_REGIONS_HISTORY WHERE update_time >'2021-08-18 21:40:00' and update_time <'2021-09-19 00:00:00' and table_name = 'table_name' GROUP BY STORE_ID ORDER BY cnt DESC;查询指定时间段内热点 Leader Region 的分布情况。请将
update_time
和table_name
替换为你的实际值。SELECT count(region_id) cnt, store_id FROM INFORMATION_SCHEMA.TIDB_HOT_REGIONS_HISTORY WHERE update_time >'2021-08-18 21:40:00' and update_time <'2021-09-19 00:00:00' and table_name = 'table_name' and is_leader=1 GROUP BY STORE_ID ORDER BY cnt DESC;查询指定时间段内热点索引 Region 的分布情况。请将
update_time
和table_name
替换为你的实际值。SELECT count(region_id) cnt, index_name, store_id FROM INFORMATION_SCHEMA.TIDB_HOT_REGIONS_HISTORY WHERE update_time >'2021-08-18 21:40:00' and update_time <'2021-09-19 00:00:00' and table_name = 'table_name' group by index_name, store_id order by index_name,cnt desc;查询指定时间段内热点索引 Leader Region 的分布情况。请将
update_time
和table_name
替换为你的实际值。SELECT count(region_id) cnt, index_name, store_id FROM INFORMATION_SCHEMA.TIDB_HOT_REGIONS_HISTORY WHERE update_time >'2021-08-18 21:40:00' and update_time <'2022-09-19 00:00:00' and table_name = 'table_name' and is_leader=1 group by index_name, store_id order by index_name,cnt desc;