为什么 Spark 比 Hadoop Map Reduce 快 [英] Why is Spark faster than Hadoop Map Reduce

查看:36
本文介绍了为什么 Spark 比 Hadoop Map Reduce 快的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

有人可以用字数统计的例子解释一下,为什么 Spark 会比 Map Reduce 快?

Can someone explain using the word count example, why Spark would be faster than Map Reduce?

推荐答案

bafna 的回答提供了故事的记忆方面,但我想补充另外两个重要的事实:DAG 和生态系统

bafna's answer provides the memory-side of the story, but I want to add other two important facts:DAG and ecosystem

  1. Spark 使用惰性求值"来形成连续计算阶段的有向无环图 (DAG).通过这种方式,可以优化执行计划,例如以尽量减少周围的混洗数据.相比之下,这应该通过调整每个 MR 步骤在 MapReduce 中手动完成.(如果你熟悉RDBMS中的执行计划优化或者Apache Tez的DAG式执行会更容易理解这一点)
  2. Spark 生态系统已经建立了一个多功能组件堆栈来处理 SQL、ML、流、图形挖掘任务.但在 hadoop 生态系统中,您必须安装其他软件包才能完成这些单独的事情.

我想补充一点,即使您的数据对于主内存来说太大,您仍然可以通过选择将数据保存在磁盘上来使用 spark.尽管这样做您放弃了内存处理的优势,但您仍然可以从 DAG 执行优化中受益.

And I want to add that, even if your data is too big for main memory, you can still use spark by choosing to persist you data on disk. Although by doing this you give up the advantages of in-memory processing, you can still benefit from the DAG execution optimization.

Quora 上的一些信息丰富的答案:此处此处.

Some informative answers on Quora: here and here.

这篇关于为什么 Spark 比 Hadoop Map Reduce 快的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆