人妖在线一区,国产日韩欧美一区二区综合在线,国产啪精品视频网站免费,欧美内射深插日本少妇

新聞動態(tài)

Apache Hudi結(jié)合Flink的億級數(shù)據(jù)入湖實踐解析

發(fā)布日期:2022-07-15 19:54 | 文章來源:源碼之家

本次分享分為5個部分介紹Apache Hudi的應(yīng)用與實踐

1. 實時數(shù)據(jù)落地需求演進(jìn)

實時平臺上線后,主要需求是開發(fā)實時報表,即抽取各類數(shù)據(jù)源做實時etl后,吐出實時指標(biāo)到oracle庫中供展示查詢。

隨著實時平臺的穩(wěn)定及推廣開放,各種使用人員有了更廣發(fā)的需求:

  • 對實時開發(fā)來說,需要將實時sql數(shù)據(jù)落地做一些etl調(diào)試,數(shù)據(jù)取樣等過程檢查;
  • 數(shù)據(jù)分析、業(yè)務(wù)等希望能結(jié)合數(shù)倉已有數(shù)據(jù)體系,對實時數(shù)據(jù)進(jìn)行分析和洞察,比如用戶行為實時埋點數(shù)據(jù)結(jié)合數(shù)倉已有一些模型進(jìn)行分析,而不是僅僅看一些高度聚合化的報表;
  • 業(yè)務(wù)希望將實時數(shù)據(jù)作為業(yè)務(wù)過程的一環(huán)進(jìn)行業(yè)務(wù)驅(qū)動,實現(xiàn)業(yè)務(wù)閉環(huán);
  • 針對部分需求,需要將實時數(shù)據(jù)落地后,結(jié)合其他數(shù)倉數(shù)據(jù),T - 1離線跑批出報表;

>

除了上述列舉的主要的需求,還有一些零碎的需求。

總的來說,實時平臺輸出高度聚合后的數(shù)據(jù)給用戶,已經(jīng)滿足不了需求,用戶渴求更細(xì)致,更原始,更自主,更多可能的數(shù)據(jù)

而這需要平臺能將實時數(shù)據(jù)落地至離線數(shù)倉體系中,因此,基于這些需求演進(jìn),實時平臺開始了實時數(shù)據(jù)落地的探索實踐

2. 基于Spark+Hudi的實時數(shù)據(jù)落地應(yīng)用實踐

最早開始選型的是比較流行的Spark + Hudi體系,整體落地架構(gòu)如下:

這套主要基于以下考慮:

  • 數(shù)倉開發(fā)不需寫Scala/Java打Jar包做任務(wù)開發(fā)
  • ETL邏輯能夠嵌入落數(shù)據(jù)任務(wù)中
  • 開發(fā)入口統(tǒng)一

我們當(dāng)時做了通用的落數(shù)據(jù)通道,通道由Spark任務(wù)Jar包和Shell腳本組成,數(shù)倉開發(fā)入口為統(tǒng)一調(diào)度平臺,將落數(shù)據(jù)的需求轉(zhuǎn)化為對應(yīng)的Shell參數(shù),啟動腳本后完成數(shù)據(jù)的落地。

3. 基于Flink自定義實時數(shù)據(jù)落地實踐

由于我們當(dāng)時實時平臺是基于Flink,同時Spark+Hudi對于大流量任務(wù)的支持有一些問題,比如落埋點數(shù)據(jù)時,延遲升高,任務(wù)經(jīng)常OOM等,因此決定探索Flink落數(shù)據(jù)的路徑。

當(dāng)時Flink+Hudi社區(qū)還沒有實現(xiàn),我們參考Flink+ORC的落數(shù)據(jù)的過程,做了實時數(shù)據(jù)落地的實現(xiàn),主要是做了落數(shù)據(jù)Schema的參數(shù)化定義,使數(shù)據(jù)開發(fā)同事能shell化實現(xiàn)數(shù)據(jù)落地。

4. 基于Flink + Hudi的落地數(shù)據(jù)實踐

Hudi整合Flink版本出來后,實時平臺就著手準(zhǔn)備做兼容,把Hudi納入了實時平臺開發(fā)內(nèi)容。

先看下接入后整體架構(gòu)

實時平臺對各類數(shù)據(jù)源及Sink端都以各類插件接入,我們參考了HudiFlinkTable的Sink流程,將Hudi接入了我們的實時開發(fā)平臺。

為了提高可用性,我們主要做了以下輔助功能;

  • Hive表元數(shù)據(jù)自動同步、更新;
  • Hudi schema自動拼接;
  • 任務(wù)監(jiān)控、Metrics數(shù)據(jù)接入等

實際使用過程如下

整套體系上線后,各業(yè)務(wù)線報表開發(fā),實時在線分析等方面都有使用,比較好的賦能了業(yè)務(wù),上線鏈路共26條,單日數(shù)據(jù)落入約3億條左右

5. 后續(xù)應(yīng)用規(guī)劃及展望

后續(xù)主要圍繞如下幾個方面做探索

5.1 取代離線報表,提高報表實時性及穩(wěn)定性

離線報表特點是 T - 1,凌晨跑數(shù),以及報表整體依賴鏈路長。兩個特點導(dǎo)致時效性不高是一個方面,另一個方面是,數(shù)據(jù)依賴鏈路長的情況下,中間數(shù)據(jù)出問題容易導(dǎo)致后續(xù)整體依賴延時,而很多異常需要等到報表任務(wù)實際跑的時候,才能暴露出來。并且跑批問題凌晨暴露,解決的時效與資源協(xié)調(diào)都是要降低一個等級的,這對穩(wěn)定性準(zhǔn)時性要求的報表是不可接受的,特別是金融公司來說,通過把報表遷移至實時平臺,不僅僅是提升了報表的時效性,由于抽數(shù)及報表etl是一直再實時跑的,報表數(shù)據(jù)給出的穩(wěn)定性能有一個較大的提升。這是我們Hudi實時落數(shù)據(jù)要應(yīng)用的規(guī)劃之一

5.2 完善監(jiān)控體系,提升落數(shù)據(jù)任務(wù)穩(wěn)定性

目前僅僅做到落數(shù)據(jù)任務(wù)的監(jiān)控,即任務(wù)是否正常運行,有沒有拋異常等等。但實際使用者更關(guān)心數(shù)據(jù)由上游到Hive整條鏈路的監(jiān)控情況。比如數(shù)據(jù)是否有延遲,是否有背壓,數(shù)據(jù)源消費情況,落數(shù)據(jù)是否有丟失,各個task是否有瓶頸等情況,總的來說,用戶希望能更全面細(xì)致的了解到任務(wù)的運行情況,這也是后面的監(jiān)控需要完善的目標(biāo)

5.3 落數(shù)據(jù)中間過程可視化探索

這個是和上面的監(jiān)控有類似的地方,用戶希望確定,一條數(shù)據(jù)從數(shù)據(jù)源接進(jìn)來,經(jīng)過各個算子的處理,它的一些詳細(xì)情況。比如這個數(shù)據(jù)是否應(yīng)該被過濾,處于哪個窗口,各個算子的處理時間等等,否則對于用戶,整個數(shù)據(jù)SQL處理流程是一個黑盒。

以上就是Apache Hudi結(jié)合Flink的億級數(shù)據(jù)入湖實踐解析的詳細(xì)內(nèi)容,更多關(guān)于Apache Hudi結(jié)合Flink的億級數(shù)據(jù)的資料請關(guān)注本站其它相關(guān)文章!

香港服務(wù)器租用

版權(quán)聲明:本站文章來源標(biāo)注為YINGSOO的內(nèi)容版權(quán)均為本站所有,歡迎引用、轉(zhuǎn)載,請保持原文完整并注明來源及原文鏈接。禁止復(fù)制或仿造本網(wǎng)站,禁止在非www.sddonglingsh.com所屬的服務(wù)器上建立鏡像,否則將依法追究法律責(zé)任。本站部分內(nèi)容來源于網(wǎng)友推薦、互聯(lián)網(wǎng)收集整理而來,僅供學(xué)習(xí)參考,不代表本站立場,如有內(nèi)容涉嫌侵權(quán),請聯(lián)系alex-e#qq.com處理。

實時開通

自選配置、實時開通

免備案

全球線路精選!

全天候客戶服務(wù)

7x24全年不間斷在線

專屬顧問服務(wù)

1對1客戶咨詢顧問

在線
客服

在線客服:7*24小時在線

客服
熱線

400-630-3752
7*24小時客服服務(wù)熱線

關(guān)注
微信

關(guān)注官方微信
頂部