一文详解华夏银行数据库变迁之路
随着科技的飞速发展,银行业和金融科技都面临着巨大的挑战和机遇。在这个数字化时代,消费者对银行业和金融科技的服务提出了更高的要求,要求更便捷、更高效、更安全的金融服务。
金融科技公司凭借其先进的科技技术和灵活的创新模式,在支付、借贷、投资等领域不断拓展市场份额,给传统银行业带来了巨大的压力。但同时,银行业也从金融科技中看到了巨大的机遇。银行业可以利用金融科技的技术和模式,提升服务效率,优化客户体验,扩大市场份额,实现业务的数字化和 智能化。
华夏银行就是这场数智化浪潮中紧跟时代的先行者。经过几年的自研 数据库 迁移与改造,目前华夏银行已经完成了 40% 以上的老旧数据库系统替换,实现了由管理类业务系统成熟的应用,逐步向核心系统的试点推进。那么,是什么样的契机推动了华夏银行对数据库系统进行改造?在对数据库进行调研、测试、选型与推广方面都做了哪些工作?针对自研数据库的建设上华夏银行又有哪些经验值得分享?在此次 2023 可信数据库发展大会上,InfoQ 有幸采访到了华夏银行数据库专家王辉,听他来聊一聊华夏银行的数据库迁移改造技术实践。
王辉: 你好,非常荣幸能够接受 InfoQ 的专访,我叫王辉,来自华夏银行信息科技部基础技术研究室,主要负责国产分布式数据库的调研、测试、选型与推广相关工作,之前主要从事 Oracle、MySQL 等商用数据库的开发与运维相关工作。
王辉:数据库 在银行主要经历了以商用为主的集中式,逐步向开源和分布式试点,最终采用国产分布式为主的转变,主要需求来自于业务驱动、技术驱动两方面,业务驱动主要是由于随着数字化时代的来临,数据呈现爆发式增长,数据的存储和访问都面临重大的挑战,传统数据库架构 受限于单机资源瓶颈,不具备水平扩展能力,使其海量 数据的处理能力 较弱,难以满足新业务场景需求。技术驱动主体现在实现金融科技创新对核心技术实现自主掌控的要求,同时进行深入研究和场景适配的攻关,推进金融业信息化核心技术安全可控标准建设的目标。
王辉:IT 架构主要以商用的 IOE 集中式架构为主,数据库在 TP 场景绝大部分采用的 Oracle,AP 场景以 TD、Oracle 一体机为主。主要存在集中式架构扩展能力差,成本较高,数据库 高可用切换能力弱,同城数据复制存在数据丢失风险等问题。
王辉: 在容灾级别、高可用、高性能、高扩展能力等方面要求不同。核心系统容灾级别为最高级别,需满足生产、同城、灾备三数据中心机房,同城 RPO=0,RTO<1 分钟,数据强一致、零丢失,又要具备自动高可用切换能力,高并发访问性能,数据库响应时间延迟低,及更灵活的弹性扩展能力等要求,对保障业务的连续性与稳定性能力也要求更高。而管理类业务系统要求相对较低,大部分为内部使用,属于次重要或一般类业务系统,等保和容灾级别也要求较低。虽然不乏有金融机构直接拿核心类业务进行试点,但为了稳妥起见,大多数金融机构都以管理类业务系统试点为切入点。
王辉: 数据库选型主要考虑产品能力、服务能力、同业案例、生态建设和公司资质等方面。前期工作主要包括:技术调研、技术交流、市场调研、产品测试、产品选型等方面。
集中式数据库基本都不具备分布式能力,无法满足高并发、大数据量的业务场景需求,而绝大部分分布式数据库都具备集中式和分布式两种部署模式,可以满足不同业务不同场景的要求。
王辉:分布式 的优势在于存算分离,将数据分散到多个节点进行存储与计算,从而提升数据库的整体处理能力。因此带来的改善首先体现在性能方面,具体实践中虽然对于本身业务压力就比较小的系统提升并不明显,但对于交易量大的系统提升较为明显,TP 场景下,以核心借记卡系统为例,采用分布式架构后,TPS 提升 1.5 倍。AP 场景由于其数据量大,数据节点多等特点,更能体现出分布式计算的优势,替换后提升明显,平均性能提升 1.5-2 倍,以 CRM 系统为例用户响应时间由 30s 下降到 3s,极大的提升了用户体验。其次在成本方面,对比商用小型机、企业级存储,分布式数据库只需要运行在 X86、ARM 等架构的 PC 服务器上,同时软件费用相比较商用数据库较低,相关维保费用也较低,虽然分布式部署设备较多,但总体上成本还是有所降低的。
当然,分布式其实是一把双刃剑,用好了会事半功倍,但如果前期规划设计不好,反而会造成性能下降。在使用分布式架构时我们需要进行全面的评估分析,尽量避免分布式事务,分片键设计不合理等情况的发生。另外需要指出分布式数据库的集中式部署模式能满足大部分业务需求,我行也占有较大的比重,我们完全没有必要为了分布式而分布式。
王辉: 整个数据库改造过程大概分成如下几个阶段:
改造评估:收集相关信息评估改造成本,评估报告编写;
规划设计:数据库选型、架构设计、模型设计、环境部署;
适配测试:业务代码与数据库语法改造,功能、非功能及高可用测试;
数据迁移:数据对象与数据迁移,数据一致性比对与验证;
服务交割:系统上线与回退策略制定及后期运维、监控与故障处置等。
耗时大概在半年左右。数据库改造过程耗时主要取决于业务复杂度、数据量大小、兼容性及运维备份要求等方面,一般情况下业务系统数据库改造的平均时间在半年左右。
在数据库改造过程中遇到的主要问题是业务开发代码与新数据库的兼容性适配,包括对象、语法、链接驱动等适配改造,另外就是商用数据库如何完整、高效的迁移到国产数据库问题,最后还涉及到上线后的运维监控与备份等问题。
我们的解决方案是自研了几个工具平台来完成这项工作。
我们搭建了开发工具平台——自建龙跃(iGO)数据库迁移平台。实现了在业务代码不修改或少量修改的情况下与新数据库的适配,同时具备数据平滑、高效的数据迁移能力解决了数据库改造过程遇到的两大难题,提升了改造效率。
还建立了统一运维平台,实现现有数据库与我行一体化监控平台的对接,并建立统一的数据库运维管理平台。此外我们还推动了平台生态建设,推动了国产备份、安全等服务厂商与国产数据库的适配认证。
王辉: 主要研发了数据库迁移平台,存储过程覆盖率检测工具,SQL 审计平台,应该说为数据库的改造既降低了成本又提高了改造效率,随着平台不断地成熟与完善,原来的改造要用年来计算,现在可以实现月甚至周来计算。
因为我们非常明确数据库的改造需求,也具备有实力的开发团队。另外市场调研结果显示针对国产数据库的迁移平台并不多,也很难覆盖我行的数据库种类,虽然各数据库也有自己的迁移工具,但都各自分散不便于统一管理,而且在数据迁移过程中遇到特殊情况自己研发的平台可以快速响应,可定制开发,比较反馈给厂商效率要高很多,同时还实现了自主可控与技术创新。另外两个平台也有类似同样的思考。
王辉:2019 年我们认识到数据库的改造,迁移是重要且必须的一环,未来一定有很多的需求,因此在同年开始组建团队,讨论需求、设计与研发,那个时候国产数据库引入刚开始,数据库改造并不多,也给了我们更多的时间。那个时候市场的迁移工具并不多,且对国产数据库的支持很少。
这过程中的关键部分有两大块:数据库迁移平台架构分为 monitor 和 worker 两大组件,monitor 主要是 web 页面进行迁移任务操作和日常系统管控还有任务调度能力等。worker 主要负责主要对象语法转换、数据迁移和数据校验。
遇到的技术难点就是各种字符集差异、时区差异转换,全量数据的快速同步,增量数据断点续传,数据库快速回退技术等。
王辉: 技术与业务之间的沟通障碍,导致难以理解和传达技术变革对业务的实际影响。通过建立良好的技术和业务团队之间的沟通渠道,确保彼此了解对方的需求和期望。可以组织定期的会议,交流小组或培训来加强沟通和理解。
技术变革带来人才转型,员工对变革可能存在抵触情绪,在接触新技术时需要适应和调整自己的角色和技能。一般通过提供培训和支持,帮助员工适应和接受新的工作方式,建立反馈机制,鼓励和回应员工的意见和关切。对创新标兵给与奖励以鼓舞大家的热情。
数据库迁移改造后会给业务带来性能和用户体验的提升,但也会存在一定风险,因此需要我们在上线前做好全面压力测试,同时要建立上线后的快速应急处置方案。
王辉: 在未来数字经济背景下,科技金融需要不断创新和改进。通过大数据、人工智能、生物识别、区块链等技术平台,实现数字化创新、数据驱动决策、信息安全保护的客户服务,面推进金融服务线上化、移动化、智能化,提升场景和生态对接能力,满足客户的多样化需求,为客户提供更便捷、高效、安全的金融服务。
王辉: 在国家大力发展数字化经济背景下,产业数字金融是一个重要发力方向,华夏银行未来将在金融数字化促进产业升级领域有更多布局。以产业链协作体系中的商流、物流、服务流、信息流、资金流等数字信息为基础,创新运用包括大数据、区块链、5G、物联网、隐私计算等在内的数字化技术,整合各条线金融服务,为产业链各类参与主体提供综合化的产业数字金融服务。
王辉,华夏银行数据库专家
点击底部阅读原文访问 InfoQ 官网,获取更多精彩内容!
OpenAI 遭遇离职潮:员工对 ChatGPT 进展缓慢失望,痛批 CEO 不务正业
阿里改革,P8 成为历史;GPT-4 模型架构泄露;OpenAI 面临最严调查,Altman 惊慌连发 3 推|Q 资讯
微信扫码关注该文公众号作者