0

我试图了解 Map Reduce 的一般工作原理。所以我所知道的是,有一些 Mapper 在多台计算机上并行运行并创建一个结果集,然后由在多台计算机上并行运行的 Reducers 使用该结果集来创建预期的数据集。

我的问题是:

  • 一项作业是否在固定数量的文件上运行?因此,在 Job 开始时,需要处理固定数量的文件来处理和生成一些数据。

  • 如果不是,那么我们如何处理可能来自不同来源的数据流,比如 Twitter 提要等?

  • 如果是,请解释 Map Reduce 如何找出所有 Mappers 何时完成以及 Reducing 任务应该开始,因为可能没有参考点。

4

1 回答 1

1

答案:

  1. 是的。基本上工作开始,处理文件并结束。永远不要跑。

  2. 流处理可以由 Storm 或类似技术处理,但不能单独使用 Hadoop,因为它是一个批处理系统。您还可以了解Hadoop YarnStorm 如何协同工作

  3. 应该是一个参考点,因为在不同节点上运行的 tasktracker 将定期运行的不同任务(Map 任务 /Reduce 任务)的状态信息发送给协调作业运行的 jobtracker。

于 2013-10-02T06:09:22.387 回答