長沙大數據開發培訓常用的幾種大數據架構是
2022-08-15點擊量:4854
常用的幾種大數據架構是什么?學習大數據開發,掌握大數據架構是非常有必要的,下面我們就通過下文的學習來掌握常用的幾種大數據架構是什么。常用的幾種大數據架構是什么?傳統大數據架構之所以叫傳統大數據架構,是因為其定位是為了解決傳統BI的問題,簡單來說,數據分析的業務沒有發生任何變化,但是因為數據量、性能等問題導致系統無法正常使用,需要進行升級改造,那么此類架構便是為了解決這個問題。可以看到,其依然保留了ETL的動作,將數據經過ETL動作進入數據存儲。優點:簡單,易懂,對于BI系統來說,基本思想沒有發生變化,變化的僅僅是技術選型,用大數據架構替換掉BI的組件。缺點:對于大數據來說,沒有BI下如此完備的Cube架構,雖然目前有kylin,但是kylin的局限性非常明顯,遠遠沒有BI下的Cube的靈活度和穩定度,因此對業務支撐的靈活度不夠,所以對于存在大量報表,或者復雜的鉆取的場景,需要太多的手工定制化,同時該架構依舊以批處理為主,缺乏實時的支撐。適用場景:數據分析需求依舊以BI場景為主,但是因為數據量、性能等問題無法滿足日常使用。流式架構在傳統大數據架構的基礎上,流式架構非常激進,直接拔掉了批處理,數據全程以流的形式處理,所以在數據接入端沒有了ETL,轉而替換為數據通道。經過流處理加工后的數據,以消息的形式直接推送給了消費者。雖然有一個存儲部分,但是該存儲更多的以窗口的形式進行存儲,所以該存儲并非發生在數據湖,而是在外圍系統。優點:沒有臃腫的ETL過程,數據的實效性非常高。缺點:對于流式架構來說,不存在批處理,因此對于數據的重播和歷史統計無法很好的支撐。對于離線分析僅僅支撐窗口之內的分析。適用場景:預警,監控,對數據有有效期要求的情況。Lambda架構Lambda架構算是大數據系統里面舉足輕重的架構,大多數架構基本都是Lambda架構或者基于其變種的架構。Lambda的數據通道分為兩條分支:實時流和離線。實時流依照流式架構,保障了其實時性,而離線則以批處理方式為主,保障了最終一致性。什么意思呢?流式通道處理為保障實效性更多的以增量計算為主輔助參考,而批處理層則對數據進行全量運算,保障其最終的一致性,因此Lambda最外層有一個實時層和離線層合并的動作。優點:既有實時又有離線,對于數據分析場景涵蓋的非常到位。缺點:離線層和實時流雖然面臨的場景不相同,但是其內部處理的邏輯卻是相同,因此有大量榮譽和重復的模塊存在。適用場景:同時存在實時和離線需求的情況。Kappa架構Kappa架構在Lambda的基礎上進行了優化,將實時和流部分進行了合并,將數據通道以消息隊列進行替代。因此對于Kappa架構來說,依舊以流處理為主,但是數據卻在數據湖層面進行了存儲,當需要進行離線分析或者再次計算的時候,則將數據湖的數據再次經過消息隊列重播一次則可。優點:Kappa架構解決了Lambda架構里面的冗余部分,以數據可重播的超凡脫俗的思想進行了設計,整個架構非常簡潔。缺點:雖然Kappa架構看起來簡潔,但是施難度相對較高,尤其是對于數據重播部分。適用場景:和Lambda類似,改架構是針對Lambda的優化。Unifield架構以上的種種架構都圍繞海量數據處理為主,Unifield架構則更激進,將機器學習和數據處理揉為一體,從核心上來說,Unifield依舊以Lambda為主,不過對其進行了改造,在流處理層新增了機器學習層。可以看到數據在經過數據通道進入數據湖后,新增了模型訓練部分,并且將其在流式層進行使用。同時流式層不單使用模型,也包含著對模型的持續訓練。優點:Unifield架構提供了一套數據分析和機器學習結合的架構方案,非常好的解決了機器學習如何與數據平臺進行結合的問題。缺點:Unifield架構實施復雜度更高,對于機器學習架構來說,從軟件包到硬件部署都和數據分析平臺有著非常大的差別,因此在實施過程中的難度系數更高。適用場景:有著大量數據需要分析,同時對機器學習方便又有著非常大的需求或者有規劃。...