CloudDBA初体验:SQL优化建议

数据库诊断和优化过程具有相当的复杂性,通常需要专业的DBA来解决。但在云计算的今天,人力运维和支撑已经变得不可能,自动化,智能化运维和服务支持日益迫切。

阿里云数据库团队在这方面不断的探索和积累,产出了CloudDBA。其目的就是要把我们已知问题和最佳实践能够以最简单的方式告诉用户,把我们多年使用数据库的经验传承给用户,方便客户使用云上数据库,给客户带来直接的价值。CloudDBA同时也在服务着内部业务,4000+的数据库实例之前需要一个team的运维人员,到现在我们只有一个同学,运维效率大幅提升。

CloudDBA一期给客户输出的功能包含数10项,迫不及待先给大家介绍SQL优化建议功能。

SQL优化方法

SQL对技术人员来说再熟悉不过,但开发人员和数据库人员对其却有不同的理解。比如开发人员看到的如下SQL语句,

屏幕快照 2017-09-27 16.04.04.png

在数据库中却是另外一种视图:

屏幕快照 2017-09-27 16.08.25.png

CloudDBA的优化功能就帮助数据库寻找最佳执行路径,将其优化成更为简洁和高效的视图:

屏幕快照 2017-09-27 16.12.32.png

示例1

SQL条件下推是多数开发人员忽视的问题,详细介绍及解法说明参见MySQL · 性能优化 · 条件下推到物化表 以及 MySQL · 性能优化 · MySQL常见SQL错误用法

该例子中的SQL在开发人员工作中经常出现:

  1. 聚合子查询其实是先定义的一个视图,之后用的时候再加条件出结果(SQL看起来简洁^^);
  2. 条件是拼接出来的,或许还出了bug,匹配符号位置放错了;

这样的写法性能肯定是好不了的。

屏幕快照 2017-09-27 16.23.09.png

有了CloudDBA后,开发人员会得到直接的提示:

22.png

根据提示,创建索引,重写SQL性能大幅提升:

33.png

示例2

再贴一个复杂点SQL语句。继续体验一下CloudDBA的自动化建议:

屏幕快照 2017-09-27 16.54.55.png


CloudDBA是数据库自动化运维的一个分水岭。我们会不断努力,致力于阿里云数据库用户体验的提升!CloudDBA等待你的加入,实现更多闪耀的功能 。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值