TiDB如何处理数据倾斜引起的性能问题

【 TiDB 使用环境】生产\测试环境\ POC
【 TiDB 版本】
【遇到的问题】
【复现路径】做过哪些操作出现的问题
【问题现象及影响】
【附件】

  • 相关日志、配置文件、Grafana 监控(https://metricstool.pingcap.com/)
  • TiUP Cluster Display 信息
  • TiUP CLuster Edit config 信息
  • TiDB-Overview 监控
  • 对应模块的 Grafana 监控(如有 BR、TiDB-binlog、TiCDC 等)
  • 对应模块日志(包含问题前后 1 小时日志)

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

是热点问题?
https://docs.pingcap.com/zh/tidb/v5.2/troubleshoot-hot-spot-issues#tidb-热点问题处理
还是数据分布不均匀?
分布不均匀的话,可以确认下label,比如说机架,如果两个tikv在一个机架上,则这俩上面不能有1个region的2副本,会导致tikv的数据不均匀。
https://docs.pingcap.com/zh/tidb/v5.2/schedule-replicas-by-topology-labels#设置-tikv-的-labels-配置

补充几个文档,仅供参考:
https://docs.pingcap.com/zh/tidb/stable/high-concurrency-best-practices

是容量倾斜还是请求倾斜?前者跟label和tikv权重设计有关系,后者就是热点问题。

数据本身的倾斜,数据不均匀

tidb有直方图 topn等统计信息,尽可能选择好的执行计划

直方图一般情况下bug较多,实际使用情况怎样呢?

绝大多数的执行计划还是比较好的。直方图的问题就算oracle也做不到100%解决

该主题在最后一个回复创建后60天后自动关闭。不再允许新的回复。