跨地域多中心部署
某省核心账务库案例
通信行业核心业务系统已经与某款国外成熟商业数据库深度捆绑多年,为改变这一现状,实现数据库“自主可控”的目标,某省经过多轮调研选型与评测最终选择AntDB分布式内存数据库进行核心产生系统账务库的国产化替代。
建设前该省核心数据库主要存在的问题在于:
- 性能瓶颈:由于连接数限制、磁盘操作等特性,月初月末出账大批量并发的场景下性能出现瓶颈,批量操作实施滞后,前台、渠道访问出现明显延时情况,极大的影响客户体验与生产运营。
扩展瓶颈:国外某款成熟数据库产品采用RAC机制实现横向扩展,RAC节点过多会导致RAC争用,过多的RAC争用最终导致性能急剧下降,影响外围应用系统的体验。
通过对现有生产库的梳理,最终将替换范围选定在账务库数据,整个替换过程涉及400+存储过程,340个自定义函数, 11万+表对象,总数据量约6.5T。扩大AntDB分布式内存数据库的使用范围,解决数据库连接数瓶颈同时完成国产数据库在核心支撑系统内的应用试点。新的内存数据库集群具备平滑扩展、同构数据库数据同步、数据备份、备份恢复、高可用及容灾、高性能高吞吐等关键能力。
因此该省决定扩大分布式关系型内存数据库使用范围,解决数据库连接数瓶颈同时完成国产数据库在核心支撑系统内的应用试点。本次建设的涉及到的应用范围如下图:
图中在核心生产系统的数据库替换范围包括了核心的营业库、开通库、产商品库、账务库等,通过部署分布式集群的方式替换国外同类产品。
本期国产数据替代项目建设目标:
- 月承载出账用户:2600万。
- 日交易次数:百亿。
- 月交易次数:千亿。
- 主备副本接管:秒级。
- 容灾接管:秒级。
- 交易最大吞吐量:60万笔/秒。
最大话单处理量:30万条/秒。
不可否认,数据库的国产化替代工程量是浩大的,期间涉及40+核心模块,上千接口的适配改造,历时近一年完成。并完成了多中心容灾架构部署,如下图展示:
图中展示的多中心部署架构,一套三副本三中心生产环境(24台数据节点服务器,3台管理节点服务器):中心1主备2套副本(18台: 16台数据节点服务器,2台管理节点服务器);中心2容灾副本(9台:8台数据节点服务器,1台管理节点服务器);中心3容灾副本(9台:8台数据节点服务器,1台管理节点服务器)。
AntDB分布式内存数据库上线后,业务视角最终数据证明,在关键业务流程耗时、峰值关键业务接口响应时延等指标都达到国外同类产品水平,在部分指标如连接数限制数据更是又数十倍的提升。其他具体的建设成果如下:
- 通过宕机、网络异常和存储异常的场景,切换耗时都控制在60秒以内。高业务压力背景下宕机业务影响在120秒内,全部符合预期结果。证明了AntDB分布式内存数据库具备优秀的高可用能力。
- 抽选生产调用频率最高的8个接口设置混合比例场景,同等生产压力下性能平均提升10%。
- 通过数据治理,账务库表生命周期及应用配套调整,历史数据迁移等操作,账务库4域整体表空间下降52%。
- 系统负荷下降33% 以上,发挥AntDB分布式内存数据库的优势,有效支撑低时延、高并发场景下的高频交易业务。
- 核心账务库强业务关联数据库(用户资料、资金、账单、免费资源)国产化,减少70%的国外同类产品的使用率。
- 实现CRM域多元化数据存储模式,并取得成功,为CRM域后续进一步全面国产化打下了坚实基础。
- 整个核心数据库集群具备了水平扩展能力,通过生产环境实际操作,7分片扩展到8分片可以在数小时内完成,并且可以做到扩展期间应用无感。