Spark与MapReduce对比测评

基本原理方面

MapReduce

  • 基于磁盘的大数据批量处理系统
  • Map和Reduce阶段都是往磁盘读写

Spark

  • 基于RDD(弹性分布式数据集)数据处理。RDD可以显示地(即可指定)存储到磁盘和内存中

总结:Spark比MR更灵活,更快速

模型方面

MapReduce

  • 可以处理超大规模的数据
  • 适合日志分析挖掘等
  • 较少的迭代的长任务需求
  • 结合了数据的分布式计算、存储

Spark

  • 适合海量数据,但不适合超大规模(毕竟数据放在内存中)
  • 适合数据挖掘(迭代中间结果放在内存中,迭代时很快)、机器学习等多轮迭代式计算任务
  • 在处理上是分布式的,但在存储上数据来源于HDFS等第三方系统

总结:Spark在数据挖掘处理方面比MapReduce优越,但在大规模数据处理上,目前MR更适合。

容错性方面

数据的容错性、节点的容错性
MapReduce

  • 数据的读和写都是往HDFS上,HDFS有很强的数据容错的措施

Spark

  • 容错性建立在RDD的Linage上,重新构造RDD

总结:Spark在容错性方面并不比MapReduce优越

当前网速较慢或者你使用的浏览器不支持博客特定功能,请尝试刷新或换用Chrome、Firefox等现代浏览器