为什么spark比Hadoop MapReduce快?根据我的理解,如果spark由于内存处理而更快,那么Hadoop也会将数据加载到RAM中,然后再进行处理。每个程序首先加载到RAM中,然后执行。那么我们怎么能说spark在做内存处理,为什么其他大数据技术不能做同样的事情呢?你能解释一下吗?
Spark是从MapReduce中学到的所有经验中创建出来的。它不是第二代,它使用类似的概念进行了重新设计,但真正了解了map reduce中缺少的/做得不好的地方。
MapReduce对数据进行分区,读取数据,进行映射,写入磁盘,发送给reducer, reducer将数据写入磁盘,然后读取,然后缩减,然后写入磁盘。大量的写作和阅读。如果你想做另一个操作,你重新开始整个循环。
Spark,尝试将其保存在内存中,虽然它执行多个映射/操作,但它仍然会传输数据,但只有在必须时才会传输数据,并使用智能逻辑来找出如何优化您要求它做的事情。内存是有用的,但不是它唯一的作用。