Skip to content

Commit

Permalink
tikv config: hibernate region GA (pingcap#6397)
Browse files Browse the repository at this point in the history
  • Loading branch information
yiwu-arbug authored Jun 10, 2021
1 parent 010946c commit 9f8cdb7
Show file tree
Hide file tree
Showing 5 changed files with 6 additions and 8 deletions.
2 changes: 1 addition & 1 deletion best-practices/massive-regions-best-practices.md
Original file line number Diff line number Diff line change
Expand Up @@ -96,7 +96,7 @@ TiKV 默认将 `raftstore.store-pool-size` 配置为 `2`。如果 Raftstore 出

在实际情况中,读写请求并不会均匀分布到每个 Region 上,而是集中在少数的 Region 上。那么可以尽量减少暂时空闲的 Region 的消息数量,这也就是 Hibernate Region 的功能。无必要时可不进行 `raft-base-tick`,即不驱动空闲 Region 的 Raft 状态机,那么就不会触发这些 Region 的 Raft 产生心跳信息,极大地减小了 Raftstore 的工作负担。

Hibernate Region 在 [TiKV master](https://github.com/tikv/tikv/tree/master) 分支上默认开启。可根据实际情况和需求来开启该功能。Hibernate Region 的配置说明请参考[配置 Hibernate Region](/tikv-configuration-file.md#hibernate-regions-实验特性)
Hibernate Region 在 [TiKV master](https://github.com/tikv/tikv/tree/master) 分支上默认开启。可根据实际情况和需求来配置此功能的开启和关闭,请参阅[配置 Hibernate Region](/tikv-configuration-file.md#hibernate-regions)

### 方法五:开启 `Region Merge`

Expand Down
1 change: 0 additions & 1 deletion experimental-features.md
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,6 @@ aliases: ['/docs-cn/dev/experimental-features-4.0/','/zh/tidb/dev/experimental-f
+ 提升优化器选择索引的稳定性(v5.0 实验特性)
+ 扩展统计信息功能,收集多列顺序依赖性信息,帮助优化器选择相对较优的索引。
+ 重构统计信息模块,帮助优化器选择相对较优的索引,包括从 `CMSKetch` 和直方图中删除 `TopN` 值,为索引的直方图维护 Bucket NDV。
+ [hibernate-regions](/tikv-configuration-file.md#hibernate-regions-实验特性),如果 Region 长时间处于非活跃状态,即被自动设置为静默状态。静默状态的 Region 可以降低 Leader 和 Follower 之间心跳信息的系统开销。

## 调度功能

Expand Down
2 changes: 1 addition & 1 deletion system-variables.md
Original file line number Diff line number Diff line change
Expand Up @@ -696,7 +696,7 @@ v5.0 后,用户仍可以单独修改以上系统变量(会有废弃警告)
- 可设置为:
- `LEGACY`:使用旧的扫描方式,即禁用 Green GC。
- `PHYSICAL`:使用物理扫描方式,即启用 Green GC。
- 这个变量用于指定垃圾回收 (GC) 的 Resolve Locks(清理锁)步骤中扫描锁的方式。当变量值设置为 `LEGACY` 时,TiDB 以 Region 为单位进行扫描。当变量值设置为 `PHYSICAL` 时,每个 TiKV 节点分别绕过 Raft 层直接扫描数据,可以有效地缓解在启用 [Hibernate Region](/tikv-configuration-file.md#hibernate-regions-实验特性) 功能时,GC 唤醒全部 Region 的影响,从而提升 Resolve Locks(清理锁)这个步骤的执行速度。
- 这个变量用于指定垃圾回收 (GC) 的 Resolve Locks(清理锁)步骤中扫描锁的方式。当变量值设置为 `LEGACY` 时,TiDB 以 Region 为单位进行扫描。当变量值设置为 `PHYSICAL` 时,每个 TiKV 节点分别绕过 Raft 层直接扫描数据,可以有效地缓解在启用 [Hibernate Region](/tikv-configuration-file.md#hibernate-regions) 功能时,GC 唤醒全部 Region 的影响,从而提升 Resolve Locks(清理锁)这个步骤的执行速度。

### `tidb_general_log`

Expand Down
5 changes: 2 additions & 3 deletions ticdc/ticdc-overview.md
Original file line number Diff line number Diff line change
Expand Up @@ -78,11 +78,10 @@ TiCDC 从 4.0.8 版本开始,可通过修改任务配置来同步**没有有

### 暂不支持的场景

目前 TiCDC(4.0 发布版本)暂不支持的场景如下:
目前 TiCDC 暂不支持的场景如下:

- 暂不支持单独使用 RawKV 的 TiKV 集群。
- 暂不支持 TiDB 4.0 中[创建 SEQUENCE 的 DDL 操作](/sql-statements/sql-statement-create-sequence.md)[SEQUENCE 函数](/sql-statements/sql-statement-create-sequence.md#sequence-函数)。在上游 TiDB 使用 SEQUENCE 时,TiCDC 将会忽略掉上游执行的 SEQUENCE DDL 操作/函数,但是使用 SEQUENCE 函数的 DML 操作可以正确地同步。
- 暂不支持 [TiKV Hibernate Region](/best-practices/massive-regions-best-practices.md#方法四开启-hibernate-region-功能)。TiCDC 会使 Region 无法进入静默状态。
- 暂不支持在 TiDB 中[创建 SEQUENCE 的 DDL 操作](/sql-statements/sql-statement-create-sequence.md)[SEQUENCE 函数](/sql-statements/sql-statement-create-sequence.md#sequence-函数)。在上游 TiDB 使用 SEQUENCE 时,TiCDC 将会忽略掉上游执行的 SEQUENCE DDL 操作/函数,但是使用 SEQUENCE 函数的 DML 操作可以正确地同步。
- 对上游存在较大事务的场景提供部分支持,详见:[FAQ:TiCDC 是否支持同步大事务?有什么风险吗?](/ticdc/troubleshoot-ticdc.md#ticdc-支持同步大事务吗有什么风险吗)

## 兼容性问题提示
Expand Down
4 changes: 2 additions & 2 deletions tikv-configuration-file.md
Original file line number Diff line number Diff line change
Expand Up @@ -411,10 +411,10 @@ raftstore 相关的配置项。
+ 默认值:3s
+ 最小值:0

### `hibernate-regions` (**实验特性**)
### `hibernate-regions`

+ 打开或关闭静默 Region。打开后,如果 Region 长时间处于非活跃状态,即被自动设置为静默状态。静默状态的 Region 可以降低 Leader 和 Follower 之间心跳信息的系统开销。可以通过 `raftstore.peer-stale-state-check-interval` 调整 Leader 和 Follower 之间的心跳间隔。
+ 默认值:true
+ 默认值:v5.0.2 及以后版本默认值为 true,v5.0.2 以前的版本默认值为 false

### `raftstore.peer-stale-state-check-interval`

Expand Down

0 comments on commit 9f8cdb7

Please sign in to comment.