tidb region到达一定数量的问题。

为提高效率,提问时请提供以下信息,问题描述清晰可优先响应。

若提问为性能优化、故障排查类问题,请下载脚本运行。终端输出打印结果,请务必全选并复制粘贴上传。

已经出现了好几次 我在导入大量数据 达到30k多时出现,cpu就会高,性能急剧下降

CPU 升高具体是 TiKV 还是 TiDB server CPU 升高?另外这里说的性能是指导入的速度变慢吗?最好给下完整的监控信息方便我们分析下,监控导出参考:

https://metricstool.pingcap.com

版本 3.0.18

tikv cpu 影响整个集群写入速度 qps

Cd-Cluster-Overview_2020-10-20T08 57 50.744Z.json (612.6 KB)

Cd-Cluster-TiKV-Details_2020-10-20T09 00 37.998Z.json (586.6 KB)

Cd-Cluster-PD_2020-10-20T09 05 05.046Z.json (476.9 KB)


从监控看到 region 调度的原因是因为对应的 store 节点的 region score 变高,region score 变高的原因是因为空间使用率达到了 high-space-ratio 设定的值

high-space-ratio 表示当空间使用率没有达到这个的时候,PD 计算分数的时候不会考虑剩余空间的情况
low-space-ratio 表示当空间使用率达到达到这个的时候,PD 不会往这个节点上继续调度 region

默认分别是 0.6 和 0.8 ,空间使用率达到这个的时候,计算 store score 的时候会将剩余空间考虑进去,会导致 store score 飙高的情况

因为 region score 的不均衡所以导致 region 的调度,region 调度的时候会需要进行 compaction 操作,compaction 对磁盘 IO 资源消耗比较多,这个应该就是影响 QPS 的原因。

如果要缓解的话,可以考虑通过 pd-ctl 将 high-space-ratio 调整为 0.8,low-space-ratio 调整为 0.9

直接修改就可以嘛

已经调整了 但是看起来没有恢复

看下 region score 的情况,另外看 region 的分布是在变均衡的趋势
可以再观察一下,恢复平衡过程中也是 region 调度,也会影响 qps