OceanBase,走入原生分布式資料庫的無人區

數據猿 發佈 2022-02-11T14:02:51+00:00

在數位化時代,數據量呈現指數級增長,尤其是視頻、圖像、語音等數據急速積累。資料庫,在整個數據價值體系中,承擔著基石的作用。海嘯一般的數據正在向我們迎面撲來,關於數據的整個計算、存儲、應用技術體系,都必須經過大刀闊斧的改造,才能有效應對巨量的數據處理需求。

在數位化時代,數據量呈現指數級增長,尤其是視頻、圖像、語音等數據急速積累。資料庫,在整個數據價值體系中,承擔著基石的作用。海嘯一般的數據正在向我們迎面撲來,關於數據的整個計算、存儲、應用技術體系,都必須經過大刀闊斧的改造,才能有效應對巨量的數據處理需求。那麼,作為數據帝國的「重臣」,資料庫該如何進化呢?答案是原生分布式資料庫。

由螞蟻集團自主研發的OceanBase,就是原生分布式資料庫的典型代表。我們可以通過OceanBase,來分析原生分布式資料庫的特點和發展態勢。

原生分布式,一個公司只需要一個資料庫

有一類分布式資料庫基於中間件,該方案將數據分拆到不同的資料庫節點上,利用中間件來管理和訪問各個資料庫中的數據。這種方式本質是集中式資料庫+分布式中間件,在架構上是不徹底的分布式資料庫。

與之不同的是,OceanBase是原生分布式資料庫,架構設計、底層存儲和查詢處理均面向分布式數據管理需求。OceanBase在架構之初就假定整個服務需要多個節點配合完成,並且假定任意一個節點都不可靠。OceanBase原生分布式資料庫具備高可用、高擴展的特點,支持按需增加節點,並且節點沒有數量限制。各個節點具有對等性,資料庫集群的讀寫性能隨著節點數量的增加幾乎呈線性增長。

OceanBase原生分布式資料庫採用Shared-Nothing的技術架構,通過配置數據副本的存儲位置,可實現機架級容災、機房級容災、城市級容災。優異的異地容災能力,讓OceanBase能夠通過「兩地三中心」,甚至是「三地五中心」的方式幫助金融機構應對容災挑戰,因而受到金融機構的青睞。

此外,基於中間件的分布式資料庫和原生分布式資料庫在用戶使用門檻上也有明顯的區別。基於中間件的分布式資料庫,通常需要用戶參與到數據分拆和節點管理過程中。分庫分表、中間件統一調度是高難度的技術操作,這會極大的提升用戶的使用門檻。作為對比,OceanBase原生分布式資料庫實現了「一個公司只需要一個資料庫」。OceanBase資料庫集群作為一個整體對外提供服務,用戶無需關注集群內部的實現細節。原生資料庫的理念是把複雜留給資料庫,把簡單留給客戶。為了實現這個目標,OceanBase堅持100%自主研發,從頭開始打造原生分布式資料庫。

正如OceanBase的CEO楊冰所說,原生分布式資料庫創新地採用新一代分布式處理技術,能夠極大降低企業的資料庫成本。未來不久,創業將進入「原生分布式」時代,中小企業也可以享受原生分布式資料庫帶來的技術紅利,OceanBase目前已經服務了大量中小客戶,中小客戶比重近七成。

一體化架構,既保留可擴展性又不犧牲單機性能

分布式資料庫雖然具有可擴展性的優勢,但單機性能卻不如集中式資料庫。在一些核心業務領域,對資料庫的單機性能有很高的要求,集中式資料庫的地位很難撼動。

OceanBase作為原生分布式資料庫的代表,很好地解決了單機性能不足的問題,既保留了分布式資料庫高擴展性的優勢,在單機性能上也追上了集中式資料庫。

OceanBase怎麼做到的呢?秘訣就在於自研的一體化架構。資料庫的架構可以劃分為分離架構和一體化架構:分離架構抽取分布式KV層,為了實現擴展性犧牲了單機性能,因而只能應用於非核心業務場景;與之不同,OceanBase採用一體化架構,融合事務和KV,在不犧牲單機性能的前提下實現可擴展性,可有效支撐核心業務場景。

除了大幅度提升單機性能,OceanBase還通過自研 HTAP 融合引擎,實現全局資源管理,保障 OLTP 與 OLAP 資源隔離和負載調度,在不犧牲 TP 性能的同時把 AP 做到了極致。藉助HTAP 融合引擎,OceanBase實現了用一套引擎同時支持兩個資料庫業務類型,既支持 OLTP 交易型業務,也支持 OLAP 決策分析型業務。

一體化架構的原生分布式資料庫雖然很厲害,但實現難度也很大。OceanBase資料庫從2010年產品立項開始,到今天已經12年。先是在電商場景得到驗證,之後擴展到支付寶的支付、轉帳等核心金融場景,成熟後才推向市場。

在OceanBase的持續演進過程中,一直在進行版本疊代和功能升級。僅僅2021年,OceanBase的開源版、商業版就總共疊代了8個版本,代碼提交5300+次 。經過多次疊代,OceanBase在性能、兼容性、性價比等方面都得到大幅提升:HTAP能力大幅增強,OLTP性能提升68%,OLAP性能提升620%;核心系統領域Oracle兼容性行業NO.1,完整兼容PL/SQL特性,提供OCI & Pro*C兼容的產品,MySQL5.5/5.6/5.7語法/協議兼容度達99%;小型化支持8C/64G,內存使用量降低35%,採用LSM樹通用壓縮,容量提高3-6倍,成本節省50%,數據編碼成本節省25%。

可以說,經過這麼多次的技術升級,OceanBase已經成為原生分布式資料庫的執牛耳者。

在資料庫領域,國際事務處理性能委員會(TPC,Transaction Processing Performance Council)的數據分析型基準測試(TPC-H),一直是公認的衡量資料庫數據分析能力的權威標準之一。2021年5月,在最新的數據分析型基準測試(TPC-H)榜單中, OceanBase 以 1526 萬 QphH 的性能總分排名 30000GB 第一。這意味著,OceanBase 成為全球唯一在事務處理和數據分析兩個領域測試中都獲得第一的中國自研分布式資料庫。

事實上,OceanBase已經多次霸榜TPC。OceanBase 在 2019 年和 2020 年均參與了事務處理型基準測試(TPC-C),並兩度登頂。性能方面,2019年 OceanBase 的測試結果是6088萬 tpmC,2020年則是7.07億 tpmC。性能大幅提升的同時,成本卻顯著下降,TPC-C benchmark 價格從2019年的¥6.25/tpmC 降到2020年的¥3.98/tpmC。

雖然,TPC測試成績並不能代表一切,OceanBase 也過了用TPC排名來證明自己的階段。但是,在TPC這樣世界級的比拼中,OceanBase 多次奪冠,刷新自己創造的紀錄,這至少說明OceanBase 已經成為世界領先的分布式資料庫。在國際頂級賽事中,中國選手不僅拿到了入場券,還贏得了比賽,這是一件值得慶賀的成就。

資料庫的大規模升級換代,正在進行時

2013年7月10日,淘寶最後一個集中式資料庫下線,2017年11月, OceanBase承擔支付寶交易100%、支付100%、帳務100%流量,至此,螞蟻集團的核心系統全部升級到自研的OceanBase。之所以要用自研的分布式資料庫取代集中式資料庫,最關鍵的是集中式資料庫已經無法滿足業務海量的數據處理需求了。用戶量在快速增長,業務系統也在迅速膨脹,數據像海嘯一樣撲來,傳統集中式資料庫就像個小池塘,馬上就快接不住不斷湧來的數據了。資料庫擴容升級,已經是箭在弦上。

隨著各行各業數位化轉型進一步發展,阿里巴巴當初面臨的問題,其他企業也會遇到。數據量的爆發式增長,可擴展性已經不是資料庫的選擇題,而是必選題。以銀行為例,除了傳統存貸業務外,移動金融、網際網路金融、智能營銷、智能風控等業務線快速發展,需要處理的數據規模在快速增長。傳統集中式資料庫在面對快速增長的數據處理需求,已經越來越難以為繼。

藉助原生分布式資料庫,實現資料庫擴展,是必然的選擇。事實上,原生分布式資料庫對傳統資料庫的規模化替代已經在進行了。以OceanBase為例,其2021年客戶數量相比2020年增長了一倍,達到400多家,占據國內頭部金融企業的1/4,主要是銀行、保險、證券、基金等金融客戶。在幾年前,人們會說銀行都是一些邊緣業務採用分布式資料庫,核心數據還是存在集中式資料庫上。以前的確是這樣,但現在不同了。在OceanBase的金融客戶中,越來越多銀行將其核心數據系統升級到OceanBase。是否願意升級核心資料庫,這會帶來根本性的不同。

此外,大量的非金融客戶也開始選擇OceanBase。目前,OceanBase的非金融客戶營收占比達到35%,並逐年提升。人社、運營商、能源、政務等領域,客戶藉助OceanBase實現了數據擴容,並提升了數據管理效率,降低了成本。

以OceanBase的一個客戶山東移動為例,其計費系統日處理各類詳單數據 130 億條。面對巨量的數據需求,過去使用的集中式單機資料庫經常出現容量不足的情況,已經嚴重阻礙了業務的發展。尤其是在5G時代,用戶數、並發量等數據都在激增。從集中式資料庫升級為原生分布式資料庫OceanBase之後,山東移動不僅解決了數據擴容的燃眉之急,還收穫了諸多意外之喜,比如詳單處理效率提升了 30%,存儲投入成本降低了 90%,硬體和維保成本大幅降低,實現了 RPO=0 的機房級別容災能力,不再需要搭建災備系統等。

可以說,以OceanBase為代表的原生分布式資料庫,將大規模幫助傳統集中式資料庫升級。中國乃至全球的資料庫升級換代,正在進行當中。當然,OceanBase還有很長的路需要走。一方面,原生分布式資料庫的技術升級只有進行時,沒有完成時,升級疊代永不止步;另一方面,OceanBase要加快推進商業化進程,配合數據的上雲進程,加快對傳統資料庫的替代。路雖遠,行則將至;事雖難,做則必成。

文:凝視深空 / 數據猿

關鍵字: