数据库是所有企业业务的基座,企业内的研发、测试、运营、运维等等人员每天都需要对数据库进行操作或者查询,但是使用数据库的人员对数据库的了解程度参差不齐,所以数据库的稳定性不断受到如下问题的挑战。

数据库运维和管理的挑战

  • 业务快速迭代,数据库故障频发
    • 业务发布,产生了大量慢SQL。
    • 业务大促,容量预估不足。
    • 表结构或者索引设计错误。
    • 未经Review的SQL或者表被发布到线上。
  • 缺少数据支撑,问题排查靠猜

    数据库的问题排查和性能优化一直都是数据库领域的专业问题,但是即使最专业的DBA在面对一些问题的时候,也往往耗费了很长时间,但是仍然无法定位到根因,主要的难点有三个:

    • 获取信息难,问题诊断和性能优化都需要依赖于大量的系统数据,甚至是长期的历史数据,只有基于完备的信息才能给出准确的解法。
    • 分析信息难,需要多年的经验才能给出准确的解法,也需要多样的场景才能覆盖比较全面的问题类型。经验与场景,一不好传承,二变化较快,三他人理解不易。
    • 优化手段难,找出问题了,知道怎么办了,也并不意味着就能马上解决问题,甚至有些解法是要深入到数据库引擎层代码优化,这可不是一朝一夕就能做好。
  • 管理成本高
    随着云计算的普及,企业可以更为便捷的根据不同的业务类型,使用不同的数据库,或者将数据库部署在不同的环境中,多环境和多种数据库的管理的挑战也随之而来:
    • 精通多种数据库的专业DBA是稀缺人才,招聘难。
    • 管理部署在多种环境的多种数据库的难度大。
    • 管理经验沉淀和传承的难度大。
  • 数据库的安全风险大
    随着数据价值的提升,企业的数据面临着越来越多的内部或者外部的攻击,数据泄漏、数据丢失等问题层出不穷。
    • 未授权或者不可预期或者错误的数据库访问和使用。
    • 数据泄漏。
    • 数据损坏。
    • 黑客攻击。
    • 软硬件bugs,导致数据异常。
    • 误操作导致数据丢失。

解决方案

数据库自治服务DAS(Database Autonomy Service)是一种基于机器学习和专家经验实现数据库自感知、自修复、自优化、自运维及自安全的云服务,帮助用户消除数据库管理的复杂性及人工操作引发的服务故障,有效保障数据库服务的稳定、安全及高效。

该服务已经在阿里巴巴集团的所有的数据库上验证了2年多,截止到2020年4月:

  • 自动优化了4000多万的SQL。
  • 自动回收了4 PB的空间。
  • 自动优化了20%的内存。