国产数据库的进步是显而易见的。

20年前,数据库市场的玩家,只有Oracle、IBM、微软等少数几个国外巨头;10年前,随着云计算的成长,包括阿里在内一批互联网厂商开始在数据库领域崭露头角;到今天,中国数据库市场已是百花齐放百家争鸣。数据库市场谁能笑到最后还尚未可知,但传统巨头的确已威风不再。

根据DB-Engines的调查数据显示,从2014年至今,Oracle、微软等旧数据库势力的关注度呈现波动下滑态势。中国信通院的最新数据显示,2021年全球数据库厂商有363家,其中中国有116家,占比32%。

新旧数据库势力交割背后,反映的是大时代的变迁、用户需求的变化。从信息化到数字化,数据爆炸式增长、应用多元化、效率极致化……无一不在推动底层各种技术不断演进,体现在数据库身上,就两个关键词,集中和分布。

开启数据库的新时代

回溯数据库的发展史,先是几十年的集中式,后是十几年的集中式与分布式互掐,而现在到了一个新的发展时期,标志就是11月3日,2022云栖大会,OceanBase 社区版4.0正式上线,成为业内首个兼容MySQL的单机分布式一体化数据库

单机可以简单理解为传统数据库,如Oracle、IBM之流,分布式毋庸置疑就是近年来大力发展的各类分布式数据库。十多年的争执不下,充分说明集中和分布各有优势,各有适合的场景。既然事实已经证明共存是未来,那最好的方式显然不是让用户部署多套系统,“一体化”由此而来。

事实上,市场上有不少数据库公司在做类似的事情,最常见的提法是一套架构同时满足OLTP和OLAP的需求(稍微扩展一下,OLTP是旧势力的主要战场,OLAP是新势力的重要领地),有一体化的意思,但不够全面。

OceanBase认为的“单机分布式一体化”要满足两个硬性条件:架构上,要兼具分布式数据库的可扩展性与集中式数据库的功能和单机性能;产品上,需要满足大企业、中小型公司乃至初创团队在各自不同发展阶段对数据库的不同需求。

一体化看起来不难,从一个节点随着需要扩展到多个节点,但实现起来有很多门槛需要突破。

OceanBase4.0带来的全新可能

简单说说OceanBase 4.0是如何做到真正融合的。从单节点到多节点,最难的是什么?其实就是通信问题。数据库四大要素ACID,即原子性、一致性、隔离性和持久性,I和D无论是单机还是分布式都比较容易做到,但是对于A和C,分布式数据库实现就有一定难度了。

单机相当于把数据存放在某一个节点里,而分布式是把数据打散了按照一定的顺序放置于不同的节点里,当数据量非常大的时候,光是保证数据的完整性就非常困难了,更别提还要顾及效率。如果还要满足从单机平滑过渡到分布式,可以说是难上加难,系统必须要能够随着节点的增加自动同步相应的信息。

OceanBase 4.0为了实现单机分布式一体化,引入了“自适应日志流”。自适应日志流是一种融合了服务器级静态日志流(典型代表如 MySQL、PostgreSQL)与分区级静态日志流(典型代表如 CockroachDB)的方案:当系统处于稳定状态时,每台服务器的日志流数量是固定的,但发生迁移时这个对应关系会改变,支持将一个分区从一个日志流迁移到另外一个日志流,从而实现在线水平扩展。

更值得一提的是,OceanBase 4.0在实现在线水平扩展的同时,并不增加分布式相关 overhead,减少消耗意味着能将更多的资源用于性能的提升上,带来的直接好处是,OceanBase 4.0单机性能媲美甚至超越传统集中式数据库,而且能支持更小的部署规格,满足更小规模企业的需求。据悉,OceanBase 4.0最小部署规格仅为测试环境4C8G,生产环境4C16G,且未来还可能进一步降低。

说完了小,再往大看。

先上第一组数据,同等硬件环境下,OceanBase社区版4.0 的OLTP性能是MySQL企业版8.0的1.9倍,OLAP性能是Greenplum 6.22.1的5至6倍。

sysbench 反映单机TP性能,TPC-H 体现AP性能,OceanBase 4.0都有不俗表现。

再上第二组数据,OceanBase以7.07亿tpmC的性能数据位居TPC-C在线交易处理 Benchmark 的性能第一,以超过1526万QphH的性能数据位居TPC-H分析查询Benchmark 30000GB场景的性能第三。

如果把4C8G理解为OceanBase能够满足中小企业及场景的小规格能力,那7.07亿tpmC和超过1526万QphH就可以理解为其向上能够支撑大型企业需求的能力。

换句话说,无论是多小,抑或是多大,不管是分布式多机,还是单机,不论是OLTP核心业务,或者OLAP实时分析,OceanBase 4.0都能满足。

除了上述着重提到的架构和性能,OceanBase 4.0还有一些重要提升,这里简单罗列一下做个了解:

架构升级与受益:支持单机分布式一体化架构,包含自适应日志流、支持超大事务、RTO 时间降低到 8s 以内、NTP 服务依赖优化、支持分区数量能力上限等版本基础核心能力构建。

内核能力增强:Online DDL 能力增强,支持租户级备份,字符集扩展,支持数据编码,支持 IOPS 隔离,LOB 规格上限扩展,支持表锁和死锁检测等。

兼容性增强:支持 DDL 语句的外键约束,支持视图列信息展示,支持 DML 触发器,支持更多 SQL MODE 和函数等。扩展支持 SEQUENCE 对象,支持存储程序,支持 SQL 文本中的预处理,支持自增列做为分区键。

性能大幅提升:SYSBENCH 性能优化,综合读写性能(Read Write)1024 并发测试性能相比于 V3.1 版本提升 1 倍。TPCH 查询性能优化,100GB 数据量顺序执行 22 条 SQL,整体性能相比于 V3.1 版本提升 5 倍。

运维能力提升:支持全链路追踪,支持 SESSION 状态的监控和诊断(ASH),标准化视图优化,支持 Schema History 回收功能,支持自动清空回收站功能等。

另外,全托管的OceanBase Cloud 也已经开放 4.0 邀测。4.0公有云支持小规格,从4C16G到62C400G提供更多规格选择。

OceanBase不是一天炼成的

截至当前,OceanBase已获授权发明专利超350项,软件著作权19项,发表论文40余篇,主导和参与国家/行业/团体标准25项,出版中文专著1部。

OceanBase不仅已承担了蚂蚁集团的全部核心业务,更在工商银行、山东移动、中国石化、江西人社等400多家客户的核心系统得到部署应用,广泛覆盖政务、金融、通信、能源等多个核心支柱领域。

Gartner发布的白皮书《原生分布式数据库引领数据管理技术发展趋势》也指出,原生分布式数据库以其诸多特性,正引领数据库管理技术发展趋势。以OceanBase为代表的国产原生分布式数据库已经深入各行各业,成为企业核心系统升级的首选。

在刚刚结束的2022世界互联网上,OceanBase从世界各国的近300项优秀成果中脱颖而出,荣获领先科技成果奖。这也是蚂蚁集团连续两年,历年来第三次入选世界互联网领先科技成果。

种种迹象都在说明OceanBase今天的成绩,但知道其中心路历程的又少之又少。一步一个脚印,到今天10年有余,有过曲折、有过质疑,但OceanBase走过来了。

未来,随着数字化进程的不断加速,OceanBase必将在更广阔的舞台施展自己的抱负,为更多的企业带去价值