《云原生一站式数据库技术与实践》——三、降本增效,阿里云一站式数据库上云最佳实践(3) https://developer.aliyun.com/article/1231596?groupCode=aliyundb
自动SQL 限流的流程如下:首先,会进行异常检测,然后通过机器学习的能力获取到全量SQL(目前仅支持云数据库,不支持IDC 或云上自建SQL),再进行根因分析、特征提取,如果发现该条SQL 与某一类SQL 比较一致,则将其禁止,做自动限流。
完成自动限流之后,DAS 会对某些SQL 提出自动优化的建议。后续如果发现不再需要自动限流,则进行超时设置,形成闭环。
数据库的实例上会有控制台,而控制台的能力是由阿里云背后的DBaaS 数据库的资源管理平台提供支持,包括高可用、同城容灾、监控报警。举个例子,做跨机房的HA 即由DBaaS 提供。
DBaaS 是云数据库最底层的云数据库操作系统,云数据库的通用能力都由DBaaS提供,包括实例的数据安全、白名单加密、异常事件。DBaaS 提供的能力会对云数据库生命周期里的各个流程环节做打点,采集日志,以判断数据库在各个过程中是否出现异常。同时也提供了自愈能力。
跨机房切换时,可以通过SLB 连到主节点,同时会有隐藏的备节点。出现问题之后,主备节点会做切换。切换完成后,暴露的SLB 和域名不变。正常情况下,切换一般只需20-30s,但不排除极端情况会对业务造成影响。
DBaaS 后台的高可用切换HA 组件在很多场景下够将Fail Over 变为Switch Over。
上图左侧的蓝线代表机房出现问题后的切换线路,绿线为主机出现问题后的切换线路,红线为实例以及数据库本身出现问题后的切换线路。
技术人员不希望出现fail over,因此会尽量将 switch over 线扩大。通过DAS 和DBaaS的能力,做异常检测、SQL限流,尽量地让实例能够主动切换,避免fail over。
《云原生一站式数据库技术与实践》——三、降本增效,阿里云一站式数据库上云最佳实践(5) https://developer.aliyun.com/article/1231594?groupCode=aliyundb