3.1.1 Lambda架構(gòu)
來自Apache Flink 中文學習網(wǎng)站 ververica.cn 侵權(quán)告知立刪
3.1.2 Kappa架構(gòu)
來自Apache Flink 中文學習網(wǎng)站 ververica.cn 侵權(quán)告知立刪
3.1.3 實時olap變體架構(gòu)
來自Apache Flink 中文學習網(wǎng)站 ververica.cn 侵權(quán)告知立刪
3.1.4 常見架構(gòu)對比
來自Apache Flink 中文學習網(wǎng)站 ververica.cn 侵權(quán)告知立刪
ps:lambda架構(gòu)
開發(fā)割裂感:
? 表結(jié)構(gòu)不同
? sql語法不同
資源浪費:
? 重復計算
? 重復存儲
集群維護:
? 組件不同
? 計算引擎不同
數(shù)據(jù)一致性
3.2 實時數(shù)倉架構(gòu)
3.2.1 方案一
優(yōu)點:
? 便于數(shù)據(jù)回溯、重算和數(shù)據(jù)質(zhì)量驗證。
缺點:
? 通過批處理重算,需要維護兩套代碼,開發(fā)和維護成本高。
? 需要兩套計算資源
適用場景:
? 超大規(guī)模歷史數(shù)據(jù)計算,且這種場景比較頻繁。
? 對數(shù)據(jù)質(zhì)量要求極高,需要比對實時和離線的計算結(jié)果,甚至利用離線去修正實時的計算結(jié)果。
3.2.2 方案二
優(yōu)點:
? 無需維護兩套代碼,開發(fā)迭代速度快。
? 數(shù)據(jù)回溯和重算方便,重算時間根據(jù)需求回溯的時間范圍定。
? 只需流計算資源,資源占用小
缺點:
? ODS\DWD部分數(shù)據(jù)“不可見”,原始數(shù)據(jù)和中間數(shù)據(jù)不便于查詢(解決方案:可通過重新消費指定時間范圍的數(shù)據(jù)查詢,或?qū)胄枰臄?shù)據(jù)到olap引擎)
? 依賴業(yè)務(wù)端反饋問題(解決方案:設(shè)計數(shù)據(jù)質(zhì)量監(jiān)控指標,實時監(jiān)控報警)
適用場景:
ODS\DWD查詢不頻繁等
3.2.3 方案三
相對于方案二:
? 增加ODS層落地hive,排查分析原始數(shù)據(jù)比較方便,恢復歷史數(shù)據(jù)的時候可獲取hive數(shù)據(jù)寫入kafka,然后按原流處理的邏輯重新處理即可,只需修改數(shù)據(jù)源為歷史數(shù)據(jù)對應的topic。
? 需新增kafka寫入hive邏輯
? 需新增從hive讀取數(shù)據(jù)寫入kafka
? 需新增整條鏈路歷史數(shù)據(jù)對應的topic