天天看點

Spark——分布式并行計算概念一,概念二,基于資料集的計算架構三,Spark基本概念及拆分任務的流程

   一個資源密集型的任務,需要一組資源并行的完成,當計算機任務過重,就把計算任務拆分,然後放到多個計算節點上同時執行,這就是分布式并行計算啦。分布式并行計算,強調用硬體的堆疊,來解決問題。

   spark解決的問題:有了spark,隻要把資料和程式交給spark,它會機智地進行資料切分、算法複制、分布執行、結果合并。spark屏蔽了分布并行計算的細節,讓我們可以快速開發分布并行的應用。

   spark的計算範式是資料集上的計算,在實用spark的時候,要按照spark的範式寫算法。Spark在資料集的層次上進行分布并行計算,它隻認成堆的資料。

    送出給spark的任務,都必須滿足兩個條件:

資料是可以分塊的,每塊構成一個集合。

算法隻能在集合級别執行操作。

     比如,對于文本檔案,在Spark中,一行就是一條記錄,若幹條記錄組成一個集合。我們 原來的算法直接在每一行上進行計算,就不行了。需要先建構資料集,然後通過資料集的操作, 實作我們的目的。

     是以,Spark是一種粗粒度、基于資料集的并行計算架構。

  1,将資料載入并構造資料集,在spark中,這個資料集被稱為RDD(彈性分布資料集)。

  2,對資料集進行map操作,指定行為

  3,對map中的資料集進行collect操作,并獲得合并的結果。

繼續閱讀