基于湖库一体架构,统一管理结构化、半结构化与非结构化等多模态数据,一个系统承载事务处理、实时分析与 AI 工作负载。
数据库作为信息社会的重要基础软件,承载着关系国计民生的重要数据,数据库的安全稳定极其重要。但长久以来,重要行业的核心数据库一直使用传统的集中式数据库,给数据安全带来了诸多挑战。通过 OceanBase 原生分布式数据库承载多套业务系统,郑商所成为国内首家完成生产环境分布式数据库上线的期货交易所,并基于全栈自主可控软硬件基础设施逐步完成 IT 架构分布式升级。
▍ 开发方面
分布式数据库在兼容性方面需要尽量兼容传统数据库(Oracle/MySQL)。业务从 Oracle/MySQL 迁移至分布式数据库时,需要尽可能地减少业务SQL改造,降低业务开发的学习和分析成本。兼容性还包含数据库访问驱动接口的兼容(如 JDBC、OCI 等)。除兼容复杂 SQL 外,性能方面也不能有问题。分布式数据库要能证明自己在复杂业务场景和复杂 SQL 方面的性能。
▍ 业务方面
在迁移至分布式数据库时,存量数据也需要迁移,且迁移过程必须在线,而且还要保证迁移数据的正确性和时效性。郑商所的期货交易业务覆盖全球,业务允许的割接停机时间非常短,业务的服务需求需要保证 SLA,数据库的可用性也必须做到在业务的 SLA 范围以内。
▍ 运维方面
分布式数据库多是 Shared-Nothing 架构,部署在普通的商用服务器上。相比传统小机存储,会给运维带来两个难题:一是数据库服务器的数量会比较大,二是数据库服务器的可用性没有小机那么高(即服务器故障率相对高一些)。因此,运维管理分布式数据库的工作量可能会增加,并且分布式数据库的故障率可能会相对比较高。这就对分布式数据库的运维提出更高的要求——规模化、自动化;也给分布式数据库的稳定性提出更高的要求——高可用、不丢数据;同时,分布式数据库的扩容缩容操作要求能在线进行,并且尽可能自动化。
郑商所在行业内率先在生产系统上线分布式数据库 OceanBase 集群,验证了 WEB 服务类和 C++ 语言模式下的高性能应用系统的数据库迁移路线,并且充分利用分布式数据库的技术特点,提升数据库的容灾备份能力,并简化了变更升级操作流程,真正享受微服务架构带来的便利,提升系统连续服务能力。