TiDB数据库热点问题诊断与处理(使用AUTO_RANDOM)

0    263    2

Tags:

👉 本文共约730个字,系统预计阅读时间或需3分钟。

https://docs.pingcap.com/zh/tidb/stable/troubleshoot-hot-spot-issues/#%E4%BD%BF%E7%94%A8-auto_random-%E5%A4%84%E7%90%86%E8%87%AA%E5%A2%9E%E4%B8%BB%E9%94%AE%E7%83%AD%E7%82%B9%E8%A1%A8

使用 AUTO_RANDOM 处理自增主键热点表,适用于代替自增主键,解决自增主键带来的写入热点。

使用该功能后,将由 TiDB 生成随机分布且空间耗尽前不重复的主键,达到离散写入、打散写入热点的目的。

注意 TiDB 生成的主键不再是自增的主键,可使用 LAST_INSERT_ID() 获取上次分配的主键值。

将使用 sysbench 工具模拟数据的并发插入,并采用 AUTO_RANDOM 选项来尝试打散热点。

未优化前

采用 sysbench 模拟并发批量写入数据,此过程时间较长(15 min 左右),如下:

本人提供Oracle、MySQL、PG等数据库的培训和考证业务,私聊QQ646634621或微信db_bao,谢谢!

通过 TiDB Dashboard 中的流量可视化图观察热点情况,发现热点分布不均衡:

TiDB数据库热点问题诊断与处理(使用AUTO_RANDOM)

优化后

再次通过 TiDB Dashboard 中的流量可视化图观察热点情况,发现本次实验热点分布均衡:

TiDB数据库热点问题诊断与处理(使用AUTO_RANDOM)

由流量图可见,使用 AUTO_RANDOM 代替 AUTO_INCREMENT 能很好地打散热点。

标签:

头像

小麦苗

学习或考证,均可联系麦老师,请加微信db_bao或QQ646634621

您可能还喜欢...

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注

2 + 4 =

 

嘿,我是小麦,需要帮助随时找我哦
  • 18509239930
  • 个人微信

  • 麦老师QQ聊天
  • 个人邮箱
  • 点击加入QQ群
  • 个人微店

  • 回到顶部
返回顶部