案例丨?核心系统云原生 HTAP 分布式数据库建设
背景介绍
亿联银行是全国四家拥有线上信贷业务资格的互联网银行之一,其战略目标指向通过建立开放、共享、协作、连接的金融科技云平台,整合
文 / 中国人民银行长春中心支行金融科技课题组 背景介绍 亿联银行是全国四家拥有线上信贷业务资格的互联网银行之一,其战略目标指向通过建立开放、共享、协作、连接的金融科技云平台,整合数据、场景、资产、渠道和服务,实现普惠金融、赋能美好生活的使命。亿联银行在发展过程中,一直把金融科技的研发投入放在发展规划的重要位置,提早布局了IT系统的大容量数据存储和管理能力,不断在关键技术领域尝试去除国外强依赖技术,用以更好满足用户高并发访问需求、保障IT弹性扩展能力。 国内银行在IT基础设施领域主要依赖国外厂商产品,数据库技术是基础设施最关键的组件,也最难替换,而且银行核心系统是OLTP场景中对事务强一致性、高安全性、高稳定性要求最高的,在银行核心场景上的成功案例是一个产品成熟度最有力的证明。因此,通过在银行核心系统中运用国产数据库是IT基础设施自主可控的最后一公里。 核心系统数据库关键技术 通过对于在分布式关系数据库技术领域深入的研究和对于主要技术架构的分析,梳理出了数据库在分布式关系数据库领域的主要技术架构流派和各自特点。第一代单机关系数据库,使用主备机形式实现高可用,无法避免双主问题;扩展采用垂直资源扩展,扩展性优先,且设备昂贵。第二代中间件关系数据库,使用单机数据库引擎结合中间件代理层的设计,实现了良好的水平扩展性,但应用在数据库建模设计时,每张表都需要显示指定分片键,对业务侵入性极大,带来大量业务改造工作量。第三代NewSQL关系数据库,采用自动分片策略,结合高效分布式事务,既可以实现水平扩展,又避免使用分片键,保证了对应用的使用透明,极大降低业务迁移中的工作量。 云原生HTAP分布式数据库是基于第三代数据库技术打造,在云计算环境中通过容器化敏捷部署、快速伸缩,在一个数据库实例中满足OLTP和OLAP两种数据库服务能力的新一代数据库架构。基于详尽的调研分析和针对亿联银行核心交易平台数据库规划设计的评估框架模型,我们选择了云原生分布式HTAP分布式数据库作为基础数据库平台,开展核心交易系统的数据库平台建设规划工作的标准化评估框架和模型。 基于云原生HTAP分布式数据库作为亿联银行分布式数据库技术基础架构的主要原因如下:代码级的国产化分布式云原生开源数据库有比较强的自主可控能力,可以完全替代国外产品。第三代技术架构是目前知名的开源项目,技术生态丰富。不依赖任何底层云技术,在物理机私有环境,私有云环境都能独立部署运行。数据库内核支持弹性扩展和较强的分布式计算和分布式存储能力。支持多中心多活容灾。能够处理包括联机交易,实时分析和混合负载(HTAP)多种场景,有利于建立一个通用的数据库处理标准。不依赖于MySQL或者PostgreSQL等数据库,原创开发,具备良好的可持续发展能力。具备自动化运维的能力,运维管理接口完全开放和标准化,便于进行运维能力扩展以及未来和智能运维体系。已经具备对接容器及Kubernetes云技术平台,便于未来实现分布式数据库云化及服务化演进。 基于以上考虑数据库实例,亿联银行决定在核心场景采用基于云原生HTAP分布式数据库来解决银行核心业务场景IT资源横向线性扩展问题的探索。 建设与实践 亿联银行在分布式多活核心系统的建设过程中,充分结合业务应用系统高可靠性分布式架构设计与云原生HTAP分布式数据库架构,采用完整的分布式设计理念,使核心交易系统具备了较强的弹性横向扩展能力。同时,在高可靠分布式设计理念下,核心系统各部分功能更加专业化、耦合性更低,为业务支撑提供了可靠支撑,同时引入基于第三代NewSQL分布式数据库体系,为亿联银行业务快速发展,科技可持续赋能业务发展及建立高度自主可控能力奠定了坚实的基础。亿联银行核心系统分布式平台架构如1所示。 图1 亿联银行核心系统多中心多活架构 经过2年左右的技术评估验证,系统及业务设计开发及优化,亿联银行建设完成并投入运行多中心多活架构的核心交易系统。同时在建设过程中,通过对亿联银行业务特点、金融监管要求、金融行业技术发展方向的深入分析和理解,形成了行业领先的核心业务支撑能力,主要技术攻坚成果包括如下。 1.多中心容灾多活架构的设计与实现 地域用户路由:用户数据按地域划分存储、根据用户ID进行本地和异地路由。 核心业务系统异地多活部署:核心业务系统两地同时供服务(联机交易、批处理、参数管理等适应两地业务单元),灵活切换。 自动化灾备切换同城分布式应用和数据库自动进行灾备接管,异地一键式灾备切换,RPO趋近于0,RTO小于5分钟。 2.核心系统的分布式优化及改造 主要包括:子余额应用改造设计实现;热点账户场景解决方案的优化与验证;信贷系统记账与核心解耦;单机关系型数据库到云原生HTAP分布式数据库的开发侧适配优化;Galaxy+Orin分布式批量框架实现;乐观锁及悲观锁的交易事务的优化适配;交易负载的分布式性能深度优化。 3.并行上线方案的设计与实现 主要包括:交易录制、交易回放、交易补偿技术机制实现。亿联银行核心系统数据库整体架构如图2所示。 图2 亿联银行核心系统数据库整体架构 成果与收益 亿联银行通过在核心业务场景成功实践云原生HTAP分布式数据库,在生产环境建立起多层次、条线化、可伸缩的数据库资源池。 1.减少IT硬件投入预算 通过本方案研究实践,银行关键核心数据库架构完全采用X86服务器搭建,消除了传统数据库架构的高端存储和RISC小型机,打破了银行关键基础设施对国外IT产品的依赖,有效降低了硬件成本。 2.提高开发和运维工作效率 本方案的云原生HTAP分布式数据库是通过内核实现数据的分布式处理,一是根据业务性能需求可以简单快速地扩容节点,避免了分库分表数据库架构复杂的节点扩容和运维成本,提升了系统运维效率。二是分布式数据库对应用实现代码是无任何侵入的,研发人员视角相当于单机数据库一样,不用在代码实现分区分表的设计,提升了业务开发效率和更替周期。 3.为银行核心业务场景落地第三代数据库打造了成功的范例 亿联银行通过在关键核心业务场景采用云原生HTAP分布式数据库,实现了核心系统IT资源的横向线性扩展,优化了资源使用量,减少了硬件、系统软件和人员维护成本,系统整体架构设计具有较大的先进性、稳定性、高可用性,为商业银行摆脱国外品牌依赖提供指引,具有重要的现实意义和未来推广价值。 亿联银行以《金融科技(FinTech)发展规划(2019~2021年)》要求为指引,结合自身业务特点,积极探索分布式技术的应用,通过两年多的努力探索和不断实践创新,顺利完成了核心业务系统在云原生模式的HTAP分布式数据库成功应用,在生产环境实现了并行上线。接下来,亿联银行将进一步就云原生HTAP分布式数据库进行更多关键业务场景落地实践,同时加强与同业的沟通交流,吸收同业的优秀经验,为同业建设分布式数据库提供更好的借鉴。 (课题组成员:中国人民银行长春中心支行副行长周海;中国人民银行长春中心支行科技处刘建华、汪继增、仪婷婷、吕致萍;吉林亿联银行行长助理兼CIO李树峰;吉林亿联银行科技运维部副总经理卢秀红) (编辑:晋中站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |