为落实集团自主可控战略要求,广东移动信息系统部在新一代项目建设始终把自主可控作为重要建设原则,在了新一代结算中心建设中引入磐维数据库,先后攻克了数据库兼容性、性能等问题,完成结算中心应用与磐维数据库适配改造和测试,结算中心磐维数据库已于10月实现并行。

广东移动结算中心是中国移动新一代数智云原生项目基线系统之一,结算中心接收采集下发的话单,对话单进行分拣、预处理、格式化、场景匹配、批价累账、出账等,出账数据给到报表中心统计和展示;提供结算保障管理能力,主要包括对账、错单回收重处理等;接入外部提供的局数据资料,对资料数据进行维护管理。基于广东移动用户数大,结算中心日均处理话单量90亿条以上,现网采用Oracle数据库。按照新一代项目自主可控的建设原则要求,结算中心将采用集中式磐维数据库替换Oracle数据库。

技术方案
结算中心存在业务复杂、计费结算话单处理量大等特点,如果采用分布式数据库,需要对应用进行分库分表改造,将带来开发周期长,实施风险高,设备需求大等问题,经广东移动和磐维团队深入分析讨论,决定建设一套由4套内存库(主备双机)和1套集中式磐维库(一主两备共3台服务器)构成的数据库资源池,其中内存库主要承载计费结算话单批价及日累账功能,物理库主要承载计费结算话单月累账及其他功能。该架构方案可以发挥内存库和磐维库的技术特点,既可以均衡承载计费结算业务压力,又极大节省资源投入。
结算中心适配磐维数据库过程中,遇到异构数据迁移、结算话单量大导致数据库性能瓶颈、C/C++接口对接适配等问题,广东移动和磐维团队在集团信息技术中心指导下,实施了多项优化措施,最终顺利的解决了相关问题,确保结算中心磐维数据库按计划实现上线。
✦
通过引入中间库实现结算中心新旧异构数据库数据平滑迁移
在结算中心新旧数据库之间引入中间库,先将结算中心旧Oracle库数据全量初始化迁移至中间库后,旧库更新数据通过旧库同步工具实时同步到中间缓冲数据库,并在中间库实时进行事务拆分、数据转换、目标数据提取等操作后,通过新库同步工具实时同步到目标库。
✦
通过“事前静态分析+事中迭代验证”完善磐维数据库实现C/C++程序对接
为保障计费结算话单处理性能,结算中心主要采用C/C++程序编码,对接磐维数据库是上线前需解决的问题之一,为减少应用适配工作量和复杂度,经广东移动和磐维团队对结算中心对接需求和磐维数据库已有接口能力深入分析,通过多维分析识别兼容性差异,并采取数据库适配改造或应用适配的策略,以最小成本和最佳业务满足度实现结算中心应用与磐维数据库的顺利对接。
✦
通过建立内存库磐维库分级处理话单机制满足计费结算话单量大、高并发场景需求
结算中心话单处理量大,将导致磐维数据库出现性能瓶颈问题,通过优化应用架构,建设磐维数据库和内存转写结合的分级数据处理新体系,使得对磐维数据库的QPS需求下降了80%以上,大幅降低了对磐维数据库的访问量,提高了资源利用效率,进而提升了整个结算系统的处理效率和性能。
✦

项目成果
自磐维数据库投入使用以来,广东移动结算中心在解决结算生产、运营和管理中的实际问题时,展现出了极高的实用性和有效性,例如:通过数据迁移技术优化,使结算中心数据迁移周期从原来的3天左右缩短至10小时内,数据的完整性和准确性得到了有效保障;通过基于建立磐维库的分级数据处理体系,使得结算中心磐维数据库可承载广东日均90亿条计费话单的采集分拣和结算处理,以及日均2000万条账单的累账出账等生产工作,助力结算效率提升20%以上。
磐维数据库的引入,极大的提升了结算中心的运行效能,为一线生产、运营和管理人员提供了更加可靠和高效的数据支持。