作为太保运维保障级别最高的核心业务系统之一,P17 已经有 10 多年的历史。它是太保旗下的产、寿、健康、长江等所有子公司客户服务系统的整合,涵盖了太保几乎所有子公司业务的服务入口功能,包括车险报案、道路救援、寿险保全受理、投保预约等等,对接周边系统 200 多个,为公司 6 地 8 个电话中心超过 2500 个坐席提供系统服务。
“P17 核心系统的数据库升级是出于太保数字化转型战略的要求。”太保数智研究院数据库首席专家林春谈及 P17 数据库升级原因时表示。
数智研究院负责太保数字化转型战略的制订以及执行,同时还承担了卡点技术的攻坚克难,确保太保在核心技术的行业领先和技术可靠。林春是数据库方向的负责人。
林春介绍,随着太保业务的不断丰富,P17 需要支持越来越多互联网类型的业务,这些业务不仅数据量大,还有瞬时高并发的特点。同时,P17 的数据库体量已经达到 30TB,还在继续增长,面临扩缩容的问题。
当然,太保决定对 P17 的数据库进行升级还有一个更长远的考虑。P17 的数据库升级复杂,太保希望通过该项目沉淀出知识和工具,为后面太保其他系统的数据库升级积累经验,帮助太保最终实现对数据库的真正自主掌控。
太保数据库升级的策略是攻坚牵引,先难后易,先攻难的,有了经验之后,再换简单的。P17 的升级工作非常复杂而且有代表性,所以我们选了它。
被称为太保最复杂的核心业务系统之一,P17 的数据库升级到底有哪些难点? “首先,这个系统要求 7x24 小时服务,务必高可靠,而且支持高并发。比如,在一些恶劣天气情况下,可能有 2500 名坐席同时在线,需要做到秒级响应,对数据库的实时性要求很高。如果处理不好的话,可能会变成一个舆情的问题。”林春说。
当然,挑战最大的还是 P17 与 Oracle 数据库的深度绑定。林春介绍,P17 对传统集中式数据库特性使用非常深入,Oracle 数据库的所有特性几乎在这个系统中都有体现,包括自定义锁、自治事务、嵌套表、索引组织表、PLSQL 包、物化视图、DBlink、触发器、系统视图。其存储过程数量庞大,总代码量近百万行。
在真正迁移之前,需要先把这些代码找出来然后再对代码进行重写,这个工作量就不小,成本高,风险大。同时,还需要对迁移的工具和流程进行优化,因为其中有大量复杂非表对象的迁移。这个过程同样成本高,风险大。
与数据库的绑定还体现在P17集成了大量周边工具软件和应用。P17 与很多周边软件协同工作,比如 IBM Datastage、IBM Cognos 等,这些软件都利用了很多 Oracle 数据库特有的功能,更换数据库后需要对这些软件重新适配。另外,高达 30TB 的数据量也放大了上述挑战的艰巨性。
正是基于这些原因,在 P17 新数据库的选型中,对高并发、高可用的支持和对 Oracle 数据库的兼容能力成为非常重要的考量指标。同时,P17中还有一些报表和数据分析的需求,这就要求新数据库不仅需要OLTP的能力,还需要有一定的OLAP的能力。另外,厂商的技术实力一定要足够强,具有技术兜底的能力,这一点在太保看来也非常关键。