中国数据库告别卡脖子:阿里再刷新全球纪录,代码100%自研

晶少 雷刚 发自 凹非寺
量子位 报道 | 公众号 QbitAI

中国自研OceanBase数据库,又刷新了世界纪录。

时隔七月,再次在TPC-C公开证明实力。

但这一次,不只是新晋霸主地位的巩固,也不止于打破业界尘封9年世界纪录后的新里程碑……

更是技术性能benchmark、底层基础自主研发,以及全球标准话语权的关键事件。

很多年后回溯起来,这还可能是两个时代的分水岭。

数据库操作系统芯片,科技产业和数字化经济中三大当之无愧的底座技术,之前无一项主动权掌握在中国手中。

现在,阿里巴巴、支付宝,十年之功、20万亿行代码之力——在数据库领域,打破全球纪录的7个月后,再次创造了新的标准线。

中国数据库告别卡脖子:阿里再刷新全球纪录,二十万亿行代码自研

究竟是怎样的成就?

去年十一,我们就报道过,阿里自主研发的金融级分布式关系数据库OceanBase,在国际事务处理性能委员会(TPC)的TPC-C基准测试中登上榜首。

这一成绩还打破了由美国公司甲骨文(Oracle)保持了9年之久的世界记录,成为首个登顶该榜单的中国数据库产品。

中国工程院院士、计算机专家李国杰都盛赞说:“这是中国基础软件取得的重大突破。”

如今,7个月后,纪录再度被刷新。

中国数据库告别卡脖子:阿里再刷新全球纪录,二十万亿行代码自研

OceanBase不仅打破了去年自己保持的世界纪录,性能分数首次突破7.07亿,相比去年大幅提升近11倍。

而且这一次还是扩展能力的展现,在分布式架构下使用超过1500个节点的数据库集群,最终实现了整体性能的大幅提升——这在传统的集中式数据库是无法想象的。

更重要的是,在产业领域,分布式数据库解决了传统数据库几十年的难题,标志着数据库行业迎来了新一轮技术变革。

中国数据库告别卡脖子:阿里再刷新全球纪录,二十万亿行代码自研
中国数据库告别卡脖子:阿里再刷新全球纪录,二十万亿行代码自研

TPC-C,被誉为“数据库领域的世界杯”。

是全球主流计算机硬件厂商、数据库厂商公认的性能评价标准,其对数据库系统的软硬件协同能力要求极高。

也是全球目前最具公信力的联机交易处理(OLTP)数据库的功能与性能结合的测试标准,金融、电信、政府等关键领域的客户,一般参照 TPC-C 结果来衡量各个数据库厂商的事务处理能力。

更直接来说,TPC-C的测试就是数据库产品真实实力的最佳公开证明。

具体到测试本身,主要涵盖两大方向,分别是基本属性压力性能

在模拟真实交易环境并考察数据库基本性能的需求下,要求连续运行至少2小时,通过每分钟创建新订单数量来评价数据库的性能和性价比,规定测试任务需要在指定时间内完成,95%事务在1s内完成。

所以一款商业数据库想要向业界证明自身实力,TPC-C测试,绝对是一项硬指标。

然而,TPC-C排行榜长期被甲骨文、IBM和微软等传统数据库和硬件厂商占据……

中国自研品牌的身影,从未出现过。

直到2019年9月,阿里一鸣惊人,打破甲骨文长达9年的霸榜垄断。

中国数据库告别卡脖子:阿里再刷新全球纪录,二十万亿行代码自研

然而当是时,虽然成绩超第一名甲骨文纪录两倍有余,但外界依然有不少质疑的声音,且认为“蹭”了硬件红利。

于是这一次,时隔7个月再战——硬件基本无变化,要的就是技术架构和软件实力的证明。

所以也有外界评价说:「再无敌手,独孤求败」。

但参与此次“证明”的阿里工程师表示:这个评价听起来太狂了。

不过也认同,在数据库领域,技术架构的优越和领先,确实短时间内是很难超越的。

阿里凭什么?

这一次,OceanBase在测试压力性能时被要求连续运行至少八小时,1500多个数据库节点以及5000多万个仓库与对应数量的客户端参与其中,过程中上下抖动情况不超过1%。

以最苛刻的方式,无压力通过了该测试,而且短时间内,别人再以同样标准通过测试,几无可能。

OceanBase总经理杨冰,阿里连续两次刷榜的带头人。

中国数据库告别卡脖子:阿里再刷新全球纪录,二十万亿行代码自研

他分享了OceanBase取胜的核心原因:

分布式整体系统可用性的技术创新。

即不用担心高额的软硬件投入来保障扩展性能所造成的杯水车薪,又可搞定节点故障无法使用主备镜像技术等问题。

以此为出发点,OceanBase大胆采用了Paxos分布式一致性协议,作为整个分布式数据库中最核心的技术之一。

OceanBase创始人阳振坤坦言,无论是主备库数据不一致还是分布式事务的技术缺陷,根本原因都在于关系型数据库自身软件高可用性的缺失,仅仅通过堆砌硬件红利来解决问题显然是治标不治本的做法;而OceanBase则是从数据库内部入手将问题解决。

当然,经过首次冲击TPC-C测试成功再到二次震撼TPC-C并满载而归,期间OceanBase技术团队也做了很多重要的优化升级工作。

例如提供兼容Oracle的租户模式并支持兼容PL/SQL的存储过程;实践分布式并行查询的新执行引擎帮助更好支持TPC-H这类场景测试,更快走向混合负载等。

关于兼容Oracle的工作难点,杨冰强调OceanBase团队的目标是打算用两年时间做到业务的平滑迁移,不需要修改一行代码,也不需要业务做任何调整,但过程中由于Oracle本身功能较多,先去突破哪些具体的内容确实是一种挑战。

中国数据库告别卡脖子:阿里再刷新全球纪录,二十万亿行代码自研

另外甲骨文一直以来都是一家技术能力强大的企业,对自身专利权限十分看重,未来在兼容工作进行过程中技术团队认为务必要基于自研数据库的属性对类似功能的加持保持慎重。

更重要的是,分析甲骨文单机数据库强大的技术功能后,OceanBase团队发现其混合负载是其重要的技术杀手锏,“未来在OceanBase分布式技术架构中实现此项功能的确算是一种不小的技术挑战。”

此外,对于OceanBase来说,公开挑战里的成功,只是日常实力的证明方式之一。

与诸多中国技术公司一样,业务场景才是最好的练兵场,而且中国业务场景下的挑战,可能比基准测试还要复杂多变得多。

或许你多少有了解,支付宝投身OceanBase获得成功,除了强大的专业技术人才投入之外,更重要的是阿里经济体与支付宝业务为代表的的互联网规模、金融级场景的复杂度,以及每年双十一大促时期的大型历练机会……

中国数据库告别卡脖子:阿里再刷新全球纪录,二十万亿行代码自研

这些都为其提供了天然的练兵场,因为只有经过丰富的业务场景考验才能证明数据库系统的通用性,“用出来”才是硬道理。

举个例子,在高效解决银行业务从传统Oracle迁移到OceanBase的有关问题时,由于实操经验丰富,团队早已面向开发者、运维人员等不同技术层面人群提供了完成与大数据链路同步以及异构数据库、同构数据库同步与迁移的诸多工具,例如OCP、OMS等。

现如今随着OceanBase在金融场景的商用化程度越发深入,创始人阳振坤表示,未来团队更想该产品代表下一代分布式数据库的技术趋势前沿与发展方向,在除金融行业以外的多个领域。

例如交通、铁路与航天等也都陆续出现OceanBase的身影,夯实金融场景技术创新之余大力推进商用化进程,逐渐成长位至关重要的通用性技术。

包括如今面貌一新的国民应用,目前背后底座就是OceanBase。

所以可以想见,随着TPC-C的再次实力证明,会有更多公司、业务、场景和领域,用上全球领先且中国自研的OceanBase数据库。

在波诡云谲的大环境中,不必再担心任何形式的断供。

中国数据库告别卡脖子:阿里再刷新全球纪录,二十万亿行代码自研

十年磨一剑

但即便如此,OceanBase一路走来,也并非轻而易举。

现在看到的是全球瞩目,之前却有十年的风雨兼程。

OceanBase创始人阳振坤回忆,当时完全是凭借技术灵感,认定传统集中式数据库,总会有尽头。

“我虽然不是做数据库的,但长期的分布式经验让我觉得像Oracle那种单机数据库总会有个尽头。毕竟业务数据量没几个月就要翻一翻,分布式绝对是个机会。”

中国数据库告别卡脖子:阿里再刷新全球纪录,二十万亿行代码自研
OceanBase创始人阳振坤

于是当年6月25日,OceanBase正式立项。

又一年,OceanBase 0.1版本正式发布,在淘宝收藏夹上线,成功帮助淘宝收藏夹业务的数据库服务器数量大幅度减少。

2013年,支付宝开始启动“去 IOE”,即去掉了Oracle数据库、IBM小型机和EMC存储。

2014年支付宝交易库上线,OceanBase产品真正带到金融核心业务。

2017年第一个外部用户南京银行也正式上线OceanBase。

中国数据库告别卡脖子:阿里再刷新全球纪录,二十万亿行代码自研

再到去年9月,一战成名,打破垄断。

但更重要的是今年3月,OceanBase宣布正式通过阿里云向全球开放,实现更广泛的高可用、高性能、低成本服务。

而筚路蓝缕的研发之路中,一度因为困难重重、中途因为找不到愿意使用的业务,OceanBase团队还曾经濒临解散。

如今春风化雨,一切尽付笑谈中。

更重要的是,曾经因为数据库技术垄断,甲骨文创始人拉里·埃里森,让中国合作方在零下二十多度的凛冽环境中苦等2小时的傲慢往事,或许再也不会有了。

现在,我们不仅有了国产自研OceanBase数据库可供选择,而且OceanBase,也是最好的选择。

接下来,就看操作系统和芯片的了。

中国数据库告别卡脖子:阿里再刷新全球纪录,二十万亿行代码自研

— 完 —

量子位 QbitAI · 头条号签约

关注我们,第一时间获知前沿科技动态

版权所有,未经授权不得以任何形式转载及使用,违者必究。