TiDB5.0升级性能初体验
--2021-04-13 刘春雷
1、汇总
1.1、前言
58同城是国内专业的“本地、免费、真实、高效”的生活服务平台! 我们有着丰富的业务场景,富有挑战性的性能要求~TiDB数据库补充了MySQL数据库的短板,提升了我们对业务需求场景的覆盖。
2021 年 04 月 07 日 TiDB 5.0 GA 了,本次我们将从4.0.x 升级至TiDB5.0版本 ,重点体验 本身升级 对于读写带来的性能提升
目前58的TiDB自动化开发的比较好,我们小时级别就完善好相关新版本环境,直接线上使用了,截至发稿,目前已经升级+新部署了 8套集群,优先DBA分析使用集群,例如监控数据、慢SQL数据、连接数信息数据、其他集群,与新部署的业务,先尝鲜使用。
推荐着急上线的小伙伴,可以等下5.0.1,会修复一些bug,更稳定一些~
另:后续会再发一篇,5.0MPP体验~敬请期待~
目前的升级流程如下:
- 下载新的TiDB5.0 版本
- TiUP添加此版本
- 平台添加新的版本
- 执行升级
- 观察结果
【5.0集群情况】
1.2、测试结果汇总
2、本身版本升级效果
2.1、慢日志集群升级
【业务描述】:
选择一个记录TiDB慢SQL的TiDB集群
业务写:每5分钟写入一批次数据,sleep 一定时间
业务读:平台选择集群读取慢SQL详情
【机器信息】
【检查】:
tiup cluster check xxx --cluster
【升级】
tiup cluster upgrade xxx v5.0.0 --transfer-timeout 2
【效果】:
写入时间: dashboard 查看: 2ms 降低至 1.6ms
【执行时间对比】:
【任务执行情况】:
- 升级前:之前5分钟无法全写入完,会更下一个任务重叠
- 升级后:每次的任务可以完全写完,不会重叠到下一个任务
【监控效果】:可以看出任务可以执行完成了,且执行时间降低了
2.2、连接信息集群升级
【业务描述】:
选择一个记录Redis client连接信息的集群
业务写:每30分钟写入一批次数据,sleep 一定时间
业务读:平台选择集群读取连接详情
【机器信息】:
【检查】:
tiup cluster check xxx --cluster
【升级】
tiup cluster upgrade xxx v5.0.0 --transfer-timeout 2
【执行时间对比】:
可以看出999线下降明显,99,95,80有部分增加,应该是QPS高了导致的,因为任务整体时间变短了
【监控】:可以看出执行的最大时间降低了
2.3、监控业务集群升级
【业务描述】:
数据库的相关监控业务
业务写:每几十秒采集线上数据库、服务器的监控,写入此集群
业务读:分析监控等
【机器信息】:
【检查】:
tiup cluster check xxx --cluster
【升级】
tiup cluster upgrade xxx v5.0.0 --transfer-timeout 2
【执行时间对比】:
【监控】:可以看出QPS增加了,且SQL执行时间降低了
QPS: 由300 增长至 495,增长 65%
【长期观察】:
升级后QPS增长明显,但同样会导致SQL执行时间有上涨,但:总体性能变好了
2.4、其他业务集群升级
【业务描述】:
业务写:写入与更新数据,每次几十条
业务读:程序读取
【机器信息】:
【检查】:
tiup cluster check xxx --cluster
【升级】
tiup cluster upgrade xxx v5.0.0 --transfer-timeout 2
【执行时间对比】:
【监控】:可以看出SQL执行时间降低了,平稳了