10月2日,70年大庆的放假期间,国际权威的性能测试机构TPC(TransactionProcessing Performance Council,事务处理性能委员会)发布了最新的TPC-C性能测试结果排名(TPC-C - All Results - Sortedby Performance Version 5 Results)。
在这个最新排名中,名列第一的是阿里巴巴蚂蚁金服集团提交并经过TPC严格审计的测试结果。
TPC-C性能测试排名表(节选示例)
数据来源:TPC官方网站
随后,众多媒体发布了“中国自研数据库创造新的世界纪录“、“蚂蚁自研数据库OceanBase拿下世界第一”、“OceanBase性能超老牌数据库Oracle 100%”等类似报道。
众多报道都配了一张醒目的喜报(见下图),并辅以了中国工程院李国杰院士的评价。李国杰表示,OceanBase打破了由甲骨文保持了9年之久的TPC-C基准性能测试的世界纪录,“是我国基础软件取得的重大突破”。
这些报道在业界引起轩然大波,虽然是国庆假期,但仍然引发了业内人士的热烈讨论。
过度营销引来骂声一片
我综合了一下众多数据库专业人员的观点,共识性主流看法有三个:第一,OceanBase是在TPC-C最新公布的结果排名名列第一,其产品技术有了巨大进步,可喜可贺;第二,这个第一排名并不能代表OceanBase超过了Oracle,因为Oracle的测试结果是九年前,即2010年的,它并不代表Oracle的最新能力;第三,OceanBase过度炒作了。
这三个观点我是非常赞成的,也是客观的。
但觉得不公平的是,现在在笔者参与到的各个专业群里,各种专业人士的讨论里,焦点主要集中在第三点,即异口同声地讨伐蚂蚁金服的投机取巧、哗众取宠、过度炒作。
总之,OceanBase在此次通过TPC-C测试并排名第一,代表国产数据库取得了来之不易的巨大进步的正面影响几乎被这种批评所覆盖。
要批OceanBase但更要批TPC
其实,OceanBase这次在TPC-C性能测试排名第一,是个客观事实,据此夸大一点可以说是“世界第一“,或者破了纪录。因为这是TPC-C在所有经他们审计的性能测试结果中客观的排名,并没有造假等本质问题。
当然,由这个排名只能证明OceanBase在性能上超过了九年前Oracle的测试结果,但并不能证明OceanBase在性能上超过了当今的Oracle。
但我要表达的是,这同样也不能证明当今的Oracle就一定比OceanBase性能优秀。也即是说,OceanBase存在超过当今Oracle性能的可能性。
如果Oracle不服,Oracle完全可以提交一个新的测试结果,并交由TPC审计通过。大家通过统一的测试规范进行公开比拼。
我想说的是,Oracle敢约吗?我非常期待这样的公开竞赛。
另外,我想说的是,这次公布最新测试结果排名是TPC运营的高明之处。OceanBase炒作的背后与他们脱不了干系。
为什么Oracle九年前创造的纪录一直没有新的突破?原因要么是Oracle或IBM或其他厂商九年来一直没有进步,在性能上没有取得任何突破;要么是TPC运营存在问题,业界主流厂商对TPC-C性能测试排名不再有兴趣,不愿意参与。
显然,第二种原因更为可能。
但此次OceanBase的参与一下子又让TPC-C测试送到了国人面前,并再次引起了整个产业界的关注。
也许,就这一次测试结果的公布,能让已开始不受主流厂商待见的TPC-C测试再次火起来。
OceanBase的成功还有两大挑战
因此,对于此次TPC-C测试结果,除去过度炒作之外,我还是认为OceanBase值得点赞。
首先,这是在所有参与TPC-C测试的厂商中,OceanBase改变了之前高性能测试结果都是采用专用集中式存储设备和管理软件的实现方式,以完全分布式的软件架构实现了这一成果。
第二,此次TPC-C测试结果是在阿里云标准云资源支持下实现的。这也是历史上TPC-C测试中创新性的进展。
第三,以人大金仓、达梦、南大通用等为代表的国产数据库经过了多年的发展,虽有很大长进,但一直被认为三大基础软件中最薄弱的环节,始终无法取代以Oracle为代表的等国外数据库,也始终没有在国际权威的测试中取得过一些亮眼的成绩。因此,OceanBase参与了TPC-C测试,也是国产数据库在国际竞技舞台上的首次公开比武。就凭这份参与的勇气,以及要为此付出的努力和成本,就足以使OceanBase让业界刮目相看。更何况OceanBase的测试结果表明,它至少已达到Oracle九年前的水平。这也已大大缩短国产数据库与国际顶级水平的差距。
虽然如此,OceanBase在走向成功的道路仍然有两大挑战。
第一,产品化还远不够。一方面,OceanBase在非阿里巴巴集团的应用案例还是太少,其产品化的磨炼还不够;另一方面,OceanBase在产品化的相关准备也还是远远不够。例如,在蚂蚁金服的官方网站上,OceanBase的相关资料非常少,甚至连产品介绍的文档我都没有发现。(说实话,我觉得蚂蚁金服的官方网站做得太差了,和他们的国际声誉简直太不匹配了。)
第二,生态系统还没有形成。OceanBase目前主要是支撑阿里巴巴集团自身的应用,它的应用开发伙伴还比较少。而应用开发伙伴是一个数据库产品能否取得成功的关键所在。
不仅OceanBase在产品化、生态系统方面还需要大量创新性的努力,而且还面临的一个阿里巴巴的内部挑战,即它与阿里云自己开发的数据库PolarDB如何区别发展。PolarDB虽然没有进行TPC-C测试,还不能断定自己的实力,但他拥有阿里云整个生态的支持,并且能在阿里云直接销售,OceanBase则没有。或许,PolarDB最终要战胜OceanBase。
本文已标注来源和出处,版权归原作者所有,如有侵权,请联系我们。