柚子快報邀請碼778899分享:Lambda架構(gòu)
柚子快報邀請碼778899分享:Lambda架構(gòu)
1.Lambda架構(gòu)對大數(shù)據(jù)處理系統(tǒng)的理解
? ? ? ? ?Lambda架構(gòu)由Storm的作者Nathan?Marz提出,其設(shè)計目的在于提供一個能滿足大數(shù)據(jù)系統(tǒng)關(guān)鍵特性的架構(gòu),包括高容錯、低延遲、可擴展等。其整合離線計算與實時計算,融合不可變性、讀寫分離和復(fù)雜性隔離等原則,可集成Hadoop、Kafka、Spark、Storm等各類大數(shù)據(jù)組件。Lambda是用于同時處理離線和實時數(shù)據(jù)的,可容錯的,可擴展的分布式系統(tǒng)。它具備強魯棒性,提供低延遲和持續(xù)更新。
2.Lambda架構(gòu)應(yīng)用場景
? ? ? ? 1.機器學(xué)習(xí)中的Lambda架構(gòu)
? ? ? ? 2.物聯(lián)網(wǎng)的Lambda架構(gòu)
? ? ? ? 3.流處理和Lambda架構(gòu)挑戰(zhàn)
3.Lambda架構(gòu)介紹
? ? ? ? ?如圖1所示,Lambda架構(gòu)可分解為三層,即批處理層、加速層和服務(wù)層。
? ? ? ? (1)批處理層(Batch?Layer):存儲數(shù)據(jù)集,Batch?Layer在數(shù)據(jù)集上預(yù)先計算查詢函數(shù),并構(gòu)件查詢所對應(yīng)的View。Batch?Layer可以很好地處理離線數(shù)據(jù),但有很多場景數(shù)據(jù)是不斷實時生成且需要實時查詢處理,對于這種情況,Speed?Layer更為適合。
? ? ? ? (2)加速層(Speed?Layer):Batch?Layer處理的最近的增量數(shù)據(jù)流。Speed?Layer為了效率,在接收到新的數(shù)據(jù)后會不斷更新Real-time?View,而Batch?Layer是根據(jù)全體離線數(shù)據(jù)集直接得到Batch?View。
? ? ? ? (3)服務(wù)層(Serviing?Layer):Serving?Layer用于合并Batch?View和Real-time?View中的結(jié)果數(shù)據(jù)集到最終數(shù)據(jù)集。????????
圖1?Lambda架構(gòu)?
4.Lambda架構(gòu)優(yōu)缺點
? ? ? ? 1.優(yōu)點
? ? ? ? ?(1)容錯性好。Lambda架構(gòu)誒大數(shù)據(jù)系統(tǒng)提供了更友好的容錯能力,一旦發(fā)生錯誤,我們可以修復(fù)算法或從頭開始重新計算視圖。
? ? ? ? (2)查詢靈活度高。批處理層允許針對任何數(shù)據(jù)進(jìn)行臨時查詢。
? ? ? ? (3)易伸縮。所有的批處理層、加速層和服務(wù)層都很容易擴展。因為它們都是完全分布式的系統(tǒng),我們可以通過增加新機器來輕松地擴大規(guī)模。
? ? ? ? (4)易擴展。添加視圖是容易的,只是給主數(shù)據(jù)添加幾個新的函數(shù)。
? ? ? ? 2.缺點
? ? ? ? ?(1)全場景覆蓋帶來的編碼開銷。
? ? ? ? (2)針對具體場景重新離線訓(xùn)練一遍益處不大。
? ? ? ? (3)重新部署和遷移成本很高。
?
柚子快報邀請碼778899分享:Lambda架構(gòu)
相關(guān)鏈接
本文內(nèi)容根據(jù)網(wǎng)絡(luò)資料整理,出于傳遞更多信息之目的,不代表金鑰匙跨境贊同其觀點和立場。
轉(zhuǎn)載請注明,如有侵權(quán),聯(lián)系刪除。