但不同于MapReduce的是Job中间输出结果可以保存在内存中,从而不再需要读写HDFS,因此Spark能更好地适用于数据挖掘与机器学习等需要迭代的map reduce的算法。
相对于Hadoop,它主要有以下优势:
- 启用了内存分布数据集,除了能够提供交互式查询外,它还可以优化迭代工作负载。
- 提供了高的性能和大数据处理能力,使得用户可以快速得到反馈体验更好。
- 提供的数据集操作类型有很多种,不像Hadoop只提供了Map和Reduce两种操作。
- 出色的支持Interactive Query、流计算、图计算等。
- 在机器学习方面有着无与伦比的优势,特别适合需要多次迭代计算的算法。
- 拥有非常出色的容错和调度机制,确保系统的稳定运行。