<span id="l42vo"></span>
<progress id="l42vo"><big id="l42vo"></big></progress>
  • <th id="l42vo"></th>
    <rp id="l42vo"></rp>
    <em id="l42vo"><strike id="l42vo"></strike></em>
    <li id="l42vo"></li>
    <label id="l42vo"><object id="l42vo"><input id="l42vo"></input></object></label>
  • 教育行業A股IPO第一股(股票代碼 003032)

    全國咨詢/投訴熱線:400-618-4000

    Spark與Hadoop有哪些區別?【大數據培訓】

    更新時間:2020年04月24日15時48分 來源:傳智播客 瀏覽次數:

    大數據培訓就到傳智播客

    Hadoop與Spark都是大數據計算框架,但是兩者各有自己的優勢,Spark與Hadoop的區別主要有以下幾點。
     
    1、編程方式
    Hadoop的MapReduce在計算數據時,計算過程必須要轉化為Map和Reduce兩個過程,從而難以描述復雜的數據處理過程;而Spark的計算模型不局限于Map和Reduce操作,還提供了多種數據集的操作類型,編程模型比MapReduce更加靈活。


    2、數據存儲
    Hadoop的 MapReduce進行計算時,每次產生的中間結果都是存儲在本地磁盤中;而
    Spark在計算時產生的中間結果存儲在內存中。


    3、數據處理
    Hadoop在每次執行數據處理時,都需要從磁盤中加載數據,導致磁盤的I/O開銷較大;而Spark在執行數據處理時,只需要將數據加載到內存中,之后直接在內存中加載中間結果數據集即可,減少了磁盤的1O開銷。


    4、數據容錯
    MapReduce計算的中間結果數據保存在磁盤中,并且 Hadoop框架底層實現了備份機制,從而保證了數據容錯;同樣 Spark RDD實現了基于 Lineage的容錯機制和設置檢查點的容錯機制,彌補了數據在內存處理時斷電丟失的問題。
    在Spark與Hadoop的性能對比中,較為明顯的缺陷是Hadoop中的MapReduce計算延遲較高,無法勝任當下爆發式的數據增長所要求的實時、快速計算的需求。

    spark執行

    從上圖可以看出,使用Hadoop MapReduce進行計算時,每次計算產生的中間結果都需要從磁盤中讀取并寫入,大大增加了磁盤的I/O開銷,而使用Spark進行計算時,需要先將磁盤中的數據讀取到內存中,產生的數據不再寫入磁盤,直接在內存中迭代處理,這樣就避免了從磁盤中頻繁讀取數據造成的不必要開銷。通過官方計算測試,Hadoop與Spark執行邏輯回歸所需的時間對比,如圖所示。

    執行回歸時間對比
     
    從上圖可以看出,Hadoop與Spark執行的所需時間相差超過100倍。


    猜你喜歡:

    Spark生態系統包含哪些組件?

    中文字幕手机在线看片不卡,国产日韩欧美不卡在线二区,国产精品国产自线拍,么公的粗大征服了我 小说 网站地图