重磅发布|新一代云原生数据仓库AnalyticDB「SQL智能诊断」功能详解

简介: AnalyticDB For MySQL为用户提供了高效、实时、功能丰富并且智能化的「SQL智能诊断」和「SQL智能调优」功能,提供用户SQL性能调优的思路、方向和具体的方法,降低用户使用成本,提高用户使用ADB的效率

SQL是一种简单易用的业务逻辑表达语言,但随着扫描数据量查询复杂度的增加,查询性能会变得越来越慢。想要对SQL进行调优,往往需要关注以下几个部分:

  • 需要了解引擎架构:用户往往需要对SQL引擎的架构特点有一定的了解,才能和业务的数据分布特征以及业务场景特征完美结合,来进行数据建模,从而设计出符合SQL引擎架构特点的表结构。
  • SQL特征差异较大:即席查询的SQL往往变化较大,包括参与Join的表个数、Join条件、分组聚合的字段个数以及过滤条件等。
  • 数据特征差异较大:用户的数据分布特征是会随着业务特征的变化而变化的,如果一直按照最初的建模方式和SQL语句,也是无法保障能发挥出SQL引擎的最大优势,数据特征或者业务模型的变化,都会导致SQL性能回退。

基于此,AnalyticDB For MySQL(新一代云原生实时数据仓库,语法兼容MySQL,以下简称ADB)为用户提供了高效、实时、功能丰富并且智能化的「SQL智能诊断」「SQL智能调优」功能,提供用户SQL性能调优的思路、方向和具体的方法,降低用户使用成本,提高用户使用ADB的效率。

下面我们通过「发现慢查询」+「诊断慢查询」两个步骤,并结合一个场景Case,来介绍ADB新发布的「SQL智能诊断」功能。(PS:「SQL智能调优」会在后续版本中发布)

一、发现慢查询

用户要定位慢查询,首先需要找到慢查询。ADB的用户控制台提供了多样的方式来帮助用户,例如「甘特图」「查询列表」等,都可以在多个维度进行检索,帮助用户快速定位慢查询,而且诊断工具确保用户可以进行最近两周的全量查询检索和分析。

(一)甘特图

用户可以通过「集群控制台」-「诊断与优化」 - 「SQL诊断」进入SQL智能诊断功能。

1.png

首先会看到一个甘特图(也称泳道图,查询从不同的泳道流过,这里的泳道并不是ADB的查询队列,只是为了区分开不同时间执行的查询),甘特图以图形化的方式形象的展示了查询在ADB实例上的执行顺序,每个色块表示了一条查询,色块左侧为查询的提交时间,色块右侧为查询的结束时间,色块的相对长度表示了某条查询的执行时间,色块的颜色没有特殊含义,只是为了区分不同的泳道。

2.png


通过甘特图,用户可以非常直观的看到当前时间范围内执行耗时较长的查询,并且可以直观的看到哪些查询是在并行的执行

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值