hadoop是基於磁碟的,它的運算結果保存在磁碟當中;而spark的運算是基於記憶體的。因此spark的運算速度是 hadoop的100倍;即使在磁碟當中運算,spark也是hadoop的10倍左右,原因就是spark具有優秀的作業調度策略。 故spark的速度快與hadoop的兩個原因: (1)sp ...
hadoop是基於磁碟的,它的運算結果保存在磁碟當中;而spark的運算是基於記憶體的。因此spark的運算速度是
hadoop的100倍;即使在磁碟當中運算,spark也是hadoop的10倍左右,原因就是spark具有優秀的作業調度策略。
故spark的速度快與hadoop的兩個原因:
(1)spark是基於記憶體,hadoop基於磁碟:
在hadoop中HDFS用於數據的存儲,MapReduce用於計算。 MapReduce:從磁碟中讀取文件->把迭代結果存儲到磁碟中->再從磁碟中讀取文件->.................. Spark:從磁碟中讀取文件->把迭代後的結果存儲到記憶體當中->再從記憶體中讀取數據->.................. Spark的計算速度是hadoop的100倍,即使再磁碟中操作數據也是hadoop的10倍。
(2)spark具有優秀的作業調度策略(使用了有向無環圖,關於這部分會在RDD學習模塊中介紹)。