Spark環境搭建(五)-----------Spark生態圈概述與Hadoop對比

  Spark:快速的通用的分佈式計算框架


 

  概述和特色:

    1) Speed,(開發和執行)速度快。基於內存的計算;DAG(有向無環圖)的計算引擎;基於線程模型;python

    2)Easy of use,易用 。 多語言(Java,python,scala,R); 多種計算API可調用;可在交互式模式下運行;數據庫

    3)Generality  通用。能夠一站式解決多個不一樣場景的應用業務框架

      

        Spark Streaming :用來作流處理運維

        MLlib : 用於機器學習機器學習

        GraphX:用來作圖形計算的分佈式

    4) Runs Everywhere oop

      (1)能夠運行在Hadoop的yarn,Mesos,standalone(Sprk自帶的)這些資源管理和調度的程序之上學習

      (2) 能夠鏈接包括HDFS,Cassandra,HBase,S3這些數據源 spa

          

  產生背景:

    1)MapReduce 侷限性

      (1)代碼繁瑣(官網有WordOCunt案例)線程

      (2)效率低下:

          a) 有結果寫入磁盤,下降效率;

          b) 經過進程模型,銷燬建立效率低

      (3)只能支持map和reduce方法

      (4) 不適合迭代屢次,交互式,流水的處理

    2) 框架的多樣化

      (1)批處理(離線):MapReduce,Hive,Pig

      (2)流式處理(實時):Storm,Jstorm

      (3)交互式計算 :Impala

    綜上: 框架的多樣化致使生產時所須要的框架繁多,學習運維成本較高,那麼有沒有一種框架,

      既能執行效率高,學習成本低,還能支持批處理和流式處理與交互計算呢?

    結論:Spark誕生

 

  Spark與Hadoop對比:

      Hadoop生態系統

 

          

          Hive:數據倉庫

          R:數據分析

          Mahout:機器學習庫

          pig:腳本語言,跟Hive相似

          Oozie:工做流引擎,管理做業執行順序

          Zookeeper:用戶無感知,主節點掛掉選擇從節點做爲主的

          Flume:日誌收集框架

          Sqoop:數據交換框架,例如:關係型數據庫與HDFS之間的數據交換

          Hbase : 海量數據中的查詢,至關於分佈式文件系統中的數據庫

 

     BDAS:Berkeley Data Analytics Stack(伯克利數據分析平臺)

      

 

      

 

     Spark與Hadoop生態圈對比

      

 

     注意:在對實時的查詢來講,Spark只是一個快速的分佈式計算框架,因此沒有存儲的框架,可是能夠鏈接多個存儲的數據源

    Hadoop與Spark對比

      

    MapReduce與Spark對比:

        MapReduce:若進行屢次計算,MP則須要將上一次執行結果寫入到磁盤,叫作數據落地

        Spark:直接將存儲在內存中的結果拿來使用,沒有數據落地

        

 

  Spark與Hadoop的協做性

    

 

 

 

Spark概述和與Hadoop對比

相關文章
相關標籤/搜索