AI4DB:人工智能之慢SQL根因分析

Posted Gauss松鼠会

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了AI4DB:人工智能之慢SQL根因分析相关的知识,希望对你有一定的参考价值。

AI4DB: 慢SQL根因分析

概述

慢SQL一直是数据运维中的痛点问题,如何有效诊断慢SQL根因是当前一大难题,工具结合openGauss自身特点融合了现网DBA慢SQL诊断经验,该工具可以支持慢SQL根因15+,能同时按照可能性大小输出多个根因并提供针对性的建议。

环境部署

  • 数据库运行正常。
  • 指标采集系统运行正常。

使用指导

假设用户已经初始化配置文件目录confpath,则可以通过下述命令实现本特性的功能:

  • 仅启动慢SQL诊断功能(输出Top3根因),启动命令如下(更多用法参考对service子命令的说明):
gs_dbmind service start -c confpath --only-run slow_query_diagnosis

  • 用户交互式慢SQL诊断,命令如下:
gs_dbmind component slow_query_diagnosis show -c confpath --query SQL --start-time timestamps0 --end-time timestamps1

  • 用户手动清理历史预测结果,命令如下:
gs_dbmind component slow_query_diagnosis clean -c confpath --retention-days DAYS

  • 停止已启动的服务,命令如下:
gs_dbmind service stop -c confpath

获取帮助

模块命令行说明:

gs_dbmind component slow_query_diagnosis --help

usage:  [-h] -c DIRECTORY [--query SLOW_QUERY]
        [--start-time TIMESTAMP_IN_MICROSECONDS]
        [--end-time TIMESTAMP_IN_MICROSECONDS] [--retention-days DAYS]
        show,clean

Slow Query Diagnosis: Analyse the root cause of slow query

positional arguments:
  show,clean          choose a functionality to perform

optional arguments:
  -h, --help            show this help message and exit
  -c DIRECTORY, --conf DIRECTORY
                        set the directory of configuration files
  --query SLOW_QUERY    set a slow query you want to retrieve
  --start-time TIMESTAMP_IN_MICROSECONDS
                        set the start time of a slow SQL diagnosis result to
                        be retrieved
  --end-time TIMESTAMP_IN_MICROSECONDS
                        set the end time of a slow SQL diagnosis result to be
                        retrieved
  --retention-days DAYS
                        clear historical diagnosis results and set the maximum
                        number of days to retain data

命令参考

参数参数说明取值范围
-h, –help帮助命令-
action动作参数show:结果展示,clean:清理结果
-c,–conf配置目录-
–query慢SQL文本*
–start-time显示开始时间的时间戳,单位毫秒非负整数
–end-time显示结束时间的时间戳,单位毫秒非负整数
–retention-days清理天数级结果非负实数

常见问题处理

  • 如果用户对没有执行过的慢SQL执行交互式诊断命令,则无法给出诊断结果。
  • exporter指标采集功能没有启动时运行慢SQL诊断功能,此时功能无法正常运行。
  • 配置文件中的参数重新设置后,需要重新启动服务进程才能生效。

以上是关于AI4DB:人工智能之慢SQL根因分析的主要内容,如果未能解决你的问题,请参考以下文章

性能测试四十一:sql案例之慢sql配置执行计划和索引

MySQL之慢查询日志

MySQL之慢查询日志

干货分享AIOps之根因分析

华为云技术分享根因分析

MySQL之慢查询日志分析