生活随笔
收集整理的這篇文章主要介紹了
大数据生态与Spark简介
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
大數據技術概述
一,大數據時代
三次信息化浪潮: IT領域每個十五年就會發生一次重大變革。
信息科技為大數據時代提供技術支持:
- 存儲設備容量不斷增加
- CPU處理能力大幅度提升
- 網絡帶寬不斷增加
二,大數據概念
大數據不僅僅是數據的“大量化”,而是包含“快速化”,“多樣化”,和“價值化”等多種屬性。數據量大:數據每年都在以50%的速度增長,也就是說每兩年就增長一倍。人類在最近兩年產生的數據量相當于之前產生的全部數據量。數據類型繁多:大數據是由結構化數據和非結構化數據組成的。處理速度快:從數據的生成到消耗,時間窗口非常小,可用于生成決策的時間非常少。價值密度低:價值密度低,商業價值高。
三,大數據的影響
在思維方式上,大數據完全顛覆了傳統的思維方式:①全面而非抽樣 ②效率而非精確 ③相關而非因果大數據的關鍵技術:數據采集,數據存儲和管理,數據處理與分析,數據隱私和安全。大數據的兩大核心技術:分布式存儲以及分布式處理(MapReduce).
四,大數據計算模式
大數據計算模式:批處理計算,流計算,圖計算,查詢分析計算。
五,代表性大數據技術
代表性技術:Hadoop,Spark,Flink,Beam。
Hadoop—MapReduce: MapReduce是將復雜的,運行于大規模集群上的并行計算過程高度抽象到了兩個函數:Map和Reduce。MapReduce 采用“分而治之”的策略,一個存儲在分布式文件系統中的大規模數據集,會被切分成許多獨立的分片(split),這些分片可以被多個Map任務并行處理。
Hadoop—YARN:YARN的目標就是實現“一個集群多個框架”。因為當一個企業同時存在各種不同的業務應用場景時,就需要采用不同的計算框架,例如MapReduce實現離線批處理,Spark實現迭代計算…,然而這些產品大多數是來自不同的開發團隊,具有各自的資源調度管理機制,為了不相互干擾,企業就需要分別安裝不同的計算框架,既“一個框架一個集群”,這就導致了集群資源的利用率非常的低,數據無法共享,維護代價高。這時候在一個集群上部署一個統一的資源調度管理框架------YARN。由YARN為這些計算框架提供統一的資源調度管理服務,實現集群資源共享和資源的彈性收縮,就能有效的提高集群的利用率。不同的計算框架可以共享底層存儲,就避免了數據集跨集群移動。Spark簡介:是基于內存計算的大數據并行計算框架,可用于構建大型的,低延遲的數據分析應用程序,如今成為了Apache軟件基金會最重要的三大分布式計算系統開源項目之一(Hadoop,Soark,Storm)。特點:①運行速度快(使用DAG執行引擎 以支持循環數據流與內存計算),②容易使用(支持JAVA,SCALA,Python和R語言進行編程),③通用性(提供了完整而強大的技術棧),④運行模式多樣(可運行獨立的集群模式,還可運行于Hadoop中)。
Spark架構圖:
Spark生態:
Hadoop與Spark的對比:
? ?hadoop的缺點:①表達能力有限,②磁盤的IO開銷大,③延遲高(在前一個任務執行完成前,其他的任務無法開始,難以勝任復雜,多階段的計算任務)。
? ?相比于Hadoop MapReduce,Spark的優點:①Sparkde 的計算模式也屬于MapReduce,但不局限于Map和Reduce操作,還提供了多種數據集操作類型,編程模型比Hadoop MapReduce更靈活 。②Spark提供了內存計算,對于迭代運算效率更高,③Spark基于DAG的任務調度執行機制,要優于Hadoop MapReduce的迭代執行機制。Fline:開源流處理框架,核心是JAVA和Scala編寫的分布式流數據流引擎,本身也支持迭代算法的執行。
Fline 與 Spark的比較圖:
Beam:大數據的編程模型。基于Beam開發的數據處理程序可以執行在任意的分布式計算引擎上。
? ?Apache Beam的目標是:①提供統一批處理和流處理的編程范式,②能運行在任何可執行的引擎上,③為無限,亂序,互聯網級別的數據集處理提供簡單靈活,功能豐富以及表達能力十分強大的SDK。
總結
以上是生活随笔為你收集整理的大数据生态与Spark简介的全部內容,希望文章能夠幫你解決所遇到的問題。
如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。