Spark 为什么比 MapReduce 快

Spark 为什么比 MapReduce 快?

  1. Spark 是基于内存计算,MapReduce 是基于磁盘运算,所以速度快
  2. MapReduceShuffle 时需要花费大量时间进行排序;SparkShuffle 时则只有部分场景才需要排序。
  3. MapReduce 的 Map TaskReduce Task 都是进程级别的,每次启动都需要重新申请资源,消耗了不必要的时间;而 Spark Task 则是基于线程模型的,Spark 通过复用线程池中的线程来减少启动、关闭 task 所需要的开销。
  4. Spark 还拥有容错机制Lineage

参考链接