接入阿里云RDS后,了解了其另外一个服务,DAS自治服务,墙裂推荐。。。
1:自治服务
可以对异常进行 事件检测 ,能够几分钟就能检测到,同时还可以订阅事件,自动发送通知。
自动SQL限流的功能感觉挺先进的,通过全量sql和performance_schema中的信息,一般有三种sql,分别是阻塞型SQL(DDL操作,锁等待,大事务),慢SQL(并发量不高,但消耗大量CPU和IO资源),流量型SQL(大量并发),针对后面两种情况,如果开启自动限流功能(也能设置触发条件),能够自动拦截,从而保护数据库,不过话说回来,实际业务敢使用这个功能吗?
自动SQL优化,根据全量SQL可以进行SQL诊断,还能自动创建和删除索引。
自动性能扩展,可以在支撑能够不足的时候,自动提高数据库规格,看上去很不错的功能,不过也会涉及到计费问题。
自动空间扩展,这个功能相当给力,容量不够的时候自动扩容,如果是自建数据库,扩容是个大工程。
智能压测,这个功能有点意思,就是回放源数据库的sql,不过DDL动作如何回放?
智能调参,真的不用理解mysql参数配置了?使用一种服务的前提就是理解该服务。
2:监控
性能趋势和 实时性能 ,看看阿里云认为那些指标是重要的,既能实时看,又能看趋势,tps、qps等等,目前看性能比自建mysql高的多。
性能洞察,负载监控、分析、性能调优的利器,以直观的方式优化sql,找出问题的根源,从而提升数据库的稳定性,比较有用的功能就是自动优化sql索引,非常实用。
性能异常检测和 一键诊断 功能可以终合汇报数据库实例的监控状况。
3:告警
支持数据库级别和系统级别的各类报警。
4:SQL分析
慢SQL和 全量SQL ,真的非常实用,可以告诉你那些是高频调用SQL,那些SQL比较消耗资源,对于数据库非常有帮助。
另外还能提供 10秒SQL分析 功能,相当于执行了show processlist语句,结合 会话管理 功能,了解mysql最近执行了什么语句。
5:SQL审计
主要依赖大数据分析,看看SQL中是否存在sql注入危险。
6:诊断
其实和监控的耦合度非常高,主要就是 一键诊断 功能。
从DAS提供的功能来看,主要依赖数据分析,尤其全量SQL和performance_schema分析,整体的架构图如下:
DAS解决了数据库运维和管理的痛点,业务高速迭代的时候,如何进行容量规划、如何避免索引设计不佳、如何即使发现慢SQL;决策需要数据支撑,这样才能快速定位;管理成本高,需要专业的人才;数据库是核心资源,面对风险非常大。
最后说一句,DAS服务不仅仅能监控Mysql,还能监控Redis,MongoDB等;不仅能监控RDS,还能监控自建MySQL,云时代真的省心了很多。