hadoop和spark的区别

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学习模块中介绍)。

原文地址:https://www.cnblogs.com/yuming226/p/8117553.html