spark为什么比mapreduce快?

💡 原文中文,约800字,阅读约需2分钟。
📝

内容提要

Spark通过DAG计算模型减少磁盘I/O,优化shuffle过程,并采用多线程模型降低任务启动时间,因此比MapReduce更快。Spark适合迭代计算,而MapReduce因多进程模型启动开销大。

🎯

关键要点

  • Spark通过DAG计算模型减少磁盘I/O,而不是shuffle次数。
  • DAG模型允许连续shuffle,减少了落盘次数。
  • Spark在shuffle时优化了排序过程,只有部分场景需要排序。
  • Spark适合迭代计算,能够从缓存中获取数据,减少加载时间。
  • MapReduce采用多进程模型,启动时间较长,而Spark采用多线程模型,减少了启动开销。
  • 多线程模型在资源控制上存在争用问题,但能提高任务启动效率。
➡️

继续阅读