讓快更快,火山引擎ByteHouse為ClickHouse提速

近日,火山引擎數(shù)智平臺VeDI與DataFun聯(lián)合舉辦以“OLAP計算引擎”為主題的直播活動,來自火山引擎數(shù)智平臺VeDI的產(chǎn)品專家從技術(shù)選型、能力分析、性能優(yōu)化以及應(yīng)用場景落地多個角度,介紹火山引擎ByteHouse如何基于ClickHouse實現(xiàn)實時計算能力升級。

據(jù)介紹,火山引擎ByteHouse來源于字節(jié)跳動多年內(nèi)部沉淀。由于場景越來越豐富以及數(shù)據(jù)分析需求增長,業(yè)務(wù)對于實時數(shù)倉的要求也越來越高。首先是數(shù)據(jù)體量大以及不斷增長的問題。早在2019 年,字節(jié)內(nèi)部每天新增的數(shù)據(jù)量就達(dá)到了100TB。其次,在海量數(shù)據(jù)基礎(chǔ)上,由于數(shù)據(jù)類型多樣(包括批式數(shù)據(jù)和流式數(shù)據(jù))、查詢需求多樣、交互式分析復(fù)雜,數(shù)據(jù)引擎需要具備靈活性。目前,行業(yè)Redis、 SparkSQL 等開源方案可以從不同角度滿足上述兩個需求,但是維護多個開源數(shù)據(jù)庫將導(dǎo)致成本高,選擇一款可以避免成本無限擴展的計算引擎成為字節(jié)數(shù)據(jù)研發(fā)首要考慮的問題。

ClickHouse性能高、靈活性強,且主要依賴磁盤、成本相對可控,成為字節(jié)跳動內(nèi)部計算引擎的首選。但原生 ClickHouse 能力難以支持 upset 、實時數(shù)據(jù)更新等一些場景,在很多層面有局限性,例如:


(資料圖片)

· 單表性能強勁,但多表能力局限,且對標(biāo)準(zhǔn) SQL 兼容性低。

· 缺乏成熟運維管理工具,運維復(fù)雜程度高。

· ClickHouse 為 MPP 架構(gòu)(存算一體架構(gòu)),性能強,但橫向擴容成本非常高、數(shù)據(jù)隔離性差。

ByteHouse產(chǎn)品專家在直播中介紹到,“為了解決以上問題,我們主要從4個方向進行優(yōu)化,讓OLAP引擎能力、性能、運維、架構(gòu)進一步升級?!?/strong>

第一,豐富的自研表引擎,實現(xiàn)OLAP引擎能力進化。 ByteHouse 彌補了ClickHouse表引擎的不足,并衍生出全新的表引擎,包括使高可用表引擎、實時數(shù)據(jù)引擎、Unique 引擎、Bitmap 引擎。以Unique 引擎為例,它解決了社區(qū)版 ReplacingMergeTree 實時更新延遲問題,真正做到實時 upset。

第二,新增優(yōu)化器、字典、索引支持能力,實現(xiàn)OLAP引擎性能進化。ClickHouse在多表場景中性能存在缺陷,而ByteHouse 通過自研CBO 和 RBO(基于代價和基于規(guī)則的優(yōu)化器),支持了多層嵌套的下推、Join 子查詢的下推、Join-Reorder、Bucket Join、Runtime Filter 等優(yōu)化器特性,做到 TPC-DS 的性能可以達(dá)到 99 條sql100%覆蓋,極大提升多表場景下的性能。另外,ByteHouse還支持了全局字典以及更多索引,如 Bitmap index,讓查詢效率更快。

第三, 自動化、可視化,實現(xiàn)OLAP引擎運維進化。ByteHouse 提供標(biāo)準(zhǔn)化運維、集群健康度檢測、問題發(fā)生時的診斷工具,幫助運維人員提高效率。例如,集群健康度的檢測工具,類似于集群的實時巡檢,能夠報告當(dāng)前集群狀態(tài)、出現(xiàn)了什么問題、問題如何解決,最大程度把問題前置化,降低運維風(fēng)險。從效果上看, 18000 個節(jié)點只需要不到 10 個運維人員來支持。

第四, 存算分離,實現(xiàn)OLAP引擎架構(gòu)進化。ByteHouse推出了 MPP 2. 0 即存算分離架構(gòu)。一方面, 存算分離可以更好實現(xiàn)資源隔離,每一個計算任務(wù)都會提交到不同的計算資源中,做到用戶之間互不影響,還能靈活擴容、縮容存儲計算資源;另一方面,存算分離能做到真正云原生(Cloud native),ByteHouse 存儲層既支持 HDFS,也支持 S3 對象或者其他的對象存儲,實現(xiàn)云原生部署。

目前,ByteHouse已經(jīng)在行為分析、精準(zhǔn)營銷、實時監(jiān)控等業(yè)務(wù)場景中落地。以實時監(jiān)控為例,很多互聯(lián)網(wǎng)APP有線上運營活動、直播電商等業(yè)務(wù),數(shù)據(jù)實時性格外重要。數(shù)據(jù)從生產(chǎn)到展現(xiàn)在大屏上,延遲往往要控制在分鐘級甚至秒級以內(nèi)。而ByteHouse高吞吐性能、查詢性能,使數(shù)據(jù)從輸入端到輸出端的流程達(dá)到秒級。在數(shù)據(jù)保障層面,ByteHouse 也能精細(xì)到Exactly Once 的語義,保證數(shù)據(jù)不丟失、不重復(fù),最終達(dá)到數(shù)據(jù)高效存儲、準(zhǔn)確查詢。(作者:吳卓港)

推薦DIY文章
全新門派“萬靈山莊”首曝 《劍網(wǎng)3》十四周年發(fā)布會全回顧
刷新全智能手表體驗上限,OPPO Watch 4 Pro發(fā)布:2199元起
OPPO Watch 4 Pro真機亮相! 智能體驗與外觀質(zhì)感再升級,將于8月29日發(fā)布
全球首臺8K激光電視引關(guān)注!人民日報探廠海信直播即將啟幕
持續(xù)引領(lǐng)智能手表體驗!OPPO Watch系列新品溝通會召開
當(dāng)智能健身走向全民化:AEKE輕力量家庭智能健身房引領(lǐng)未來
精彩新聞

超前放送