Skip to content

Commit cce3206

Browse files
committed
add toc changes and anther two sql docs
1 parent c0b9415 commit cce3206

File tree

4 files changed

+127
-14
lines changed

4 files changed

+127
-14
lines changed

TOC.md

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -788,6 +788,7 @@
788788
- [`DELETE`](/sql-statements/sql-statement-delete.md)
789789
- [`DESC`](/sql-statements/sql-statement-desc.md)
790790
- [`DESCRIBE`](/sql-statements/sql-statement-describe.md)
791+
- [`DISTRIBUTE TABLE`](/sql-statements/sql_statement-distribute-table.md)
791792
- [`DO`](/sql-statements/sql-statement-do.md)
792793
- [`DROP BINDING`](/sql-statements/sql-statement-drop-binding.md)
793794
- [`DROP DATABASE`](/sql-statements/sql-statement-drop-database.md)
@@ -852,6 +853,7 @@
852853
- [`SHOW CREATE DATABASE`](/sql-statements/sql-statement-show-create-database.md)
853854
- [`SHOW CREATE USER`](/sql-statements/sql-statement-show-create-user.md)
854855
- [`SHOW DATABASES`](/sql-statements/sql-statement-show-databases.md)
856+
- [`SHOW DISTRIBUTION JOBS`](/sql-statements/sql-statement-show-distribution-jobs.md)
855857
- [`SHOW ENGINES`](/sql-statements/sql-statement-show-engines.md)
856858
- [`SHOW ERRORS`](/sql-statements/sql-statement-show-errors.md)
857859
- [`SHOW FIELDS FROM`](/sql-statements/sql-statement-show-fields-from.md)
@@ -874,6 +876,7 @@
874876
- [`SHOW STATS_META`](/sql-statements/sql-statement-show-stats-meta.md)
875877
- [`SHOW STATS_TOPN`](/sql-statements/sql-statement-show-stats-topn.md)
876878
- [`SHOW STATUS`](/sql-statements/sql-statement-show-status.md)
879+
- [`SHOW TABLE DISTRIBUTION`](/sql-statements/sql_statement-show-table-distribution.md)
877880
- [`SHOW TABLE NEXT_ROW_ID`](/sql-statements/sql-statement-show-table-next-rowid.md)
878881
- [`SHOW TABLE REGIONS`](/sql-statements/sql-statement-show-table-regions.md)
879882
- [`SHOW TABLE STATUS`](/sql-statements/sql-statement-show-table-status.md)
Lines changed: 44 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,44 @@
1+
---
2+
title: SHOW DISTRIBUTION JOBS
3+
summary: 介绍 TiDB 数据库中 SHOW DISTRIBUTION JOBS 的使用概况。
4+
---
5+
6+
# SHOW DISTRIBUTION JOBS
7+
8+
`SHOW DISTRIBUTION JOBS` 语句用于显示当前所有的 Region 调度任务。
9+
10+
## 语法图
11+
12+
```ebnf+diagram
13+
ShowDistributionJobsStmt ::=
14+
"SHOW" "DISTRIBUTION" "JOBS"
15+
```
16+
17+
## 示例
18+
19+
显示当前所有的 Region 调度任务:
20+
21+
```sql
22+
SHOW DISTRIBUTION JOBS;
23+
```
24+
25+
```
26+
+---------+------------+------------+-----------------+------------+-----------+----------+-------------+---------------+
27+
| JOB_ID | DB_NAME | TABLE_NAME | PARTITION_NAMES | ENGINE_TYPE | ROLE_TYPE | STATUS | CREATE_USER | CREATE_TIME |
28+
+---------+------------+------------+-----------------+------------+-----------+--------+---------------+---------------+
29+
| 1 | db_1 | t1 | | TIKV | LEADER | RUNNING | ADMIN | 20240712 |
30+
| 2 | db_1 | t2 | | TIFLASH | LEARNER | FINISHED | ADMIN | 20240715 |
31+
| 3 | db_1 | t3 | | TiKV | VOTER | STOPPED | ADMIN | 20240713 |
32+
| 4 | db_1 | t4 | | TIFLASH | LEARNER | FINISHED | ADMIN | 20240713 |
33+
+---------+------------+------------+-----------------+------------+-----------+----------+-------------+---------------+
34+
35+
```
36+
37+
## MySQL 兼容性
38+
39+
该语句是 TiDB 对 MySQL 语法的扩展。
40+
41+
## 另请参阅
42+
43+
- [`DISTRIBUTE TABLE`](/sql-statements/sql_statement-distribute-table.md)
44+
- [`SHOW TABLE DISTRIBUTION`](/sql-statements/sql_statement-show-table-distribution.md)
Lines changed: 46 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,46 @@
1+
---
2+
title: SHOW TABLE DISTRIBUTION
3+
summary: 介绍 TiDB 数据库中 SHOW TABLE DISTRIBUTION 的使用概况。
4+
---
5+
6+
# SHOW TABLE DISTRIBUTION
7+
8+
`SHOW TABLE DISTRIBUTION` 语句用于显示指定表的 Region 分布情况。
9+
10+
## 语法图
11+
12+
```ebnf+diagram
13+
ShowTableDistributionStmt ::=
14+
"SHOW" "TABLE" "DISTRIBUTION" TableName
15+
16+
TableName ::=
17+
(SchemaName ".")? Identifier
18+
```
19+
20+
## 示例
21+
22+
显示当前表 `t1` 的 Region 分布情况:
23+
24+
```sql
25+
SHOW TABLE DISTRIBUTION t1;
26+
```
27+
28+
```
29+
+---------+------------+----------------+----------+------------+-------------------+--------------------+-----------------+------------------+
30+
| DB_NAME | TABLE_NAME | PARTITION_NAME | STORE_ID | STORE_TYPE | REGION_LEADER_NUM | REGION_LEADER_BYTE | REGION_PEER_NUM | REGION_PEER_BYTE |
31+
+---------+------------+----------------+----------+------------+-------------------+--------------------+-----------------+------------------+
32+
| db_1 | t1 | | 1 | TiKV | 315 | 24057934521 | 1087 | 86938746542 |
33+
| db_1 | t1 | | 2 | TiKV | 324 | 28204839240 | 1104 | 91039476832 |
34+
| db_1 | t1 | | 3 | TiKV | 319 | 25986274812 | 1091 | 89405367423 |
35+
| db_1 | t1 | | 4 | TiKV | 503 | 41039587625 | 1101 | 90482317797 |
36+
+---------+------------+----------------+----------+------------+-------------------+--------------------+-----------------+------------------+
37+
```
38+
39+
## MySQL 兼容性
40+
41+
该语句是 TiDB 对 MySQL 语法的扩展。
42+
43+
## 另请参阅
44+
45+
- [`DISTRIBUTE TABLE`](/sql-statements/sql_statement-distribute-table.md)
46+
- [`SHOW DISTRIBUTION JOBS`](/sql-statements/sql-statement-show-distribution-jobs.md)

sql-statements/sql_statement_distribute_table.md

Lines changed: 34 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,8 @@ title: DISTRIBUTE TABLE
33
summary: 介绍 TiDB 数据库中 DISTRIBUTE TABLE 的使用概况。
44
---
55

6-
# DISTRIBUTE TABLE 使用文档
6+
# DISTRIBUTE TABLE
7+
78
`DISTRIBUTE TABLE` 语句用于对指定表的 Region 进行重新打散和调度,以实现表维度的均衡分布。执行该语句可以防止个别 Region 集中在少数 TiFlash 或 TiKV 节点上,从而解决表中 Region 分布不均衡的问题。
89

910
## 语法图
@@ -27,49 +28,61 @@ RoleOption ::=
2728
```
2829

2930
## 示例
30-
通过 `DISTRIBUTE TABLE` 语句重新调度表中的 Region 时,你可以根据需求指定存储引擎(如 TiFlash 或 TiKV)以及不同的 Raft 角色(如 learner、leader、voter) 进行打散均衡操作。
3131

32-
对表 `t1` 在 TiKV 上的 leader 所在的 Region 重新进行均衡调度:
32+
通过 `DISTRIBUTE TABLE` 语句重新调度表中的 Region 时,你可以根据需求指定存储引擎(如 TiFlash 或 TiKV)以及不同的 Raft 角色(如 Leader、Learner、Voter)进行均衡打散操作。
33+
34+
对表 `t1` 在 TiKV 上的 Leader 所在的 Region 重新进行均衡调度:
3335

3436
```sql
3537
CREATE TABLE t1 (a INT);
3638
...
37-
DISTRIBUTE TABLE table_name engine tikv role leader
39+
DISTRIBUTE TABLE t1 engine tikv role leader
40+
```
41+
3842
```
3943
+---------+
40-
| JOB_ID |
44+
| JOB_ID |
4145
100
4246
+---------+
47+
```
48+
49+
对表 `t2` 在 TiFlash 上的 Learner 所在的 Region 重新进行均衡调度:
4350

44-
对表 `t2` 在 TiFlash 上的 learner 所在的 Region 重新进行均衡调度:
4551
```sql
4652
CREATE TABLE t2 (a INT);
4753
...
4854
DISTRIBUTE TABLE t2 ENGINE tiflash role learner;
55+
```
56+
4957
```
5058
+---------+
51-
| JOB_ID |
59+
| JOB_ID |
5260
101
5361
+---------+
62+
```
5463

55-
对分区表 `t5``p1``p2` 分区在 TiKV 上的 leader 所在的 Region 重新进行均衡调度:
64+
对分区表 `t3``p1``p2` 分区在 TiKV 上的 Leader 所在的 Region 重新进行均衡调度:
5665

5766
```sql
58-
CREATE TABLE t5 (a INT);
67+
CREATE TABLE t3 (a INT);
5968
...
60-
DISTRIBUTE TABLE t5 PARTITION (p1, p2) ENGINE tikv role leader;
69+
DISTRIBUTE TABLE t3 PARTITION (p1, p2) ENGINE tikv role leader;
70+
```
71+
6172
```
6273
+---------+
63-
| JOB_ID |
74+
| JOB_ID |
6475
102
6576
+---------+
77+
```
6678

79+
执行 [`SHOW DISTRIBUTION JOBS`](/sql-statements/sql-statement-show-distribution-jobs.md) 语句查看当前所有的调度任务:
6780

68-
显示当前所有的调度任务:
6981
```sql
7082
SHOW DISTRIBUTION JOBS;
7183
```
7284

85+
```
7386
+---------+------------+------------+-----------------+------------+-----------+----------+-------------+---------------+
7487
| JOB_ID | DB_NAME | TABLE_NAME | PARTITION_NAMES | ENGINE_TYPE | ROLE_TYPE | STATUS | CREATE_USER | CREATE_TIME |
7588
+---------+------------+------------+-----------------+------------+-----------+--------+---------------+---------------+
@@ -79,12 +92,15 @@ SHOW DISTRIBUTION JOBS;
7992
| 4 | db_1 | t4 | | TIFLASH | LEARNER | FINISHED | ADMIN | 20240713 |
8093
+---------+------------+------------+-----------------+------------+-----------+----------+-------------+---------------+
8194
95+
```
96+
97+
执行 [`SHOW TABLE DISTRIBUTION`](/sql-statements/sql_statement-show-table-distribution.md) 语句查看表 `t1` 的 Region 分布情况:
8298

83-
显示当前表 `t1` 的 region 分布情况:
8499
```sql
85100
SHOW TABLE DISTRIBUTION t1;
86101
```
87102

103+
```
88104
+---------+------------+----------------+----------+------------+-------------------+--------------------+-----------------+------------------+
89105
| DB_NAME | TABLE_NAME | PARTITION_NAME | STORE_ID | STORE_TYPE | REGION_LEADER_NUM | REGION_LEADER_BYTE | REGION_PEER_NUM | REGION_PEER_BYTE |
90106
+---------+------------+----------------+----------+------------+-------------------+--------------------+-----------------+------------------+
@@ -93,13 +109,17 @@ SHOW TABLE DISTRIBUTION t1;
93109
| db_1 | t1 | | 3 | TiKV | 319 | 25986274812 | 1091 | 89405367423 |
94110
| db_1 | t1 | | 4 | TiKV | 503 | 41039587625 | 1101 | 90482317797 |
95111
+---------+------------+----------------+----------+------------+-------------------+--------------------+-----------------+------------------+
96-
112+
```
97113

98114
## 注意事项
99115

100116
`DISTRIBUTE TABLE` 语句在重新调度表中的 Region 时,可能会受到 PD 热点调度器的影响。调度完成后,随着时间推移,表的 Region 分布可能再次失衡。
101117

102118
## MySQL 兼容性
119+
103120
该语句是 TiDB 对 MySQL 语法的扩展。
104121

105122
## 另请参阅
123+
124+
- [`SHOW TABLE DISTRIBUTION`](/sql-statements/sql_statement-show-table-distribution.md)
125+
- [`SHOW TABLE REGIONS`](/sql-statements/sql-statement-show-table-regions.md)

0 commit comments

Comments
 (0)