首批通过分布式安全可靠测评,为关键业务系统打造
证券行业首个基于自研分布式数据库的核心估值系统
- 0RPO
- 1/10跑批时间仅为原系统的
- 秒级租户资源交付达
一、业务背景
随着信息技术应用创新试点范围不断扩大,能否胜任更多业务场景,是各行各业当前阶段选型数据库的关键。早在2019年,广发证券即开启对分布式架构的数据库产品进行调研,并经历了单主从读写分离、多套单机主从的分库分表,以及原生分布式数据库等不同的产品形态。
2021年底,广发证券通过估值系统应用架构分布式升级,同时使用OceanBase原生分布式数据库,落地证券行业首个信创估值系统。新一代估值系统为长期业务增长打下坚实基础,同时对行业内估值系统的全面信创改造起到借鉴和推动作用。
二、业务挑战
- 当前系统的性能瓶颈
- 证券行业核心的两类场景分别是集中撮合交易与估值核算处理。由于单体架构先天限制,在容量和性能遇到瓶颈时无法横向动态扩容,制约了这两类场景中系统的整体处理能力。随着业务发展,广发证券估值系统旧有的单体架构和强依赖于Oracle特性的计算服务,在清算、核算批量执行时CPU已经接近满负荷,单纯依赖提高服务器配置已经无法较好满足业务发展需要,必须从系统整体架构上进行升级改造。
- 分布式数据库落地遇挑战
- 引入原生分布式数据库,需要延续证券行业一贯的灾备规范以及使用习惯,如周末的交易系统生产转测试。分布式数据库天然能够消除机房内单点故障,然而,基于多数派共识的高可用方案也天然与“双机房”、弱网络机房有一定的矛盾。
三、解决方案
- 原生分布式架构
- OceanBase本身是一个分布式形态的数据库,具备全局统一的视角,能够掌控节点间的数据分布,在此基础上,具备了表组(TableGroup)、生成复杂执行计划以及存储过程等能力,使其能够更好支撑复杂的单体应用。
- 基于多租户能力的DBaaS体系
- 本次新一代估值系统引入原生分布式数据库,给广发证券带来了基于多租户能力的DBaaS体系,即在一套数据库集群内,秒级交付逻辑隔离的数据库资源,快速响应业务对数据库的使用需求,并且租户规格可在线灵活调整,应对不同等级、不同规模的业务系统数据库资源整合。
- 微服务改造
- 新一代估值系统整体采用微服务技术平台开发,通过以下的改造优化,充分发挥分布式架构的横向能力,实现系统性能整体提升,在大数据量的环境下,大幅降低批处理时间,提高向基金管理人提供估值核算数据的及时性。
- 一是“化整为零”,将原有系统中的大事务分拆为小事务,并实现数据批处理内存化。通过拆解大事务,尤其是拆解大数据量的DML语句,确保系统可以并行处理。同时,将原有复杂的数据库SQL逻辑,通过数据加载到内存中处理,利用内存低延时的特点,大幅提升处理效率。
- 二是“分而治之”,通过优化表结构设计,使得数据便于分库、分表、分片;优化程序设计,结合单元化的思想,将参数依赖、服务依赖等外部依赖分解,优化处理流程,提升并行效率。
- 三是“化繁为简”,通过简化业务逻辑,适应分布式数据库的特点,通过“异步化+定时校对+补偿”的柔性事务设计,减少甚至避免产生分布式事务,提升系统处理的吞吐量。四是“借力使力”,发挥分布式数据库自身的能力,如分区、表组等特性,多管齐下,降低系统架构优化的设计难度和开发难度,提升研发效率。
- 新一代估值系统整体采用微服务技术平台开发,通过以下的改造优化,充分发挥分布式架构的横向能力,实现系统性能整体提升,在大数据量的环境下,大幅降低批处理时间,提高向基金管理人提供估值核算数据的及时性。
四、应用场景
- 估值系统
- 全场景清算批处理业务,业务品种包括沪深股票、港股通、股转、回购、期货、债券、沪深场内投资基金。通过分布式数据库自身的能力,结合分区、表组等特性,在大数据量的环境下,有效降低了广发证券估值系统的批处理时间,整体跑批时间由1小时缩短为6分钟,这也让广发证券的业务系统能够以更低的改造成本向分布式架构转型。
- 其他管理类系统
- 依靠良好的Oracle兼容性,以较低的开发适配成本,投产上线,稳定运行。
五、客户收益
广发证券此次估值系统国产升级试点是全功能完整试点,实现了一套系统对全产品类型的估值核算的统一化管理,支持多市场、多品种、多币种核算,同时实现自动估值服务,全面提升估值核算的自动化水平和整体运营效率,提升基金运营业务的核心竞争力。需要强调的是,该项目真正验证了信息技术应用创新产业加速核心业务系统升级的可行性,为解决我国技术瓶颈问题,新增了一条行之有效的实践路径。
- 高可用保障
- 从原 Oracle DataGuard 主备库,升级至具备机房内灾备自动切换能力,实现 RPO=0,RTO<30S,并满足每季度机房切换演练的监管要求;
- 性能显著提升
- 分区表+TableGroup解决高并发批处理的性能问题,热点表分区打散后,跑批时间由小时级别下降到分钟级别,在数据量比原系统高一倍的情况下,跑批时间由1小时缩短为6分钟,提高了估值核算数据的及时性。
- 运维效率提升
- 原生多租户能力实现的 DBaaS 体系落地,在一套集群内秒级交付生产架构标准的 Oracle/MySQL 租户,统一运维管理,大幅提升运维效率。
- 树立IT架构转型的典范工程
- 新一代估值系统应用层采用分布式架构设计,使用微服务技术开发,实现系统的横向弹性扩容能力,应对交易请求高峰低谷特征明显的证券业务;在数据持久化方面,通过原生分布式数据库,实现数据读写分离、分库分表、弹性扩展,多副本冗余的能力。通过一些列的改造和优化,解决了旧系统的单点瓶颈和对数据库特性的强依赖,使得系统具备了高性能、高容量、高可靠的特点。