《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 人工智能 > 業(yè)界動態(tài) > 火山引擎打造企業(yè)級 ByteHouse ,打通 ClickHouse 落地企業(yè)的“最后一公里”

火山引擎打造企業(yè)級 ByteHouse ,打通 ClickHouse 落地企業(yè)的“最后一公里”

2021-10-18
來源:CSDN
關(guān)鍵詞: 火山引擎 ByteHouse ClickHouse

  “OLAP”這個名詞最早誕生于1993年,由關(guān)系型數(shù)據(jù)庫之父E.F.Codd博士提出,這也是世界范圍內(nèi)首次對多維數(shù)據(jù)庫與多維分析有一個蓋棺定論的概念定義。但可能連考特博士本人也沒有預料到,在短短二十余年的時間里OLAP型數(shù)據(jù)庫迅速在千億數(shù)據(jù)庫市場中站穩(wěn)了腳跟,并在大數(shù)據(jù)浪潮的推動下不斷拓寬著屬于自己的市場版圖。在當下這個時代,傳輸?shù)臄?shù)據(jù)即是流動的石油,而OLAP數(shù)據(jù)庫則是企業(yè)從數(shù)據(jù)中獲取價值最為直接的工具。

  不同于OLTP領(lǐng)域在漫長的時間積淀下所形成的穩(wěn)定技術(shù)格局,OLAP領(lǐng)域的數(shù)據(jù)庫產(chǎn)品目前還處于百家爭鳴、群雄割據(jù)的狀態(tài)。正所謂“亂世出英豪”,2016年由俄羅斯搜索巨頭Yandex開發(fā)并開源的一款OLAP型數(shù)據(jù)庫產(chǎn)品ClickHouse在短時間內(nèi)迅速躥紅。作為后起之秀,ClickHouse憑借著先天的設(shè)計優(yōu)勢、極致的速度性能與靈活可擴展性,受到了國內(nèi)外企業(yè)的廣泛關(guān)注與使用。

  當然對于數(shù)據(jù)庫產(chǎn)品而言,僅僅做到性能上的出眾是遠遠不夠的,無論是開發(fā)者看重的上手難度、學習成本,還是企業(yè)看重的產(chǎn)品穩(wěn)定性與業(yè)務(wù)兼容性,現(xiàn)階段ClickHouse都難以滿足企業(yè)級用戶的使用需求。2021年8月,火山引擎正式對外發(fā)布了「ByteHouse」企業(yè)級數(shù)據(jù)庫產(chǎn)品。作為ClickHouse的企業(yè)版,ByteHouse在解決上手與試錯難題的同時,還能夠為企業(yè)用戶提供完善的產(chǎn)品技術(shù)支持服務(wù)。

  極限業(yè)務(wù)場景下的千錘百煉,國內(nèi)最大ClickHouse“玩家”打造的ByteHouse

  如果我們想為ClickHouse尋找一個完美的“壓力測試場景”,那么坐擁抖音、頭條、西瓜視頻等一系列頭部產(chǎn)品的字節(jié)跳動一定會榜上有名?!肮?jié)點總數(shù)超過15000個、管理總數(shù)據(jù)超過600PB、最大集群規(guī)模在2400余個節(jié)點”,從數(shù)字上我們不難看出ClickHouse在字節(jié)跳動內(nèi)部業(yè)務(wù)場景中的深度應(yīng)用。

  火山引擎是字節(jié)跳動旗下企業(yè)級技術(shù)服務(wù)平臺,其基于開源的ClickHouse進行深度優(yōu)化和改造后,推出了企業(yè)版產(chǎn)品ByteHouse。除自研表引擎、擴展數(shù)據(jù)類型、冷熱數(shù)據(jù)分離等諸多自研優(yōu)勢以外,ByteHouse的數(shù)據(jù)實時寫入能力也相較原生ClickHouse提升了兩倍以上。在極限業(yè)務(wù)場景的打磨下,ByteHouse完成了由一個優(yōu)秀的開源OLAP引擎向完善的商業(yè)化企業(yè)級產(chǎn)品的蛻變,能夠為企業(yè)級用戶海量數(shù)據(jù)的生產(chǎn)環(huán)境,提供更強的數(shù)據(jù)查詢和寫入服務(wù)。

  這里我們?yōu)榇蠹曳窒鞢lickHouse在字節(jié)跳動代表性業(yè)務(wù)場景的應(yīng)用案例與ByteHouse的優(yōu)化方案:

  A/B測試下的推薦系統(tǒng)實時指標

  2016年,字節(jié)跳動搭建了支持大規(guī)模產(chǎn)品實驗的A/B測試平臺。在完成對抖音、西瓜視頻等全線業(yè)務(wù)的接入后,字節(jié)跳動每天同時進行的A/B測試達到上萬場,單日新增實驗數(shù)量超過1500個,覆蓋400多個大大小小的業(yè)務(wù),累計A/B測試次數(shù)已經(jīng)突破70萬(截至2021年4月)。隨著推薦系統(tǒng)產(chǎn)生的數(shù)據(jù)量越來越大,單個節(jié)點消費能力的要求自然也水漲船高。在使用ClickHouse支持A/B測試推薦系統(tǒng)的實時數(shù)據(jù)時,火山引擎研發(fā)團隊也遇到了諸如單次數(shù)據(jù)吞吐量大、數(shù)據(jù)落盤時延低,以及數(shù)據(jù)傳輸過程中不丟失且不重復等技術(shù)需求。

  ByteHouse通過異步構(gòu)建輔助索引的方式,及基于自研的Kafka Engine,保證寫入性能在OLAP數(shù)據(jù)庫中具有領(lǐng)先優(yōu)勢。同時,ByteHouse也支持exactly once語義,確保數(shù)據(jù)傳輸中的原子性,有效保障和滿足了字節(jié)業(yè)務(wù)部門在熱門活動實時數(shù)據(jù)分析上的訴求。

  頭部APP端的大數(shù)據(jù)分析

  上線短短四年時間,字節(jié)跳動的短視頻APP產(chǎn)品抖音的日活用戶便已突破6億。除了抖音,字節(jié)跳動也還有其他日活過億的頭部App產(chǎn)品,在龐大日活用戶的背后產(chǎn)生了海量的產(chǎn)品使用數(shù)據(jù)分析需求。從業(yè)務(wù)的角度分析,APP端產(chǎn)品的數(shù)據(jù)分析具有指標計算相對復雜、數(shù)據(jù)總量較大且查詢模式多變的業(yè)務(wù)特點,為此也需要具備高可用保障,以及能夠應(yīng)對超大數(shù)據(jù)規(guī)模下交互式實時響應(yīng)的能力。

  ByteHouse 提供了 PB 級數(shù)據(jù)秒級響應(yīng),通過增強的自研引擎,確保95%以上的查詢均可在秒級返回,針對APP端的業(yè)務(wù)多變性,引入了新的數(shù)據(jù)類型支持動態(tài)schema。同時通過自研的HAEngine和元數(shù)據(jù)持久化等優(yōu)化,ByteHouse提供了新的生產(chǎn)級高可用方案,能夠保障其在大數(shù)據(jù)量場景下依然不會影響到查詢分析體驗。

  “運維工具+技術(shù)支持”,齊頭并進的ToB服務(wù)雙頭馬車

  “使用難度、運維成本”相信這是每一個企業(yè)級用戶在選型數(shù)據(jù)庫產(chǎn)品時,會去關(guān)注的兩大衡量指標。同時,這兩項指標也成為了橫跨在ClickHouse“關(guān)注者”與“使用者”之間巨大的鴻溝。無論是國內(nèi)還是國外的開發(fā)論壇上,ClickHouse“上手容易,用好很難”已經(jīng)成為開發(fā)者共同的認知。正所謂“九層之臺,起于累土”,對于企業(yè)級用戶的實際應(yīng)用場景而言,配套的運維能力與技術(shù)支持是企業(yè)級產(chǎn)品的基石,發(fā)揮的作用至關(guān)重要。

  ByteHouse 提供了一個自助服務(wù)平臺,針對部署和運維提供了多種工具進行集群管理。對于常規(guī)的運維操作,ByteHouse支持自動下發(fā)版本調(diào)整、節(jié)點重啟和替換等運維任務(wù),并具有自動發(fā)現(xiàn)和替換故障節(jié)點的能力。同時,針對系統(tǒng)的運行情況,ByteHouse也提供了全面的監(jiān)控、負載指標,使其具備便捷、清晰的管理能力。比如說,在集群使用過程中,ByteHouse可以隨時對CPU利用率與磁盤利用率的警戒水位線等關(guān)鍵指標進行監(jiān)控,對健康度進行可視化展示。ByteHouse系統(tǒng)內(nèi)部還可以根據(jù)企業(yè)自身需求,配置故障、服務(wù)異常等報警功能的閾值,方便企業(yè)級用戶進行預處理操作。

  針對數(shù)據(jù)庫產(chǎn)品不可避免存在的慢查詢問題,ByteHouse提供了強大的查詢診斷功能,對負載過重的后臺合并任務(wù),也可以進行自動診斷。這些“事前”、“事中”、“事后”的運維能力,有效提升了可用性,大大降低了運維復雜度。在ByteHouse的加持下,大型企業(yè)用戶或許只需七名SRE工程師就能支持上萬節(jié)點的運維。

  此外,火山引擎圍繞ByteHouse提供了完善的產(chǎn)品技術(shù)支持,從產(chǎn)品的安裝部署、業(yè)務(wù)應(yīng)用與項目的0到1、端到端落地的多重維度,為企業(yè)用戶提供包括架構(gòu)咨詢、使用優(yōu)化、進階培訓等服務(wù)。從完善的自動化運維工具,到覆蓋產(chǎn)品與項目的專業(yè)技術(shù)支持,火山引擎ByteHouse的ToB拓展之路,走的平穩(wěn)且堅實。

  先狹義后廣義,企業(yè)級數(shù)據(jù)庫產(chǎn)品的商業(yè)化范式

  雖千行百業(yè)皆需賦能,但需求痛點個個不同。對于企業(yè)級交互式分析數(shù)據(jù)庫產(chǎn)品而言,既要儲備深度足夠的技術(shù)能力,同時還要具備靈活適應(yīng)不同業(yè)務(wù)場景的泛化能力?!跋泉M義,后廣義”,這也是火山引擎在開發(fā)ByteHouse產(chǎn)品中貫穿始終的心路歷程。

  作為企業(yè)級交互式數(shù)據(jù)庫產(chǎn)品,目前ByteHouse已經(jīng)成功在金融、制造、零售、互聯(lián)網(wǎng)等行業(yè)中逐漸落地生根,并切實地幫助企業(yè)解決其在大數(shù)據(jù)分析領(lǐng)域中的痛點?;鹕揭嫦駽SDN分享了ByteHouse在實際應(yīng)用場景中取得的進展:

  在服務(wù)傳統(tǒng)工業(yè)制造應(yīng)用場景中,客戶基于工業(yè)互聯(lián)網(wǎng)大數(shù)據(jù)平臺,積累了數(shù)十萬臺大型設(shè)備,并以每天5億條的速度不間斷產(chǎn)生IoT數(shù)據(jù),急需構(gòu)建一個具有高性能、高可用、易擴展的大數(shù)據(jù)平臺,以支撐千億級數(shù)據(jù)的性能指標查詢和高效的數(shù)據(jù)計算分析。ByteHouse在技術(shù)選型中脫穎而出,在實時數(shù)據(jù)寫入性能、并發(fā)查詢、高可用和集群穩(wěn)定性、監(jiān)控可視化等方面滿足其核心訴求,并進一步支持了報警預測實時推送、電子圍欄等場景。

  作為泛互聯(lián)網(wǎng)場景下的代表性產(chǎn)業(yè),“數(shù)據(jù)驅(qū)動”正逐漸成為游戲行業(yè)發(fā)展的核心源動力。在游戲行業(yè)的實際應(yīng)用場景中,客戶需要根據(jù)人群包,在豐富的維度標簽下洞察人群特征分布,實現(xiàn)快速理解用戶。而現(xiàn)有的技術(shù)棧面臨著高基維、標簽數(shù)據(jù)良多,以及復雜的業(yè)務(wù)邏輯等眾多難題。ByteHouse憑借高基維優(yōu)化、BitmapEngine等核心優(yōu)化,有效支持了用戶包的運算和亞秒級查詢響應(yīng),極大提升了人群畫像洞察、差異分析、個體畫像分析等場景下的查詢體驗。

  在OLAP場景需求快速增長的當下,企業(yè)對于交互式分析數(shù)據(jù)庫產(chǎn)品的需求,仍將會進一步增加?;鹕揭鍮yteHouse利用自身場景的沉淀推出企業(yè)級“ClickHouse”服務(wù),在CSDN看來可謂是恰逢其時。它的出現(xiàn),為處在大數(shù)據(jù)浪潮中的企業(yè)級用戶提供了OLAP場景下的一站式服務(wù),有助于其打通大數(shù)據(jù)分析場景化落地的“最后一公里”。




1.png


本站內(nèi)容除特別聲明的原創(chuàng)文章之外,轉(zhuǎn)載內(nèi)容只為傳遞更多信息,并不代表本網(wǎng)站贊同其觀點。轉(zhuǎn)載的所有的文章、圖片、音/視頻文件等資料的版權(quán)歸版權(quán)所有權(quán)人所有。本站采用的非本站原創(chuàng)文章及圖片等內(nèi)容無法一一聯(lián)系確認版權(quán)者。如涉及作品內(nèi)容、版權(quán)和其它問題,請及時通過電子郵件或電話通知我們,以便迅速采取適當措施,避免給雙方造成不必要的經(jīng)濟損失。聯(lián)系電話:010-82306118;郵箱:aet@chinaaet.com。