我同意 iterative
和 interactive
编程范式用Spark比用map-reduce非常好。我也同意我们可以使用HDFS或任何hadoop数据存储,如HBase作为Spark的存储层。
因此,我的问题是--在现实世界中,我们是否有任何用例可以说hadoop MR在这些上下文中比apache spark更好。这里的 "更好 "指的是 performance, throughput, latency
. 是hadoop MR仍然是好的一个做BATCH处理比使用火花。
如果是这样,有谁能告诉 advantages of hadoop MR over apache spark
请将整个讨论范围保持在以下方面: COMPUTATION LAYER
.
正如你所说,在 iterative
和 interactive
在编程方面,spark比hadoop要好。但是spark对内存的需求很大,如果内存不足,很容易出现OOM异常,hadoop可以很好的处理这种情况,因为hadoop有很好的容错机制。
其次,如果发生Data Tilt,spark可能也会崩溃。我比较了spark和hadoop在系统健壮性上的差异,因为这决定了工作的成败。
最近我用一些基准测试了spark和hadoop的性能,根据结果,spark在一些负载上的性能并不比hadoop好,比如kmeans,pagerank。可能是内存的限制吧。