文档

查看 SQL 详情

更新时间:

SQL 详情页会根据不同的 SQL 诊断情况,选择性展示对应 SQL 的文本、优化建议、采样明细、诊断详情、采样历史、执行历史和执行计划等信息。

SQL 详情

在 SQL 诊断中查看 SQL 的基本信息后,可以通过点击 SQL 跳转到 SQL 详情页面。根据不同的 SQL 情况,展示对应 SQL 的文本、优化建议、采样明细、诊断详情、采样历史、执行历史和执行计划等信息。

SQL 文本

在 SQL 文本区域,可以查看完整的 SQL 文本。此外,通过勾选 表结构,您可以查看对应表的结构信息。

image

优化建议

说明

没有优化建议时,该卡片不显示。

优化建议 区域,可以查看诊断时间范围内该 SQL 的所有问题及对应的优化建议。您可以按照系统给出的优化建议进行相关操作。目前存在两种优化建议:

  • 计划推荐: 分析该 SQL 最近 1 周的执行计划,当发现某个执行计划在 CPU 时间上比其他同类型(本地计划或者分布式计划)的执行计划更优秀时,则会推荐用户关注。当存在计划推荐时,建议您详细分析该计划与现有执行计划差异,并确定没有 DDL 变更,再考虑进行绑定。绑定后请仔细观察优化效果,如果没有优化效果,请及时回滚操作。

    计划推荐的具体规则:计划推荐根据最新执行计划的CPU时间进行分档考虑,当最新执行计划CPU时间较小时,被推荐的候选计划需要大幅度优于最新计划才会推荐。 当最新执行计划CPU时间较大时,被推荐的候选计划则需要小幅度的优于最新计划才会被推荐。

    最新计划 CPU 时间

    候选计划 CPU 时间

    [0-1) ms

    候选计划为最新计划 CPU 时间的 1/10

    [1-10) ms

    候选计划为最新计划 CPU 时间的 1/5

    [10-100) ms

    候选计划为最新计划 CPU 时间的 1/2

    [100-1000) ms

    候选计划为最新计划 CPU 时间的 2/3

    [1000- 无穷大)

    候选计划为最新计划 CPU 时间的 5/6

  • 索引推荐,会根据以下算法进行:

    • 等值查询列在前,以任意顺序组合。

    • 如有范围查询,将选择性最好的范围查询列放在等值查询列后。

    • 如果没有范围查询,当满足消除排序条件时,将排序列放在等值查询后。

    • 将谓词中其他列放在索引后面,此时已是半宽索引。

    • 将 Select 中其他列放在索引后面,构造覆盖索引。

    • 当覆盖索引不超过 8 列时,会推荐覆盖索引,否则会推荐半宽索引。

    • 当 CPU 时间超过 10ms 或响应时间超过 20ms 时才会进行索引推荐。

优化建议..png

SQL 采样明细

说明

仅 SlowSQL 详情页显示 SQL 采样明细信息,其他类型的 SQL 详情页不显示。

在 SQL 采样明细中,您可查看当前 SQL 的具体采样信息。单击 列管理,可设置需要展示的列并调整列的先后顺序。单击 导出 可下载 SQL 采样明细列表。

image

聚合 SQL 明细

说明

仅查看聚合 SQL 详情页时,会显示聚合 SQL 明细。

在聚合 SQL 明细中,您可查看相关的所有 SQL,默认展示 SQL 文本、数据库、SQLID 等列,以及展开后的错误信息。

image.png

SQL 诊断详情

说明

没有诊断详情时,该卡片不显示。

SQL 诊断详情 区域,您可查看诊断时间范围内总共出现过几次同样的问题,还可查看当前 SQL 语句的请求时间范围、执行次数、CPU 时间和最后执行时间,以及对当前 SQL 语句的诊断依据和排查建议。1

物理执行计划

在物理执行计划页签,您可以查看执行计划列表并进行绑定执行计划、淘汰执行计划等操作。

  • 单击 Plan Hash 文本,可以查看对应的物理执行计划详情。

    在执行计划详情页面中,查看执行步骤中算子的具体应用过程。算子的基础介绍,请参见 SQL 执行计划简介

    image

  • 单击自定义时间,可下拉选择 近 1 小时近 12 小时近 1 天 进行时间点的快速筛选,也可以自定义时间进行查看。

  • 单击 近 30 天绑定历史记录 可查看绑定历史记录。

  • 单击 刷新 plan cache,确认后会清除租户下该 SQL 的执行计划缓存,下次执行这个SQL的时候会重新生成执行计划。

  • 单击 绑定,确认后会强制 SQL 按该执行计划进行执行。如果执行计划处于绑定状态,则会显示 已绑定

image

SQL 执行历史

在 SQL 执行历史页签,非聚合 SQL 和聚合 SQL 的展示会有所区别。

非聚合 SQL 执行历史

您可查看近 1 小时、近 12 小时、近 1 天或自定义时间范围内的 SQL 执行历史以及 SQL 相关的图表。

  • SQL 执行历史:可查看当前 SQL 语句的历史执行信息。

    • 单击 全部节点,可选择指定节点进行查看。

    • 根据右上角时间,可选择 近 1 小时近 12 小时近 1 天,或者 自定义时间 进行查看。

    • 单击右上方的 列管理,可勾选需要高频查看的信息。

    • 单击 导出 可下载 SQL 执行历史列表。

      image

  • SQL 执行耗时:您可通过单击右侧类别选择您要查看的执行耗时情况。

    image.png

  • 执行次数:单击 执行次数 后的下拉列表,选择您想要查看的数据。

    image.png

聚合 SQL 执行历史

您可查看近 1 小时、近 12 小时、近 1 天或自定义时间范围内的 SQL 执行历史以及 SQL 相关的图表。

  • SQL 执行历史:可查看当前 SQL 语句的历史执行信息,单击右上方的 列管理,可勾选需要高频查看的信息,单击 导出 可下载 SQL 执行历史列表。

    image.png

  • 聚合 SQL 的图表数据,可通过聚合 SQL 维度或者单一 SQL 维度分别查看,默认展示聚合 SQL 维度 SQL 执行耗时-CPU 时间总执行次数 图表。

    • 聚合 SQL 维度统计了关联 SQL 的整体数据。

      SQL 执行耗时:您可通过下拉选择 总数据库耗时数据库耗时响应时间 等选项进行查看。

      image.png

      总执行次数:单击 总执行次数 后的下拉列表,选择您想要查看的数据。

      image.png

    • 单一 SQL 维度默认展示 CPU 占比前 10 的 SQL 数据,可通过下拉选择更多 SQL。

      SQL 执行耗时:您可通过下拉选择 总数据库耗时数据库耗时响应时间 等选项进行查看。同时可以通过 SQL ID 进行筛选查看指定 SQL 的信息。

      image.png

      总执行次数:单击 总执行次数 后的下拉列表,选择您想要查看的数据。同时可以通过 SQL ID 进行筛选查看指定 SQL 的信息。

      image.png

总执行次数也可以下拉选择 每秒执行次数总响应时间响应时间 等选项进行查看。

表信息

在表信息页签,您可以查看索引的相关信息并进行索引绑定等操作。如果索引处于已绑定状态,则会显示 已绑定。此外,您还可以查看表统计信息。

image

高级设置

在高级设置页签,您可以进行如下操作:

  1. 打开 限流 开关。

  2. 设置单个 OBServer 执行指定 SQL 的并发个数。绑定索引和限定并发数不能同时生效。

  3. 单击 更新设置,您的设置将会实时生效。1

  • 本页导读 (0)
文档反馈