1

我有三个机架服务器,每个服务器有五个节点,从节点 1 到节点 15,我编写了一个文件 file.txt,它分为四个数据块 A、B、C、D 并存储在节点 1(包含块 A、 B)和节点 11(包含块 C、D)。作业跟踪器为节点 1 和 11 的任务跟踪器提供代码以在其本地块中执行地图任务。

我的问题是:

  1. 作业跟踪器如何决定必须在哪个节点执行 reduce 作业。是因为机架意识吗?

  2. 在节点 2、节点 6 和节点 12 中,哪一个是执行 reduce 任务的最佳节点,假设这些节点当前没有被任何任务占用?

  3. 在节点上的map任务结束后,是否可以在节点1或节点11中的任何一个上执行reduce任务。

提前致谢。

4

1 回答 1

1

1)Job Tracker 可以选择Node1 或Node 11 进行Reduce 操作,它可以选择需要较少数据传输的节点。

2) Node2 或 Node12 中的任何一个

3) 是的。要开始 Reduce 操作,需要将所有 map 输出复制到要执行 reduce 操作的节点。因此,一旦节点 1 和节点 11 映射功能完成,作业跟踪器可能会在节点 1 或节点 11 上启动缩减操作。

希望这可以帮助。

于 2013-11-07T07:55:01.473 回答