【中国信通院】金融级数据库容灾技术报告(2021年)
数据库作为信息系统的核心,承担着数据存储和业务逻辑计算等工作,各金融机构信息化部门均应用大量容灾备份手段,用于保障数据库的业务连续性。近年来,随着数据库应用场景日益丰富和数据库的云化趋势显著,金融机构数据库的容灾备份手段和模式也不断迭代更新。
本报告聚焦金融领域的数据库在灾备方面的技术内容。介绍了容灾与备份的定义、分类,分析了金融机构灾备现状、需求与灾备市场情况,梳理了主流数据库容灾备份技术架构、实现方式与部署方案,阐述了节点、网络、数据中心等故障的应对方案,展望了数据库灾备技术发展方向。
数据库技术历经六十余年发展,新架构层出不穷,技术不断完善。本文首先介绍数据库容灾和备份技术概念,然后结合集中式和分布式架构对多种数据库产品的容灾备份技术进行对比分析。从系统架构来看,集中式数据库架构在解决方案和产品能力上表现更为成熟,但在技术上缺乏突破,略显保守;分布式关系型数据库虽然出现时间较短,但创新的技术架构和扩展能力使其在市场中更具活力与挑战。
从数据库系统的容灾架构看,金融业务系统开始从单中心容灾架构,逐步向同城互备、同城双活或异地多活等容灾架构进行演化。通过分析分布式数据库产品在不同容灾架构下的容灾备份功能特性,可以看到在容灾性能指标、数据可靠保障、应用场景支持等方面,分布式数据库都已经有较为完善的容灾解决方案,技术发展潜力巨大。
随着分布式数据库技术不断发展,容灾技术应向着智能化、云原生为主的方向发展。
(一)混合业务负载降低容灾复杂度
混合业务负载数据库,可以同时支撑联机事务处理和联机分析处理的业务场景,打破了事务处理和数据分析之间的隔阂,同时避免了在传统架构中,在线数据库与离线数据库之间大量的数据交互。实现一份数据,面向多种场景的统一数据库服务架构。这种模式下对数据流的简化和存储架构的统一,也降低了数据库系统容灾方案的复杂度。
(二)人工智能改善容灾处置灵活性
随着分布式数据库架构不断演进,数据库组件功能进一步细化,数据库系统将会形成完整的生态体系,节点的管控由目前的基于规则模式逐步演化为基于人工智能算法的协同模式。数据库系统除了能自动应对基础设施故障外,还能通过对各节点流量进行大数据分析和预测,实现系统级和应用级的异常检测及灾难的预警和隔离,同时在灾难发生时提供更细粒度的处置能力。
(三)云原生实现容灾过程可编排
云计算拐点已至,云原生成为驱动业务增长的重要引擎。云原生数据库基于抽象的云原生基础架构,提供Serverless服务,以支持应用为核心,而传统基础架构下的数据库产品往往是以存储为核心。
在容灾场景里,传统架构数据库的容灾过程参与者主要是主机、存储、网络和软件;而在云原生数据库平台,容灾参与的对象是云资源和在多云之间互相流转的数据,利用云原生编排能力,结合业务场景有望实现容灾高度自动化。
(四)混沌工程提升容灾架构韧性
现实世界中的各类灾难往往是无法避免的,目前的故障演练一般通过断网断电来测试系统的恢复能力,而分布式系统的复杂度需要一种更灵活更具有探索性的方案验证系统可用性的边界。
“混沌工程”是一种可实验的、基于系统的方式,可以用来分析分布式数据库系统中的混乱问题。通过不断实验,观察分布式数据库系统的行为和反应,了解系统实际能承受的韧性边界。分布式数据库架构下,节点间的交互和依赖极端复杂,系统的容错容灾技术特性各异,传统技术已无法有效完成容灾演练测试,引入混沌工程可以更好的验证并提升系统容灾架构的韧性。