Spark任务设计是基于线程,而Hadoop MR任务设计是基于进程.从线程和进程区别得角度看,线程之间是内存是共享的,所以任务之间可以共享内存,这也是Spark基于内存的说法的原因,而进程只能基于磁盘进行共享数据,这是MR基于磁盘说法的原因.直接体现在任务之间的通信问题的.由此会引申到MR有更冗余的hdfs读写、JVM优化、reduce端的基于内存还是磁盘等问题。
Spark比Map Reduce快的本质原因?
最新推荐文章于 2024-10-13 15:54:09 发布
Spark任务设计是基于线程,而Hadoop MR任务设计是基于进程.从线程和进程区别得角度看,线程之间是内存是共享的,所以任务之间可以共享内存,这也是Spark基于内存的说法的原因,而进程只能基于磁盘进行共享数据,这是MR基于磁盘说法的原因.直接体现在任务之间的通信问题的.由此会引申到MR有更冗余的hdfs读写、JVM优化、reduce端的基于内存还是磁盘等问题。