OceanBase,十年前有“海洋”一样的寄托,十年后梦想实现。
作为中国自研的数据库,它在短短7个月内再次、且大幅刷新了世界纪录。
再次?
因为去年10月打破业界尘封9年世界纪录后,外界质疑是硬件的“大力出奇迹”。
但这一次,7个月内,硬件没有大更新,性能却提升了11倍——这是技术架构和软件实力的直接证明——而且这不再是一个短时间可以被超越的成绩。
支付宝工程师回应质疑的方式,很工程师。
另外,这也还不是这则新进展值得关注的全部:
数据库、操作系统和芯片,被称为科技产业和数字化经济中三大当之无愧的底座技术,之前无一项主动权掌握在中国手中。
而且因为受制于人,科技江湖中始终流传着甲骨文创始人对中国接待人员的傲慢往事。
现在,全球最好的数据库,来自阿里巴巴,出自支付宝,十年之功,一代程序员努力,不仅打破世界纪录,还再次创造了新的标准线。
很多年后回溯起来,这还可能是两个时代的分水岭。
究竟是怎样的成就?
去年十一,我们就报道过,阿里自主研发的金融级分布式关系数据库OceanBase,在国际事务处理性能委员会(TPC)的TPC-C基准测试中登上榜首。
这一成绩还打破了由美国公司甲骨文(Oracle)保持了9年之久的世界记录,成为首个登顶该榜单的中国数据库产品。
如今,7个月后,纪录再度被刷新。
OceanBase不仅打破了去年自己保持的世界纪录,性能分数首次突破7.07亿,相比去年大幅提升近11倍。
而且这一次还是扩展能力的展现,在分布式架构下使用超过1500个节点的数据库集群,最终实现了整体性能的大幅提升。
从关系数据库的角度,5000多万个仓库以及对应数量的客户端,连续8个多小时持续测压,对整个系统都是极大的考验,甚至在ACID的一项测试中,最大的一次全表扫描超过20万亿行。
这对传统的集中式数据库,根本无法想象。
所以在产业领域,分布式数据库解决了传统数据库几十年的难题,标志着数据库行业迎来了新一轮技术变革。
TPC-C,被誉为“数据库领域的世界杯”。
是全球主流计算机硬件厂商、数据库厂商公认的性能评价标准,其对数据库系统的软硬件协同能力要求极高。
也是全球目前最具公信力的联机交易处理(OLTP)数据库的功能与性能结合的测试标准,金融、电信、政府等关键领域的客户,一般参照TPC-C结果来衡量各个数据库厂商的事务处理能力。
更直接来说,TPC-C的测试就是数据库产品真实实力的最佳公开证明。
具体到测试本身,主要涵盖两大方向,分别是基本属性和压力性能。
在模拟真实交易环境并考察数据库基本性能的需求下,要求连续运行至少2小时,通过每分钟创建新订单数量来评价数据库的性能和性价比,规定测试任务需要在指定时间内完成,95%事务在1s内完成。
所以一款商业数据库想要向业界证明自身实力,TPC-C测试,绝对是一项硬指标。
然而,TPC-C排行榜长期被甲骨文、IBM和微软等传统数据库和硬件厂商占据……
中国自研品牌的身影,从未出现过。
直到2019年10月,阿里一鸣惊人,打破甲骨文长达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。
再到去年10月,一战成名,打破垄断。
但更重要的是今年3月,OceanBase宣布正式通过阿里云向全球开放,实现更广泛的高可用、高性能、低成本服务。
而筚路蓝缕的研发之路中,一度因为困难重重、中途因为找不到愿意使用的业务,OceanBase团队还曾经濒临解散。
如今春风化雨,一切尽付笑谈中。
更重要的是,曾经因为数据库技术垄断,业内始终没忘那段伤怀往事:
在1997年,甲骨文创始人拉里·埃里森(Larry Ellison)首次到访中国,因为他晚起床,让中国接待人员在零下二十几度的环境中等待了一个多小时。
然而中方却敢怒不敢言,因为数据库技术完全依赖于甲骨文。国内的金融、电信几乎全部在使用甲骨文的技术,用“卡脖子”来形容一点也不为过。
但现在,十年卧薪尝胆,整整一代程序员努力之后……
我们不仅有了国产自研OceanBase数据库可供选择,而且OceanBase,也是性能最好的选择。
接下来,就看操作系统和芯片的了。
不服,就干。