中國自研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,也是最好的選擇。
接下來,就看操作系統和芯片的了。