火山引擎ByteHouse上線ELT能力,進一步降低企業(yè)數(shù)字化維護成本


(相關(guān)資料圖)

在數(shù)據(jù)分析場景中,企業(yè)使用的數(shù)據(jù)通常具備來源多樣化的特點,如支付交易記錄、用戶行為等,且數(shù)據(jù)格式各異,有的為行式存儲結(jié)構(gòu),有的為列式存儲結(jié)構(gòu)。這就要求企業(yè)數(shù)倉具備一定的數(shù)據(jù)轉(zhuǎn)換能力。

傳統(tǒng)方式是采用Extract-Transform-Load (ETL)來將業(yè)務(wù)數(shù)據(jù)轉(zhuǎn)換為適合數(shù)倉的數(shù)據(jù)模型,然而,這依賴于獨立于數(shù)倉外的ETL系統(tǒng),導致維護成本較高。但隨著云計算時代的到來,云數(shù)據(jù)倉庫具備更強擴展性和計算能力,也要求改變傳統(tǒng)的ELT流程。

火山引擎ByteHouse是一款基于開源ClickHouse推出的云原生數(shù)據(jù)倉庫,為用戶提供極速分析體驗,能夠支撐實時數(shù)據(jù)分析和海量數(shù)據(jù)離線分析,同時還具備便捷的彈性擴縮容能力,極致分析性能和豐富的企業(yè)級特性。憑借其強大的計算能力,火山引擎ByteHouse目前已全面支持Extract-Load-Transform (ELT)的能力,讓用戶免于維護多套異構(gòu)系統(tǒng),產(chǎn)品易用性實現(xiàn)飛躍。

通過ByteHouse的ELT能力,用戶只需將數(shù)據(jù)導入,用自定義SQL語句在ByteHouse內(nèi)部進行數(shù)據(jù)轉(zhuǎn)換,無需依賴獨立的ETL系統(tǒng)及資源。具體來說,ByteHouse主要通過以下三個能力實現(xiàn)ELT能力:

首先,長任務(wù)管理。ByteHouse的查詢時間為秒級,一旦查詢中出故障,系統(tǒng)會直接返回錯誤并重試。在ETL場景下,如果一個任務(wù)已經(jīng)執(zhí)行50分鐘才發(fā)生故障,重試意味著浪費了前50分鐘的資源,影響任務(wù)推進。在ByteHouse中,SQL查詢會被轉(zhuǎn)化為一系列的算子,研發(fā)團隊則通過提升算子的容錯能力,來應對長時間查詢下的系統(tǒng)故障問題,即當某個算子無法獲得足夠的內(nèi)存時,系統(tǒng)允許該算子將一部分數(shù)據(jù)緩存在磁盤上,保證在資源緊張的情況下仍能夠完成工作。

其次,異步提交能力。面對大量長耗時的ETL任務(wù)時,傳統(tǒng)的同步執(zhí)行方式需要客戶端等待服務(wù)端返回,容易出現(xiàn)超時問題,影響后續(xù)任務(wù)執(zhí)行,而ByteHouse提供的異步提交能力,通過客戶端的間歇性輪訓來獲得用戶任務(wù)的最終狀態(tài),由此保障任務(wù)在規(guī)定時間內(nèi)完成。

最后,查詢隊列。當面臨大量離線加工請求時,系統(tǒng)會出現(xiàn)超載。ByteHouse為此提供了查詢隊列能力,允許用戶從隊列大小、總CPU占用率、總內(nèi)存占用率三個維度定義一個隊列。

具體來說,當用戶向某隊列提交查詢時,ByteHouse可以通過組件監(jiān)聽各個隊列中的查詢指標,如果隊列未達到上限,則會將查詢?nèi)腙?,否則拒絕。除此之外,ByteHouse還會檢查隊列的資源利用率,當空閑資源高過某閾值時,自動將等待中的查詢出隊。利用查詢隊列,用戶在編排ETL任務(wù)時無需擔心底層資源過載,讓開發(fā)更加便捷。

長任務(wù)管理、異步提交和查詢隊列是火山引擎ByteHouse ELT的核心能力。未來,ByteHouse也會進一步迭代,支持轉(zhuǎn)換函數(shù)、長任務(wù)容錯、優(yōu)先級隊列等更豐富ELT功能,為用戶提供更極致、更便捷的使用體驗。(作者:何雅逸)

推薦DIY文章
性價比提升30%+,火山引擎第三代AMD實例 ECS g3a邀測上線
場景化新品登場,北汽藍谷蓄力增長新周期
北京衛(wèi)星制造廠科技園:網(wǎng)紅“北京城市更新最佳實踐”打卡地
姿素華品牌全面煥新,苦參堿成分洗頭水正式上市
全新門派“萬靈山莊”首曝 《劍網(wǎng)3》十四周年發(fā)布會全回顧
刷新全智能手表體驗上限,OPPO Watch 4 Pro發(fā)布:2199元起
精彩新聞