在使用云的过程中,哪些指标最重要,是安全、弹性,还是计算能力?

 

其实这些都很关键。除此之外,云最重要的就是数据库了。数据库的性能直接关系到系统执行的效率和稳定性,更与业务紧密相关。如果数据库出现性能问题,不仅会影响公司业务和口碑,还有可能会造成经济损失。

 

快速定位数据库性能问题,RDS推出慢SQL统计分析

 

今天要说的是数据库中的慢SQL。慢SQL是影响数据库性能很重要的一个方面。对于海量数据而言,劣质SQL和优质SQL之间的速度差别甚至能达到上万倍。一般情况下,解决慢SQL对解决数据库性能问题会起到事半功倍的效果。

 

基于百度DBA多年的运维经验,并结合用户的使用习惯,百度云推出RDS for MySQL的慢SQL统计分析功能,便于用户快速定位数据库的性能问题。

 

接下来,我们将从产品功能(包括报表功能、实时诊断功能)和应用案例这两个方面来解读慢SQL统计分析功能有多强大,希望能为您的数据库全面提升性能。

 

功能一:查看三个月内历史情况

 

首先隆重介绍的是,该产品可支持查看最近3个月(截至当天零点)按天粒度统计的慢SQL。

 

具体操作是

 

只要点击图中的慢SQL圆点,就能展示当天经过优化分析模块处理的“慢SQL统计”信息。用户可对执行次数较多或耗时较长的Top N慢SQL进行优化,也可以通过“下载明细”获取对应的完整慢SQL。

这样做的目的是方便用户了解每天的慢SQL变化趋势,也可对历史慢SQL进行分析和优化,数据一目了然了吧。

 

快速定位数据库性能问题,RDS推出慢SQL统计分析

 

功能二:可实时诊断

 

除了能查询三个月的历史慢SQL情况之外,本产品还能够通过慢SQL实时诊断查看当天零点至当前时间点,按分钟粒度统计的慢SQL。

 

具体操作是

 

用户可通过点击图上的每个柱图,展示该5分钟内经过优化分析模块处理的“慢SQL统计”信息。同时,用户还可对执行次数较多或耗时较长的Top N慢SQL进行优化,也可切换到“慢SQL明细”查看对应的完整慢SQL。

此功能是为了方便用户对当天的慢SQL进行实时分析,真正实现了今日事今日毕,快速定位数据库的性能问题。

 

快速定位数据库性能问题,RDS推出慢SQL统计分析

用案例说明实时诊断定位有多快

 

接下来,我们通过具体案例,来解析慢SQL快速分析定位的强大功能。

 

在这个案例中,用户反馈在页面点击“查询”,过了一段时间页面报响应超时,如何分析定位此次查询的响应超时?

  • 首先,该用户要定位当天的性能问题,故可使用“慢SQL实时诊断”功能。如下图所示:
快速定位数据库性能问题,RDS推出慢SQL统计分析
  • 其次,我们从“慢SQL统计”信息可看到,用户请求的这条SQL在数据库中执行了194.77秒,而业务要求超过30秒即算超时,所以请求还没返回结果就报响应超时了。
  • 第三,这条SQL的本意是统计20181217这一天每种商品的数量。全天一共也就几万条数据,MySQL在engine层却扫描了近2亿条,然后经过server层过滤,最终只有302条数据满足条件。也就是说,MySQL执行这条SQL,做了大量的无用功。至此原因基本就可以定位了。
  • 最后,MySQL会给出优化建议(该功能会在后续推出):去掉create_time字段上的函数,放在“=”右侧进行判断,同时创建(goods_id,create_time)联合索引。该SQL可在秒级别返回结果。

 

小结:功能差异性在哪?

 

从以上功能和案例中不难看出,慢SQL分为报表功能和实施诊断功能,作用有所不同。

  • 报表功能可查看最近3个月(截至当天零点)、按天粒度统计的慢SQL,适用于用户了解每天的慢SQL变化趋势,也可对历史慢SQL进行分析优化。
  • 实时诊断可通过查看当天零点至当前时间点、按分钟粒度统计的慢SQL。适用于用户对当天的慢SQL进行实时分析,以快速定位数据库的性能问题。

慢SQL作为云计算数据库中最为重要的一部分,正在被越来越多企业重视。优质SQL与劣质SQL的差异性,一定程度上影响了一个企业使用云的效率。百度云凭借着多年技术的积累,推出RDSfor MySQL帮助企业统计分析,快速定位数据库的性能问题,就是希望不断用新技术帮助企业提升业务能力,最大程度发挥云的效果。

RDS 慢MySQL统计分析功能已经上线,按照如下操作步骤即刻体验吧!

操作步骤:

1.登录RDS管理控制台

2.在左侧导航栏找到“产品服务”-“数据库”-“关系型数据库RDS”

3.在页面左上角,选择实例所在地域

4.找到目标实例,单击实例ID

5.在实例ID下面的导航栏中单击“日志管理”

6.在“日志管理”页面可看到“慢SQL报表”和“慢SQL实时诊断”

详细了解百度云关系型数据库RDS,关注百度云微信公众号