定位熱點表
SELECT
`DB_NAME` AS '熱點數據庫',
`TABLE_NAME` AS '熱點表_名稱',
`TABLE_ID` AS '熱點表_ID',
`INDEX_NAME` AS '熱點表索引_名稱',
`INDEX_ID` AS '熱點表索引_ID',
`REGION_ID`,
`TYPE` AS '讀熱點/寫熱點',
`MAX_HOT_DEGREE`,
`REGION_COUNT`,
`FLOW_BYTES`
FROM
INFORMATION_SCHEMA.TIDB_HOT_REGIONS
-- WHERE
-- TABLE_NAME != ''
-- AND TABLE_NAME = 'dc_organization_master';
查看熱點表的REGION
分部, 定位具體是哪個REGION
產生的熱點
SHOW TABLE 數據庫名.表名 REGIONS;
SHOW TABLE prd2_pfizer.dc_organization_master REGIONS;
+-----------+------------------------+------------------------+-----------+-----------------+---------------------+------------+---------------+------------+----------------------+------------------+
| REGION_ID | START_KEY | END_KEY | LEADER_ID | LEADER_STORE_ID | PEERS | SCATTERING | WRITTEN_BYTES | READ_BYTES | APPROXIMATE_SIZE(MB) | APPROXIMATE_KEYS |
+-----------+------------------------+------------------------+-----------+-----------------+---------------------+------------+---------------+------------+----------------------+------------------+
| 26001 | t_4258_i_6_013...... | t_4258_r_48145 | 26002 | 1 | 26002, 26003, 26004 | 0 | 0 | 3304344003 | 96 | 819944 |
| 25113 | t_4258_r_48145 | t_4258_r_161205 | 25116 | 5 | 25114, 25115, 25116 | 0 | 0 | 1736211 | 49 | 98943 |
| 25133 | t_4258_r_161205 | t_4258_r_377643 | 25134 | 1 | 25134, 25135, 25136 | 0 | 0 | 1680717 | 91 | 226228 |
| 25121 | t_4258_r_377643 | t_4258_r_2153423 | 25123 | 4 | 25122, 25123, 25124 | 0 | 0 | 1301039 | 87 | 204800 |
| 25141 | t_4258_r_2153423 | t_4258_r_2371340 | 25143 | 4 | 25142, 25143, 25144 | 0 | 0 | 1267105 | 96 | 230966 |
| 26017 | t_4258_r_2371340 | t_4263_5f7...... | 26018 | 1 | 26018, 26019, 26020 | 0 | 0 | 124000105 | 136 | 669477 |
| 25137 | t_4258_ | t_4258_i_2_013...... | 25140 | 5 | 25138, 25139, 25140 | 0 | 0 | 0 | 105 | 1007100 |
| 25125 | t_4258_i_2_013...... | t_4258_i_2_014...... | 25126 | 1 | 25126, 25127, 25128 | 0 | 0 | 0 | 73 | 688866 |
| 25117 | t_4258_i_2_014...... | t_4258_i_3_014...... | 25118 | 1 | 25118, 25119, 25120 | 0 | 0 | 0 | 104 | 785285 |
| 25129 | t_4258_i_3_014...... | t_4258_i_4_01e...... | 25131 | 4 | 25130, 25131, 25132 | 0 | 0 | 0 | 139 | 1111149 |
| 25145 | t_4258_i_4_01e...... | t_4258_i_5_013...... | 25147 | 4 | 25146, 25147, 25148 | 0 | 37 | 0 | 92 | 848465 |
| 25109 | t_4258_i_5_013...... | t_4258_i_6_013...... | 25111 | 4 | 25110, 25111, 25112 | 0 | 0 | 808085616 | 57 | 555004 |
+-----------+------------------------+------------------------+-----------+-----------------+---------------------+------------+---------------+------------+----------------------+------------------+
READ_BYTES
: 估算的 Region 在 1 個心跳週期內的讀數據量大小,單位是 byte。由此可見,數值特別大的就是發生熱點的 REGION
通過 URL查看 REGION 的信息
curl http://{TiDBIP}:10080/regions/{REGION_ID}
[root@test1 ~]# curl http://192.168.192.31:10080/regions/26001
{
"region_id": 26001,
"start_key": "dIAAAAAAABCiX2mAAAAAAAAABgEwAAAAAAAAAPgBRFMwMjA4MTj/MQAAAAAAAAD4ATMAAAAAAAAA+AOAAAAAAAA3hw==",
"end_key": "dIAAAAAAABCiX3KAAAAAAAC8EQ==",
"frames": [
{
"db_name": "prd2_pfizer",
"table_name": "dc_organization_master",
"table_id": 4258,
"is_record": false,
"index_name": "index_1",
"index_id": 6,
"index_values": [
"0",
"DS0208181",
"3",
"14215"
]
},
{
"db_name": "prd2_pfizer",
"table_name": "dc_organization_master",
"table_id": 4258,
"is_record": true,
"record_id": 48145
}
]
}
[root@test1 ~]#
打散**寫
**熱點
拆分**讀
**熱點
-
operator add split-region 26001 --policy=approximate
將 Region_ID爲26001的 Region 對半拆分成兩個 Region,基於**粗略
估計值**, 消耗更少的 I/O,可以更快地完成。 -
operator add split-region 26001 --policy=scan
將 Region_ID爲26001的 Region 對半拆分成兩個 Region,基於**精確
掃描值**
[tidb@back-paas bin]$ pwd
/home/tidb/tidb-ansible/resources/bin
[tidb@back-paas bin]$
[tidb@back-paas bin]$ ./pd-ctl -u http://192.168.192.31:2379 operator add split-region 26001 --policy=approximate
Success!
[tidb@back-paas bin]$
在次查看 REGION,會發現數量變小了
SHOW TABLE prd2_pfizer.dc_organization_master REGIONS WHERE REGION_ID = 26001;
+-----------+------------------------+------------------------+-----------+-----------------+---------------------+------------+---------------+------------+----------------------+------------------+
| REGION_ID | START_KEY | END_KEY | LEADER_ID | LEADER_STORE_ID | PEERS | SCATTERING | WRITTEN_BYTES | READ_BYTES | APPROXIMATE_SIZE(MB) | APPROXIMATE_KEYS |
+-----------+------------------------+------------------------+-----------+-----------------+---------------------+------------+---------------+------------+----------------------+------------------+
| 26001 | t_4258_i_6_013...... | t_4258_r_48145 | 26002 | 1 | 26002, 26003, 26004 | 0 | 0 | 1304344003 | 96 | 431972 |
+-----------+------------------------+------------------------+-----------+-----------------+---------------------+------------+---------------+------------+----------------------+------------------+