Skip to content

Commit

Permalink
ambiguous-words: clarify words in scheduling related docs (pingcap#9904)
Browse files Browse the repository at this point in the history
  • Loading branch information
TomShawn authored Jun 21, 2022
1 parent e859bda commit 75dc83d
Show file tree
Hide file tree
Showing 5 changed files with 7 additions and 7 deletions.
2 changes: 1 addition & 1 deletion daily-check.md
Original file line number Diff line number Diff line change
Expand Up @@ -45,7 +45,7 @@ TiDB 作为分布式数据库,对比单机数据库机制更加复杂,其自
+ `miss-peer-region-count`:缺副本的 Region 数量,不会一直大于 0。
+ `extra-peer-region-count`:多副本的 Region 数量,调度过程中会产生。
+ `empty-region-count`:空 Region 的数量,一般是 `TRUNCATE TABLE`/`DROP TABLE` 语句导致。如果数量较多,可以考虑开启跨表 Region merge。
+ `pending-peer-region-count`:Raft log 落后的 Region 数量。由于调度产生少量的 pending peer 是正常的,但是如果持续很高,可能有问题
+ `pending-peer-region-count`:Raft log 落后的 Region 数量。由于调度产生少量的 pending peer 是正常的,但是如果 pending peer 的数量持续(超过 30 分钟)很高,可能存在问题
+ `down-peer-region-count`:Raft leader 上报有不响应 peer 的 Region 数量。
+ `offline-peer-region-count`:peer 下线过程中的 Region 数量。

Expand Down
6 changes: 3 additions & 3 deletions pd-control.md
Original file line number Diff line number Diff line change
Expand Up @@ -352,7 +352,7 @@ tiup ctl pd -u https://127.0.0.1:2379 --cacert="path/to/ca" --cert="path/to/cert
>> config set region-schedule-limit 2
```

- 通过调整 `replica-schedule-limit` 可以控制同时进行 replica 调度的任务个数。这个值主要影响节点挂掉或者下线的时候进行调度的速度,值越大调度得越快,设置为 0 则关闭调度。Replica 调度的开销较大,所以这个值不宜调得太大。
- 通过调整 `replica-schedule-limit` 可以控制同时进行 replica 调度的任务个数。这个值主要影响节点挂掉或者下线的时候进行调度的速度,值越大调度得越快,设置为 0 则关闭调度。Replica 调度的开销较大,所以这个值不宜调得太大。注意:该参数通常保持为默认值。如需调整,需要根据实际情况反复尝试设置该值大小。

最多同时进行 4 个 replica 调度:

Expand All @@ -362,7 +362,7 @@ tiup ctl pd -u https://127.0.0.1:2379 --cacert="path/to/ca" --cert="path/to/cert
>> config set replica-schedule-limit 4
```

- `merge-schedule-limit` 控制同时进行的 Region Merge 调度的任务,设置为 0 则关闭 Region Merge。Merge 调度的开销较大,所以这个值不宜调得过大。
- `merge-schedule-limit` 控制同时进行的 Region Merge 调度的任务,设置为 0 则关闭 Region Merge。Merge 调度的开销较大,所以这个值不宜调得过大。注意:该参数通常保持为默认值。如需调整,需要根据实际情况反复尝试设置该值大小。

最多同时进行 16 个 merge 调度:

Expand All @@ -372,7 +372,7 @@ tiup ctl pd -u https://127.0.0.1:2379 --cacert="path/to/ca" --cert="path/to/cert
>> config set merge-schedule-limit 16
```

- `hot-region-schedule-limit` 控制同时进行的 Hot Region 调度的任务,设置为 0 则关闭调度。这个值不宜调得过大,否则可能对系统性能造成影响。
- `hot-region-schedule-limit` 控制同时进行的 Hot Region 调度的任务,设置为 0 则关闭调度。这个值不宜调得过大,否则可能对系统性能造成影响。注意:该参数通常保持为默认值。如需调整,需要根据实际情况反复尝试设置该值大小。

最多同时进行 4 个 Hot Region 调度:

Expand Down
2 changes: 1 addition & 1 deletion releases/release-5.3.0.md
Original file line number Diff line number Diff line change
Expand Up @@ -113,7 +113,7 @@ TiDB 版本:5.3.0

增加 `ALTER TABLE [PARTITION] ATTRIBUTES` 语句支持,允许用户为表和分区设置属性。目前 TiDB 仅支持设置 `merge_option` 属性。通过为表或分区添加 `merge_option` 属性,用户可以显式控制 Region 是否合并。

应用场景:当用户 `SPLIT TABLE` 之后,如果超过一定时间后没有插入数据,空 Region 默认会被自动合并。此时,可以通过该功能设置表属性为 `merge_option=deny`,避免 Region 的自动合并。
应用场景:当用户 `SPLIT TABLE` 之后,如果超过一定时间后(由 PD 参数 [`split-merge-interval`](/pd-configuration-file.md#split-merge-interval) 控制)没有插入数据,空 Region 默认会被自动合并。此时,可以通过该功能设置表属性为 `merge_option=deny`,避免 Region 的自动合并。

[用户文档](/table-attributes.md)[#3839](https://github.com/tikv/pd/issues/3839)

Expand Down
2 changes: 1 addition & 1 deletion schedule-replicas-by-topology-labels.md
Original file line number Diff line number Diff line change
Expand Up @@ -170,7 +170,7 @@ PD 在副本调度时,会按照 label 层级,保证同一份数据的不同

在 5 副本配置的前提下,如果 z3 出现了整体故障或隔离,并且 z3 在一段时间后仍然不能恢复(由 `max-store-down-time` 控制),PD 会通过调度补齐 5 副本,此时可用的主机只有 4 个了,故而无法保证 host 级别的隔离,于是可能出现多个副本被调度到同一台主机的情况。

但假如 `isolation-level` 设置不为空,值为 `zone`,这样就规定了 Region 副本在物理层面上的最低隔离要求,也就是说 PD 一定会保证同一 Region 的副本分散于不同的 zone 之上。即便遵循此隔离限制会无法满足 `max-replicas` 的多副本要求,PD 也不会进行相应的调度。例如,当前存在 TiKV 集群的三个机房 z1/z2/z3,在三副本的设置下,PD 会将同一 Region 的三个副本分别分散调度至这三个机房。若此时 z1 整个机房发生了停电事故并在一段时间后仍然不能恢复,PD 会认为 z1 上的 Region 副本不再可用。但由于 `isolation-level` 设置为了 `zone`,PD 需要严格保证不同的 Region 副本不会落到同一 zone 上。此时的 z2 和 z3 均已存在副本,则 PD 在 `isolation-level` 的最小强制隔离级别限制下便不会进行任何调度,即使此时仅存在两个副本。
但假如 `isolation-level` 设置不为空,值为 `zone`,这样就规定了 Region 副本在物理层面上的最低隔离要求,也就是说 PD 一定会保证同一 Region 的副本分散于不同的 zone 之上。即便遵循此隔离限制会无法满足 `max-replicas` 的多副本要求,PD 也不会进行相应的调度。例如,当前存在 TiKV 集群的三个机房 z1/z2/z3,在三副本的设置下,PD 会将同一 Region 的三个副本分别分散调度至这三个机房。若此时 z1 整个机房发生了停电事故并在一段时间后(由 [`max-store-down-time`](/pd-configuration-file.md#max-store-down-time) 控制,默认为 30 分钟)仍然不能恢复,PD 会认为 z1 上的 Region 副本不再可用。但由于 `isolation-level` 设置为了 `zone`,PD 需要严格保证不同的 Region 副本不会落到同一 zone 上。此时的 z2 和 z3 均已存在副本,则 PD 在 `isolation-level` 的最小强制隔离级别限制下便不会进行任何调度,即使此时仅存在两个副本。

类似地,`isolation-level``rack` 时,最小隔离级别便为同一机房的不同 rack。在此设置下,如果能在 zone 级别保证隔离,会首先保证 zone 级别的隔离。只有在 zone 级别隔离无法完成时,才会考虑避免出现在同一 zone 同一 rack 的调度,并以此类推。

Expand Down
2 changes: 1 addition & 1 deletion tidb-troubleshooting-map.md
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ aliases: ['/docs-cn/dev/tidb-troubleshooting-map/','/docs-cn/dev/how-to/troubles

- 1.1.1 `Region is Unavailable` 一般是由于 Region 在一段时间不可用(可能会遇到 `TiKV server is busy`;或者发送给 TiKV 的请求由于 `not leader` 或者 `epoch not match` 等原因被打回;又或者请求 TiKV 超时等),TiDB 内部会进行 `backoff` 重试。`backoff` 的时间超过一定阈值(默认 20s)后就会报错给客户端。如果 `backoff` 在阈值内,客户端对该错误无感知。

- 1.1.2 多台 TiKV 同时内存不足 (OOM),导致 Region 在一定时期内没有 Leader,见案例 [case-991](https://github.com/pingcap/tidb-map/blob/master/maps/diagnose-case-study/case991.md)
- 1.1.2 多台 TiKV 同时内存不足 (OOM),导致 Region OOM 期间内没有 Leader,见案例 [case-991](https://github.com/pingcap/tidb-map/blob/master/maps/diagnose-case-study/case991.md)

- 1.1.3 TiKV 报 `TiKV server is busy` 错误,超过 `backoff` 时间,参考 [4.3 客户端报 `server is busy` 错误](#43-客户端报-server-is-busy-错误)`TiKV server is busy` 属于内部流控机制,后续可能不计入 `backoff` 时间。

Expand Down

0 comments on commit 75dc83d

Please sign in to comment.