【TiDB 4.0 PCTA 学习笔记】- 3.7.3 查询优化器@2班+欧阳

课程名称:3.7.3 查询优化器

学习时长:12min

课程收获:使用系统表 STATEMENTS_SUMMARYSLOW_QUERY 定位不健康的查询以及分析原因

课程内容:

  • 导致unhealthy query的原因

    • query health 介绍

      • 影响query health原因

        • 热点导致的数据库性能瓶颈
        • 由于过期的统计信息导致执行计划改变
        • 读写冲突
    • 如何分辨unhealthy query

      • 使用 query latency (查询延迟)来辨别

        • 不健康查询的 query latency 可能是不稳定的,时快时慢
        • 不健康查询的query latency可能会很高
  • 辨别unhealthy query的方法

    • 使用STATEMENTS_SUMMARY系统表

      • 是一个information_schema中的系统内存表,TiDB重启会丢失
      • 通过SQL digest和paln digest分组,提供每类SQL的统计信息
      • 周期性清除,默认最近30min的数据
      • 历史数据存在SYSTEM_SUMMARY_HISTORY
    • SQL Digest(指纹)

    • 使用SLOW_QUERY系统表

      • SLOW-QUERY-FILE 慢查询日志

        • 包含执行时间超过tidb_slow_log_threshold(ms)的SQL语句
        • 格式和MySQL相同,pt-query-digest同样可以支持
      • SLOW_QUERY

        • information_schema中的系统表
        • 内容是从slow-query-file解析而来
        • 查询slow_query而不是grep slow-query-file
    • 集群范围的对应系统表

    • 例子

同学你好,感谢参与 TiDB 4.0 课程的学习!

本篇笔记逻辑清晰、内容丰富,被评选为优质笔记,将额外获得 20 积分,并在 「TiDB 培训」分类下获得“置顶”权益,积分兑换规则将于近期开放,敬请关注!

期待您继续产出优质内容!