作為云計算的下一個迭代,Serverless 可以使開發者更專注于構建產品中的應用,而無需考慮底層堆棧問題。伴隨著近年來相關技術成熟度的增加,市場對 Serverless 的接受程度也變得越來越高??梢哉f時至今日,Serverless 已邁入了向成熟穩定方向發展的高速軌道。
作為一款火山引擎推出的云原生數據倉庫,ByteHouse 基于開源 ClickHouse 構建,并在字節跳動內外部場景的檢驗下,對 OLAP 引擎能力、性能、運維、架構進一步升級。除此之外,ByteHouse 也在 Serverless 方向探索,基于 cloud-native 云原生的理念構建了全新一代的數據倉庫,架構上進行了三層解耦,期望在 Serverless 的加持下,提供更穩定、可靠、可信的分析服務,讓開發人員時間精力從基礎設施運維優化上解放,更聚焦在核心業務功能中。
然而,在 OLAP 領域的 Serverless 技術實現上,仍然存在一些技術難點。
OLAP 數據分析涉及到存儲、網絡、操作系統、數據庫、AI 等 IT 領域幾乎全棧的技術點,需要廠商做持續的、高成本的研發投入。而且這些投入短期內難見市場回報,一旦中途停頓則意味著前期的投入全都“打水漂”。
其次,雖然已經有幾款商用的 Serverless 架構的數據倉庫,但是其提供的算力規模很難支撐中大型規模的數據倉庫或者分析平臺的需求。也就是說,Serverless 架構的數據倉庫還需要在算力上做進一步的提升。
Serverless 的規模化應用還面臨服務標準化的問題。沒有標準化的規范會導致用戶被平臺鎖定,無法實現應用的平移、無縫搬遷。因此,為了推動 Serverless 的規?;瘧?,需要有與之配套的標準和規范體系。
為了更好解決以上難點,火山引擎ByteHouse逐步向 Serverless 架構演進,并針對存儲層、中間層以及云服務層進行三層架構解耦。

ByteHouse向 Serverless演進的技術架構
在存儲層的設計中,ByteHouse實現了Serverless化、彈性伸縮、容量無限擴展。為提升存算分離架構下的性能問題,ByteHouse針對HDFS語義優化,讓帶寬僅增加10%的情況下,延遲減少3倍,并在網絡通信上, 采用連接復用、RDMA、傳輸壓縮等技術,大幅緩解了網絡放大問題。
在中間層,ByteHouse通過按讀寫進行隔離、按應用類別進行隔離等方式實現負載隔離,在滿足用戶基本需求的情況下,實現架構逐步向Serverless演進。
在上層的cloud services 云服務層,ByteHouse提供集中化的catalog 元數據服務、集群管理服務等,讓元數據從計算層解耦,實現了無狀態化,獲得秒級的彈性伸縮和啟停能力。
Serverless 在 OLAP 領域的應用依然面臨一些挑戰,但隨著技術的不斷演進和迭代,標準化的規范體系的建立和完善,ByteHouse將持續探索和應用Serverless架構優勢,為行業和用戶提供更優質的數據分析服務。(作者:楊博帆)