首批通过分布式安全可靠测评,为关键业务系统打造
“两中心双活”架构达国家金融行业最高等级容灾要求
- 3/4数据存储容量节省
- ≈15sRTO
- 0RPO

一、业务背景
2019 年,在浙江省政府的推动下,浙商证券联合浙江省内多家优势企业,从服务器、网络设备到操作系统、云平台、分布式数据库、中间件,建设了全技术栈的新 IT 基础设施,在证券行业中率先大规模部署国产计算集群应用。项目整体架构全面采用分布式技术和云计算技术,缓解国产服务器在单机性能与可靠性的劣势,以满足证券业务对信息系统高效稳定可靠运行的要求。其中,数据库作为信息系统的核心和基础,承载着越来越多的关键业务系统,浙商证券采用原生分布式数据库OceanBase,取得了良好效果。
二、业务挑战
- 传统数据库投入产出比愈发低下
- 浙商证券近年来业务发展良好,随着业务处理量和用户规模的逐步增长,传统数据库只能选择升级硬件设备来稳定支撑业务发展,投入产出比愈发低下;
- 中间件型数据库不能满足国家对金融安全的要求
- 中间件型数据库是传统数据库在面对高并发业务场景下发展中的过渡产品,通过分布式中间件来实现数据库的分布调度使用,一般使用 MySQL 等开源数据库,长期来看不能满足国家对金融安全的要求。
三、解决方案
- 关键业务系统“5+1”部署架构
- 浙商证券针对关键业务系统建设一套“5+1”同城双活的数据库集群,若未来在异地数据中心的网络专线带宽升级到百兆以上后,可以较容易迁移成两地三中心方案,支持三中心多活业务方案,任意一个副本出现故障,在单机房内实现切换接管,业务可快速恢复,RTO ≈ 15s,当一个主机房出现故障时,业务会切换到同城另一个主机房,此时高可用自动生效,不需要运维介入,RPO=0,RTO ≈ 15s。
- 办公等普通应用“3+1”部署架构
- 针对办公等普通应用建成“3+1”的数据库集群,以寻求在经济性和可靠性上找到平衡。在业务应用价值上,以互联网用户中心为例,该系统是在恒生 JRES 3.0 微服务框架下开发完成,是具有高扩展性、高性能的分布式架构,结合分布式数据库分区级负载均衡能力使得业务集群具备整体的可扩展性。
- 自动化运维
- 相较于传统数据库,分布式数据库提供了一个 OCP 来实现集群的安装部署、在线升级、负载查看、慢 SQL统计等,除了分布式数据库备集群的故障切换操作需要 DBA 手动操作,其余都可以通过 OCP 来实现。
四、应用场景
浙商证券选取了互联网用户中心——用户量多、吞吐量大的典型场景作为试点系统,完成对云原生分布式数据库的适配。如数据库 SQL 语句的适配,分布式数据库将 key 字段作为关键字使用,直接使用会报错,需要改写 SQL 加上‘’- 引号 ;还有分布式特性的适配,由于分布式数据库天然具备数据分区与分区多副本的特性,在出现多表关联查询时会产生跨服务器的远程 SQL 调用 , 需要按业务域的设计思维,优化数据库表设计,尽量按业务域将关联表设置到同一表分组中,避免SQL 出现跨服务器连接查询 , 提升 SQL性能。从开发到测试再到生产运行,攻关适配团队持续跟踪,有问题快速响应解决,保障了数据库适配应用与线上稳定运行。
五、客户收益
- 业务高可靠性保障
- 两中心双活架构,任意一个副本出现故障,在单机房内实现切换接管,业务层无感知,RPO=0;当一个主机房出现故障时,业务会切换到同城另一个主机房,高可用自动生效,无需运维介入,RPO=0,RTO≈15s;若两个主机房同时出现问题,也可通过备机房实现业务恢复,实现业务高可靠性保障;
- 存储空间低
- OceanBase 采用数据编码技术和行列混合存储结构实现高压缩,将业务从传统 MySQL/Oracle 改造适配到 OceanBase 中,容量大约 4:1,甚至能达到 6:1;
- 实现高效运维
- 通过 OCP 大大提升了系统运维效率。OCP 的慢 SQL 统计能力,给敏捷开发带来了方便,在 Oracle上需要 DBA 运用专门工具才能了解系统的慢 SQL,协作效率慢,现在开发人员直接通过 OCP 就能快速了解慢 SQL,提升了开发响应效率。