前言:
袋鼠云是国内领先的数据智能践行者。袋鼠云的数据库团队核心成员来自淘宝,曾参与主导过阿里巴巴"去IOE"的架构演进,对大规模分布式数据库架构设计与实践有着丰富的经验,曾服务过特步、中航金网、国泰产险、东风裕隆、浙江智慧网络医院、绿城信息等行业客户,是阿里云生态中数据库技术领域的技术领先者。
项目背景:
某传统金融平台在23年的业务快速发展过程中,众多IT系统垂直建设,不同系统之间存在复杂多样的关联性关系,核心业务系统既需要保证极高的可用性,又要为业务创新和发展做好技术架构准备,面临着IT时代被IOE架构困扰已久的"稳定-创新"经典困局。
如何做好企业架构治理、为业务灵活创新做好技术基础,提升应用开发速度、投入产出效率,降低运维难度,将严峻挑战转化为创新驱动力,完成从IT到DT成功进行数字化转型呢?
为充分利用高并发、高灵活、高可用的互联网平台优势,提升在线服务性能,该货币服务平台选择使用了阿里云EDAS中间件、DRDS分布式数据库、MySQL服务。
在向互联网级分布式架构转型中,涉及到的数据库架构设计和改造实施内容,该货币服务平台通过阿里云市场找到了--阿里云生态合作伙伴袋鼠云实施完成。
搭建过程:
据了解,该传统金融平台每次功能变更都需要重新发布整个系统,系统耦合度高。
结合平台庞大的业务体系,袋鼠云和客户决定对其数据库进行先垂直后水平的拆分改造,后端数据库技术架构如下:
难点一:如何进行数据库拆分设计以适应满足复杂业务需求?
由于该传统金融平台的业务体系过于庞杂,第一要务是对整个应用系统进行业务模块的梳理和拆解。在调研初期,袋鼠云为该平台客户梳理出三大垂直的业务系统,目的是进行应用的功能剥离及数据解耦,并以业务模块为基准,对其数据库进行垂直拆分设计。
垂直拆分后,数据层在存储以及性能方面已经做到隔离,但十多年的业务积累,导致部分业务表数据量已经超过数千万条记录。为了提高单表的查询性能,以及解决单库存储容量问题,接下来需要基于DRDS对部分表进行水平拆分。在客户现场,进行反复调研及沟通,逐个分析各个业务的查询场景以及数据存储规律,和客户共同制订出针对大表的水平拆分方案,这个过程也称之为"分库分表"。
该传统金融平台的数据库垂直拆分架构大致如下:
通过DRDS将若干大表进行水平拆分,大致如下: 难点二:针对复杂业务逻辑,袋鼠云为其定制数据迁移程序
该传统金融平台隶属于国家级金融机构。任何一条数据的不准确、延迟、丢失,都将影响中国金融市场的稳定和健康发展。
所以,这就要求在拆分迁移过程中,还要对接收到的来自不同上游的数据进行计算和准确性校验。校验的精细度要求是:每条数据都需要验证,而且迁移过程是一次全量多次增量,数据迁移,数据验证,数据又迁移,数据再验证,如此循环往复,需要投入大量时间和人力。
针对该传统金融平台复杂的业务逻辑,以及对数据高完整性的需求,袋鼠云为客户定制化迁移程序,进行DB2数据库到DRDS的数据迁移工作。深入理解客户的业务逻辑并完成数据重组,期间不断聆听客户的业务需求,最终通过严格的多阶段数据验证考验。数据迁移过程如下: 难点三:为满足金融平台的高性能要求,SQL优化、压测、再优化,进行了8轮...
客户平台原采用的DB2数据库,有很多复杂SQL,对数据库带来一定负担。同时,还有数据库存储过程、视图等高级功能的使用,SQL书写不规范,表未建索引....大量的SQL需要袋鼠云数据库专家进行逐行审核,并和客户工作人员一起优化、压测、再优化、再压测、再再...,如此进行了8轮。除了常规的优化手段外,还需要对传统应用进行改造,如拆解查询、逻辑上拉至应用层、业务功能适度妥协等,最终完成对客户不同场景下的查询优化,最大程度提升了客户系统的性能。
并且在后端的数据库节点上,袋鼠云数据库团队基于DRDS设计读写分离的架构,利用只读实例分担主库的数据查询压力,配合EDAS的限流功能,避免了后端数据库在业务高峰期的流量冲击。
最后:
通过采用分布式数据库架构,该传统金融平台全链路数据库瓶颈得以解决,对数据解耦,缩短数据访问链条长度,显著提升了自身数据服务性能。
从DB2到MySQL、DRDS,该传统金融平台完成了自身互联网转型的一大步。
现袋鼠云旗下产品均入驻阿里云企业服务第一平台——云市场,帮助更多的企业完成转型第一步!目前袋鼠云已服务云市场近万用户群体,云市场也为用户提供"不满意退款"、"全程担保交易"、"软件交付全程监管"、"6道关卡筛选优质商家与商品"等四个100%承诺,让用户消费无忧,这也是我们给予客户的承诺。
进入袋鼠云官方店铺,寻找您所需要的商品。