TiDB 5.0 升级性能初体验

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、本身版本升级效果

2.1、慢日志集群升级

【业务描述】:

选择一个记录TiDB慢SQL的TiDB集群

业务写:每5分钟写入一批次数据,sleep 一定时间

业务读:平台选择集群读取慢SQL详情

【机器信息】

3
【检查】:

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 一定时间

业务读:平台选择集群读取连接详情

【机器信息】:

6
【检查】:

tiup cluster check xxx --cluster

【升级】

tiup cluster upgrade xxx v5.0.0 --transfer-timeout 2

【执行时间对比】:
可以看出999线下降明显,99,95,80有部分增加,应该是QPS高了导致的,因为任务整体时间变短了

7

【监控】:可以看出执行的最大时间降低了

2.3、监控业务集群升级

【业务描述】:

数据库的相关监控业务

业务写:每几十秒采集线上数据库、服务器的监控,写入此集群

业务读:分析监控等

【机器信息】:

9

【检查】:

tiup cluster check xxx --cluster

【升级】

tiup cluster upgrade xxx v5.0.0 --transfer-timeout 2

【执行时间对比】:

10

【监控】:可以看出QPS增加了,且SQL执行时间降低了

QPS: 由300 增长至 495,增长 65%

【长期观察】:

升级后QPS增长明显,但同样会导致SQL执行时间有上涨,但:总体性能变好了

2.4、其他业务集群升级

【业务描述】:

业务写:写入与更新数据,每次几十条

业务读:程序读取

【机器信息】:

13

【检查】:

tiup cluster check xxx --cluster

【升级】

tiup cluster upgrade xxx v5.0.0 --transfer-timeout 2

【执行时间对比】:

14

【监控】:可以看出SQL执行时间降低了,平稳了

8赞