为提高效率,请提供以下信息,问题描述清晰能够更快得到解决:
【TiDB 版本】
v4.0.6
【问题描述】
集群状态如下:
用户反馈tidb数据库中部分查询较慢,集群中日志如下,包括所有pd,tidb,tikv节点和db的慢查询日志
链接: 百度网盘-链接不存在 密码: 6qo4—
若提问为性能优化、故障排查类问题,请下载脚本运行。终端输出的打印结果,请务必全选并复制粘贴上传。
为提高效率,请提供以下信息,问题描述清晰能够更快得到解决:
【TiDB 版本】
v4.0.6
【问题描述】
集群状态如下:
若提问为性能优化、故障排查类问题,请下载脚本运行。终端输出的打印结果,请务必全选并复制粘贴上传。
您好,我参考了https://docs.pingcap.com/zh/tidb/v4.0/analyze-slow-queries#分析慢查询的内容,可以确定慢查询是kv导致的,我选了一个慢查询例子
看你的 wait 比较高,可以先看是否存在热点(可以看看 dashboard 中的 kv 模块下,是否有明显的热点)
这个后面版本应该已经修复了(显示问题)
问一下,咱们是生产环境还是测试环境?目前看 SQL 慢的原因是 IO 导致的(咱们当前集群的盘是什么盘),而 IO 延迟/负载较高的原因,看 compaction 动作占用较高,可以限制一下 compaction 的流量,来降低这个影响(调整tikv 参数:rate-bytes-per-sec = 30MB )
帮 相同时间段的 tidb-server 和 pd 的监控也帮导出一份,还有disk-performance 也给一下(咱们是 AP 业务吗,都是大 SQL 吗,读写比例方便提供一下不)
测试环境,盘是sata盘。
test-cluster-PD_2021-05-20T07_37_31.321Z.json (598.5 KB) test-cluster-TiDB_2021-05-20T07_37_05.275Z.json (324.3 KB)
test-cluster-Disk-Performance_2021-05-20T07_38_30.477Z.json (114.6 KB)
读写情况大概如图
1、你的盘延迟较高,生产环境建议还是 用 ssd 比较好
2、建议查看是否有无 数据库之外的 程序占用 IO
3、建议调整上面提到的参数,减少 compaction 的影响/或升级到 5.0(5.0 对这个有优化)
收到,我先试试
修改参数后速度有一定的提升,感谢,我们的配置目前暂不支持升级到5.0版本,不知是否还有其他可通过调参优化的方法
其实咱们应该 读写都会收到影响了,但影响的原因是 IO 负载较高,所以本质还是想办法减小 IO 不必要的消耗。上面的参数,只是其中一个 ,
1、咱们还可以查看一下 慢 SQL ,看看慢日志中有没有 total key 较大的 SQL,有的话,可以优化一下
2、根据配置文件中,看看 IO 相关的参数,看一下是否可以调整https://github.com/tikv/tikv/blob/release-4.0/etc/config-template.toml#L449
好的,非常感谢