详情页标题前

阿里云RDS数据库查询治理-云淘科技

详情页1

数据库自治服务DAS(Database Autonomy Service)为RDS MySQL提供查询治理功能,通过离线数据分析技术,在每天凌晨1点将全部实例在昨天产生的慢SQL进行统计分析和自动打标,帮助您对慢SQL进行自动分类和划分治理优先级,同时提供治理建议和数据导出功能。

前提条件

  • 实例为如下版本:

    • RDS MySQL 8.0 高可用版或集群版

    • RDS MySQL 5.7 高可用版或集群版

    • RDS MySQL 5.6 高可用版

    • RDS MySQL 5.5 高可用版

  • 当前支持中国内地、中国香港和新加坡地域的数据库实例。说明 从2023年04月01日起,查询治理功能支持中国香港和新加坡地域的数据库实例。

限制约束

  • 由于是T+1离线分析,如您当天对SQL打标了无需优化,第二天才能看到推荐优化SQL数值的变化。
  • DAS预定义的SQL标签暂不支持关闭。
  • 每个数据库实例只统计分析执行次数前200的慢SQL,即每个数据库实例的慢SQL模板数最大为200。

名词解释

名词 解释
推荐优化SQL 从总体的慢SQL中,排除无需优化SQL,剩下的就是推荐优化SQL
无需优化SQL 包含DAS自动标记为DAS忽略的SQL,以及用户人工标记为无需优化的SQL。
DAS忽略 DAS自动打标无需优化,例如以showcreatexacommitrollbackselect sleepexplain开头的SQL。

操作步骤

  1. 访问RDS实例列表,在上方选择地域,然后单击目标实例ID。
  2. 在左侧导航栏中,选择自治服务 > 慢SQL

  3. 单击查询治理页签。

  4. 查询治理页,查看查询治理结果。

    • 查询治理结果概览:查看系统打标分类后的结果数据。

      说明

      只统计开启DAS专业版实例的执行失败SQL次数

    • 查询治理趋势:查看所选时间范围内查询治理结果的变化趋势。

    • TOP数据:查看实例红榜实例黑榜

      • 实例黑榜:查看数据库实例慢SQL执行次数。

      • 实例红榜:查看数据库实例慢SQL执行次数变化量,负数表示慢SQL执行次数减少量(优化效果好),正数表示慢SQL执行次数增加量。

    DAS推荐您重点关注推荐优化SQL的红黑榜。

    • 待优化SQL:您可以设置筛选条件,过滤出需要治理的SQL语句。

      说明

      支持通过DB名称、SQL关键字、规则标签和数据库用户名进行筛选,四者之间是逻辑与的关系。

      • 多个DB名称之间使用英文逗号(,)分隔,逻辑关系为或。

      • 多个SQL关键字之间使用空格分隔,逻辑关系为与。

      • 多个数据库用户名之间使用英文逗号(,)分隔,逻辑关系为或。

      • 规则标签支持多选,多个规则之间逻辑关系为或。

      • 单击目标SQL样本操作列的建议,查看详细的治理建议。

      • 单击目标SQL样本操作列的打标,对此SQL进行手动打标。标签的具体含义请参见手动打标标签。

        您也可以勾选需要手动打标的SQL,进行批量打标。

      • 单击目标SQL样本操作列的样本,查看此SQL的慢日志样本详情。

      • 单击目标SQL样本操作列的趋势,查看此SQL的慢日志分析详情。详细的慢日志分析介绍及操作请参见慢SQL。

      您可以根据需要导出和分享待优化的SQL数据,具体操作请参见最佳实践。

    • 失败SQL:您可以设置筛选条件,过滤出需要查看的SQL语句。

      说明

      • 只统计开启DAS专业版实例的失败SQL

      • 支持通过DB名称和SQL关键字进行筛选,两者是逻辑与的关系。

        • 多个DB名称之间使用英文逗号(,)分隔,逻辑关系为或。

        • 多个SQL关键字之间使用空格分隔,逻辑关系为与。

      单击目标SQL样本操作列的样本,查看此SQL的样本详情。

最佳实践

  • 使用标签区分是否需要优化SQL:

    治理核心逻辑是将总体慢SQL分为无需优化的慢SQL和推荐优化SQL两类,您可根据如下SQL标签,快速筛选并按优先级治理。

    ID 标签名称 级别 推荐重点关注 描述
    NEW_SQL 新增慢SQL 警告 ✔️ 相比最近一周新增的慢SQL。
    DAS_IGNORE DAS忽略 提示 DAS自动打标无需优化,例如以showcreatexacommitrollbackselect sleepexplain开头的SQL。
    FUZZY_LIKE LIKE模糊查询 提示 like模糊匹配,无法利用索引。
    HAS_EXPR 包含表达式 提示 包含表达式计算,参与计算的列无法使用索引。
    LARGE_IN_LIST 大列表查询 提示 in包含超过200个元素,很可能是程序生成,字段无法使用索引。
    SELECT_STAR SELECT全列查询 提示 select指定业务需要的字段,避免返回多余字段造成性能下降和资源浪费。
    INDEX_ADVISOR 索引建议 提示 ✔️ 新建索引建议,加速SQL执行 。
    COMPLEX_JOIN 复杂JOIN 提示 超过三个表禁止join。需要join的字段,数据类型必须绝对一致;多表关联查询时,保证被关联的字段需要有索引。
    CROSS_DB 跨库查询 提示 跨实例迁移库表的时候,会产生跨库查询不可用的风险。
    SUBQUERY 包含子查询 提示 包含子查询,可以考虑采用join改写效率更高。
    DEEP_PAGING 深度翻页 警告 使用limit的深度翻页,建议采用join改写。
    WITHOUT_PREDICATE 无谓词 警告 ✔️ 包含无谓词的语句,请检查是否涉及全表扫描。
    NULL_COMPARE NULL匹配错误 警告 使用ISNULL()来判断是否为NULL值,因为NULL与任何值的直接比较都为NULL
    COUNT_NOT_STAR COUNT不规范 警告 请使用COUNT(*)替代count(列名)或count(常量),count(*)是SQL92定义的标准统计行数的语法,跟数据库无关,跟NULL和非NULL无关。count(列名)不会统计此列为NULL值的行。
    LARGE_ROWS_EXAMINED 扫描行多 提示 平均扫描行超过50000,扫描行数越大,越消耗数据库资源,不仅本身的SQL慢,还可能影响其他SQL执行。说明 请考虑增加更好的SQL过滤条件。
    LARGE_ROWS_SENT 返回行多 提示 平均返回行超过5000,一次返回太多数据,请考虑减少返回行数。
    NO_ADVICE 无建议 提示 暂无分析建议。
    PERIOD_SQL 周期性 提示 每天固定时间执行。

    DAS推荐您重点关注推荐优化SQL,您可配合下表,打标无需优化的SQL,持续降低推荐优化SQL数量,如下SQL标签支持用户手动打标。

    ID 标签名称 级别 描述
    USER_IGNORE 无需优化 提示 打标无需优化,第二天就不会被统计到推荐优化SQL中。
    DAS_IMPORTANT 重要SQL 提示 打标重要SQL。
    DAS_NOT_IMPORTANT 不重要SQL 提示 打标不重要SQL。
    DAS_IN_PLAN 排期优化 提示 打标排期优化。
  • 数据导出:
    • 您可通过新建导出任务,将当前看到的SQL明细的全部数据导出下载。说明 导出任务的数据可保存3天,您可用于随时下载。
    • 您可以通过设置不同的筛选条件(不同的实例、不同的规则等),新建不同的下载任务,安排不同的负责人分别优化。
    • 您也可以选中多个SQL记录,导出任务将只导出被选中的SQL。
  • 数据分享:

    为方便您快速把经过条件筛选后的慢SQL分享给对应的负责人,DAS提供两种分享功能:

    • 您可以选中多个SQL记录,点击批量分享按钮,系统生成短链接,有DAS控制台权限的用户点击访问后,将只会看到您选中的SQL记录。
    • 您也可以单击导出旁边的分享按钮,系统生成短链接,有DAS控制台权限的用户单击访问后,将会看到您当前看到的全部明细数据(无需您再次设置筛选条件)。

内容没看懂? 不太想学习?想快速解决? 有偿解决: 联系专家

阿里云企业补贴进行中: 马上申请

腾讯云限时活动1折起,即将结束: 马上收藏

同尘科技为腾讯云授权服务中心。

购买腾讯云产品享受折上折,更有现金返利:同意关联,立享优惠

转转请注明出处:https://www.yunxiaoer.com/154769.html

(0)
上一篇 2023年12月9日 下午7:13
下一篇 2023年12月9日 下午7:13
详情页2

相关推荐

  • 阿里云日志服务SLS在控制台上查询和分析日志是否会产生外网读取流量?-云淘科技

    从日志服务公网域名所在接口拉取数据时,会产生外网读取流量(按照压缩后的数据量计算)。 日志服务仅支持外网程序通过SDK消费日志服务中的数据,所以您在控制台上的所有操作(例如查询和分析日志、加工、投递等),都属于内网访问,不会产生外网读取流量。 内容没看懂? 不太想学习?想快速解决? 有偿解决: 联系专家阿里云企业补贴进行中: 马上申请腾讯云限时活动1折起,即…

    阿里云日志服务SLS 2023年12月10日
  • 阿里云ECS云服务器DisableActivation-云淘科技

    调用DisableActivation手动禁用指定的激活码。 接口说明 如果您担心已创建的激活码存在泄露的风险,可以通过该接口禁用激活码。禁用后无法再通过该激活码注册新的托管实例,但不会影响已经注册的托管实例。 调试 您可以在OpenAPI Explorer中直接运行该接口,免去您计算签名的困扰。运行成功后,OpenAPI Explorer可以自动生成SDK…

    阿里云服务器 2023年12月9日
  • 阿里云日志服务SLS结果字段说明-云淘科技

    智能异常分析的结果数据保存在名为internal-ml-log的Logstore中。本文介绍结果数据中的字段详情。 通用的tag结构说明 各类任务的结果数据中都包含如下通用字段。说明 您可以通过__tag__:__job_name__和__tag__:__schedule_id__字段,查询对应任务的结果数据。 __tag__:__apply_time__:…

    阿里云日志服务SLS 2023年12月10日
  • 信息流广告,信息流部分建议宽度830px,只针对默认列表样式,顺序随机
  • 阿里云日志服务SLSLIMIT子句-云淘科技

    日志服务默认返回100行计算结果,您也可以使用LIMIT子句指定返回结果的行数。 语法 日志服务支持以下两种LIMIT子句格式。 返回计算结果中的前x行数据。 LIMIT x 返回计算结果中从y行开始的x行数据。 LIMIT y, x 注意 LIMIT子句只用于获取最终的结果,不支持获取SQL中间的结果。 不支持在子查询内部使用LIMIT子句。例如* | s…

    2023年12月10日
  • 阿里云RDS数据库ReleaseReadWriteSplittingConnection – 释放读写分离地址-云淘科技

    该接口用于释放读写分离地址。 接口说明 适用引擎 RDS MySQL RDS SQL Server 前体条件 调用该接口时,实例必须满足以下条件,否则将操作失败: MySQL实例使用的是共享代理。 实例已开通读写分离。 实例为如下版本: MySQL 5.7高可用版(本地SSD盘) MySQL 5.6 SQL Server集群版 调试 您可以在OpenAPI …

    阿里云数据库 2023年12月9日

联系我们

400-800-8888

在线咨询: QQ交谈

邮件:admin@example.com

工作时间:周一至周五,9:30-18:30,节假日休息

关注微信
本站为广大会员提供阿里云、腾讯云、华为云、百度云等一线大厂的购买,续费优惠,保证底价,买贵退差。