月13号,HotDB解决方案工程师黄小慧,以深耕金融领域的实战经验,及参与金标委分布式数据库标准定制的专业视角,与大家分享了《分布式数据库容灾及高可用体系》。解读揭秘灾难恢复及高可用架构原理的同时,也让《分布式数据库技术金融应用规范》再次作为标准为分布式数据库行业提供参考与指导意义。
下面内容整理自本次直播,错过及意犹未尽的伙伴们看过来,精彩的部分都在此处为大家整理上了。
金标委定义的:分布式事务数据库的技术架构和灾备能力要求
技术架构

分布式事务数据库容灾双活检测过程需要注意有状态节点的检测,主要关注管理管理模块和存储模块。
灾备能力等级划分
《分布式数据库技术金融应用规范 灾难恢复要求》中根据GB/T 20988-2007、GB/T 22204-2008、JR/T 0044-2008对金融领域分布式事务数据库容灾等级划分,要求金融级分布式事务数据库灾难恢复能力应至少达到4级及以上,对应的 RTO、RPO、容灾备份等关键指标要求。

数据一致性:数据同步技术原理及功能特性
数据一致性保障算法

数据副本数据库的高可用技术原理及功能特
数据服务可用性探测原理
执行说明:
- 间隔 1s 未返回结果,则再执行一条UPDATE语句
- 再间隔 500ms 未返回结果,则主备同时执行一条UPDATE语句
- 若追求数据一致性,则需要等待Standby Master数据追平 后进行数据服务切换。
- 若对数据一致性要求不严格,则优先进行数据服务切换

基于VIP漂移控制切换的数据副本数据库数据服务高可用
执行说明:
- 等待数据追平
- 数据追平
- 解除Readonly

基于MHA及VIP漂移控制切换的数据副本数据库数据服务高可用
MHA是一个数据副本的高可用架构,MHA架构的主从至少需要一主两从,一个MHA Manager可以管理多个数据副本集群,本例是管理了两个集群。
假设MHA Node1集群中的Master宕机了,切换的步骤如下:
- 保存master上的所有binlog事件
- 找到含有最新binlog位置点的slave(从两个Slave中找一个
-
最新的SLAVE) - 通过中继日志将数据恢复到其他的slave
- 将包含最新binlog位置点的slave提升为master(比如Slave1是最新的)
- 将其他从库slave指向新的master原slave1 并开启主从复制
- 将保存下来的binlog恢复到新的master上
- 原Master需要手动修复,可以作为新的Slave
- 整个故障切换下来大概要用到30秒左右

分布式事务数据库核心技术算法功能:数据分片的存储节点高可用能力
分布式事务数据库的数据分片的存储节点高可用实现要求及效果:
- 数据分片采用两副本的存储节点,则为双主半同步归档日志复制
- 分布式事务数据库计算节点的内置算法检测、判断和决策
- 单个存储节点的服务故障及恢复过程对应用程序端透明
- 故障判断及切换服务恢复的总时长在秒级
- 保障分布式事务数据库的数据服务可用性达到99.99%及以上
- 保障分布式事务数据库数据安全的可靠性达到99.99%及以上


分布式事务数据库核心技术算法功能:计算节点的负载均衡高可用能力
分布式事务数据库的计算节点的高可用实现要求及效果:
- Cluster集群版本:通过分布式选举算法保障计算节点服务可用性,Primary节点切换服务恢复的总时长在秒级,Secondary节点切换服务恢复在毫秒级
- HA主备版本:故障判断及切换服务恢复的总时长在秒级

跨数据中心容灾双活方案设计
分布式事务数据库产品特性:从磁盘级数据高可靠至跨数据中心的容灾能力

同套业务系统不拆分业务流的计算节点和存储节点都采用主备部署架构
部署特征:
- 应用系统跨数据中心双活
- 有状态计算节点跨数据中心主备模式部署
- 存储节点跨数据中心主备模式部署
跨数据中心访问环节:
容灾数据中心的应用系统服务进程跨数据中心访问生产数据中心的计算节点
架构适用场景:
- 业务系统追求RPO=0、RTO小于30秒
- 业务系统种类无限制

同套业务系统不拆分业务流的计算节点双活部署架构、存储节点主备部署架构
部署特征:
- 应用系统跨数据中心双活
- 有状态计算节点跨数据中心双活模式部署
- 存储节点跨数据中心主备模式部署
跨数据中心访问环节:
维护全局状态时,容灾数据中心的计算节点服务进程跨数据中心访问生产数据中心的指挥官计算节点
架构适用场景:
- 业务系统追求RPO=0、RTO小于10秒
- 业务系统种类无限制

多套业务系统拆分业务流量的计算节点存储节点都采用差异化双活部署架构
部署特征:
不同应用系统均跨数据中心双活
有状态计算节点跨数据中心双活模式部署
每个数据中心各部署一套有状态的计算节点集群
同套应用系统的存储节点跨数据中心主备模式部署
不同应用系统的存储节点跨数据中心差异双活模式部署
跨数据中心访问环节:
容灾数据中心的同套应用系统服务进程跨数据中心访问生产数据中心的计算节点
架构适用场景:
业务系统追求RPO=0、RTO小于10秒
业务系统种类无限制

多套业务系统拆分业务流量的计算节点存储节点都采用差异化双活部署架构
部署特征:
不同应用系统均跨数据中心双活
有状态计算节点跨数据中心双活模式部署
跨数据中心部署一套有状态的计算节点集群
同套应用系统的存储节点跨数据中心主备模式部署
不同应用系统的存储节点跨数据中心差异双活模式部署
跨数据中心访问环节:
容灾数据中心的同套应用系统服务进程跨数据中心访问生产数据中心的计算节点
维护全局状态时,容灾数据中心的计算节点服务进程跨数据中心访问生产数据中心的指挥官计算节点
架构适用场景:
业务系统追求RPO=0、RTO小于10秒
业务系统种类无限制

同套业务系统不拆分业务流的计算节点存储节点都采用双活部署架构
部署特征:
应用系统跨数据中心双活
有状态计算节点跨数据中心双活模式部署
跨数据中心部署一套有状态的计算节点集群
计算节点实现跨数据中心双写
计算节点实现跨数据中心数据锁处理
存储节点跨数据中心双活模式部署
跨数据中心访问环节:
双向数据同步跨数据中心
数据锁处理跨数据中心
维护全局状态时,容灾数据中心的计算节点服务进程跨数据中心访问生产数据中心的指挥官计算节点
架构适用场景:
业务系统追求RPO=0、RTO小于0秒
仅限于无状态的应用系统

同套业务系统不拆分业务流的计算节点存储节点都采用双活部署架构
部署特征:
应用系统跨数据中心双活
有状态计算节点跨数据中心双活模式部署
每个数据中心各部署一套有状态的计算节点集群
每个数据中心应用系统操作本地的计算节点和存储节点
存储节点跨数据中心双活模式部署
存储节点实现跨数据中心双向同步
存储节点实现跨数据中心数据锁处理
跨数据中心访问环节:
双向数据同步跨数据中心
数据锁处理跨数据中心
架构适用场景:
业务系统追求RPO=0、RTO小于0秒
仅限于无状态的应用系统

分布式事务数据库产品能力
高吞吐精确可预测的跨数据中心容灾双活的数据同步能力
故障一键切换:RPO等于0秒,RTO小于30秒
可视化管理平台部署在容灾数据中心的计算引擎能自动检测到生产数据中心的计算引擎是否能正常提供数据服务,判断是否生产数据中心的 计算引擎集群需要智能判断及自动触发跨数据中心级别的一键切换按钮弹出。
手工一键切换:RPO等于0秒,RTO小于30秒
可视化管理平台提供手工点击操作的一键切换按钮,生产数据中心的计算引擎和容灾数据中心的计算引擎之间的角色互换,数据服务转移。
演练一键切换:生产业务服务无任何影响
可视化管理平台提供手工点击操作的一键切换按钮,真实地完成各项切换过程的检测校验,但两个数据中心角色互换和数据服务转移用动画替代

打击可以通过点击以下链接获取本次直播的PPT与视频,了解与之相关的内容。
https://hotpu-1257128263.cos.ap-shanghai.myqcloud.com/HotDB%20LD%204.23/HotDB%E7%9B%B4%E6%92%AD%E5%88%86%E4%BA%AB–%E9%87%91%E8%9E%8D%E7%BA%A7%E5%88%86%E5%B8%83%E5%BC%8F%E4%BA%8B%E5%8A%A1%E6%95%B0%E6%8D%AE%E5%BA%93%E5%AE%B9%E7%81%BE%E4%B8%8E%E9%AB%98%E5%8F%AF%E7%94%A8%E5%8E%9F%E7%90%86.rar




