天天看點

剖析OceanBase的分布式 HTAP,才明白它的價值到底有多大

作者:科技與爆料V

早在2010年,OceanBase就開始了分布式 HTAP的征程。時至今日,十二年過去了,OceanBase一如既往的堅持,并且進行了持續的系列更新。作為企業級原生分布式資料庫,OceanBase堅持HTAP已經成為初心。

随着OceanBase的分布式 HTAP越來越成熟,不少人心中也升起了疑惑。分布式 HTAP對于我們普通的使用者和業内的開發者,又意味着什麼?OceanBase的持之以恒,究竟給我們呈現了何種價值?要想得到這個答案,還需要從真正的HTAP入手加以分析。

剖析OceanBase的分布式 HTAP,才明白它的價值到底有多大

站在使用者角度分析HTAP的優勢場景

Gartner 2016 年首次提出 HTAP并給出明确的定義:即同時支援 OLTP 和 OLAP 場景,需要創新的計算存儲架構,在一份資料上保證事務的同時支援實時分析,省去費時的 ETL 過程。後來的經典資料庫把業務分成 OLTP 和 OLAP,并通過 ETL 定期将資料從 OLTP 資料庫抽取到 OLAP 資料庫。其後,又在發展過程中分為兩種方式,一種是OLTP 資料庫的基礎上擴充 OLAP 的能力,另一種是在 OLAP 資料庫的基礎上引入實時寫入能力。

在業内看來,真正的 HTAP(real-time operational analytics)要求先有高性能的 OLTP,且能夠很好地支援實時分析。OceanBase正式在這一基礎上,以原生分布式架構作為底層,展開了分布式 HTAP的全面征程。

剖析OceanBase的分布式 HTAP,才明白它的價值到底有多大

對于使用者來說,HTAP 的典型優勢場景,一方面包括企業級混合負載,既有簡單的 Key-Value 查詢,也有更加複雜的跑批作業,甚至是實時分析出報表,需要用到大事務/長事務,以及觸發器、外鍵、限制等嚴格資料校驗功能。另一方面還包括實時資料中台。很多場景會使用 MySQL 分庫分表,并将所有 MySQL 分庫的資料同步到一個專門的彙聚庫做實時分析。具備分布式能力的 HTAP 系統能夠同時接管 MySQL 交易庫和彙聚庫的工作負載。

除此之外,還有線上曆史資料統一處理的優勢,将線上資料和曆史資料統一成一份資料,支援更加靈活的查詢方式,降低業務複雜度;以及面向使用者的實時分析。較之于傳統的資料倉庫面向企業内部人員的實時性不強特點,提升系統的實時性和并發處理能力的現實價值就顯得尤為重要。

剖析OceanBase的分布式 HTAP,才明白它的價值到底有多大

HTAP核心技術賦能消費者

基于HTAP的優勢場景,OceanBase進行了全面的優化和更新。諸如通過底層采用優化過的 LSM Tree 存儲引擎,在支付寶所有業務完全替換 Oracle/MySQL,存儲成本隻有原來 B+ 樹方案的 1/3 左右。這種方案是為小資料量的實時事務處理量身定制的,讀寫性能很好但相比 LSM Tree 等新型資料結構存儲成本更高。

另外,為了讓OLTP 資料庫具備 OLAP 的能力,尤其是大資料量 OLAP 的能力,OceanBase 的底層采用了一個基于 LSM-Tree 的行列混合式存儲方案,大幅降低存儲成本,并在 OLTP 和 OLAP 二者性能取得很好的平衡。同時還将 cgroup 內建到資料庫引擎内部做邏輯資源隔離作為另一個契合使用者需求的新方案。

如今,我們能夠真切體會到,在OceanBase 的分布式 HTAP的賦能下,支援複雜查詢和大資料量查詢所涉及到的優化器、并行執行、向量執行等核心技術有了本質的突破,資料明細層,資料服務層,應用資料層、HTAP 需要支援高效易用的物化視圖,外部表,快速資料導入等需要更好地支援 OLAP 的資料開發和模組化能力也有了全面的提高,已經能夠與各種資料開發工具和 BI 工具完成适配對接。

在行業看來,以 OceanBase 為代表的分布式 HTAP 資料庫具備處理大資料量的能力,大大拓寬了 HTAP 資料庫的應用場景。随着市場和使用者的認可,OceanBase 相繼釋出了多個更新版本,增強HTAP能力、大幅提升性能、完善企業級功能、加強診斷監控能力、增強企業級安全性等更加契合使用者需求的能力也在日益增強。

12年來,OceanBase在分布式 HTAP方面的堅持,給使用者帶來了諸多切實的價值,而未來,真正距離産品完全成熟還有很長的路要走。基于OceanBase的既往成績,也将進一步拉升行業的期待值。不久的将來,在OceanBase的主導下,或将實作更多的 HTAP 技術方案和場景價值。

繼續閱讀