了解map / reduce过程。几乎没有问题

时间:2013-12-15 17:23:11

标签: hadoop mapreduce

以下是序列中的步骤,两者之间存在问题。如果我错了,请纠正我,并详细说明一下。

  • 客户端/用户将请求提交给JobTracker。 JobTracker是一个驻留在名称节点中的软件。
  • JobTracker将作业分成小的子问题并提供给TaskTracker。 TaskTracker是驻留在数据节点中的软件。 TaskTracker可能会再次执行此操作,从而导致多级树结构。
  • 映射步骤仅在TaskTracker中发生,而不在JobTracker中发生?
  • 进行随机排序。此步骤是在Mapper步骤还是Reducer步骤中进行的?
  • shuffle和sort的输出被送入Reducer步骤?
  • reducer步骤仅在JobTracker中发生,而不在TaskTracker中发生?
  • Reducer步骤,即JobTracker,而不是TaskTracker组合数据并将输出提供给客户端/用户。
  • 只使用1个reducer来组合结果?

由于

2 个答案:

答案 0 :(得分:1)

  

客户端/用户将请求提交给JobTracker。 JobTracker是一个驻留在名称节点中的软件。

JobTracker是一个守护程序,可以驻留在namenode以外的单独机器中。

  

JobTracker将作业分成小的子问题并提供给TaskTracker。

JobTracker将MapReduce任务分配到群集中的特定节点,理想情况下是具有数据的节点,或者至少位于同一机架中的节点。

  

TaskTracker是驻留在数据节点中的软件。 TaskTracker可能会再次执行此操作,从而导致多级树结构。

通常是的。 TaskTracker可以单独运行,但它肯定需要一个datanode才能在某个地方使用。

  

映射步骤仅在TaskTracker中发生,而不在JobTracker中发生?

地图任务由tasktracker

启动
  

进行随机排序。此步骤是在Mapper步骤还是Reducer步骤中进行的?

随机和排序过程实际上是在地图阶段和减少阶段之间。但它们仅与减少阶段相关。没有减少阶段的洗牌和排序将不会发生。所以,我们可以说 - Reducer有3个主要阶段:shuffle,sort和reduce。

  

shuffle和sort的输出被送入Reducer步骤?

在shuffle和sort中,框架通过HTTP获取所有映射器的输出的相关分区。 Reducer的输入是映射器的排序输出。

  

reducer步骤仅在JobTracker中发生,而不在TaskTracker中发生?

TaskTracker启动了减少任务。

  

Reducer步骤,即JobTracker,而不是TaskTracker组合数据并将输出提供给客户端/用户。

减少任务应该在几个节点中并行运行并将结果发送到HDFS。您可以从不同的Reducer中读取最终数据集中的输出数据,并根据需要将它们组合在MapReduce驱动程序中。

  

只使用1个reducer来组合结果?

这取决于你想做什么。但是如果要在单个reduce任务中处理大量数据,那么单个reduce任务肯定会因缺乏并行性而降低性能。

答案 1 :(得分:0)

确实你需要这个:Hadoop: The Definitive Guide, 3rd Edition.关于这个主题的最有用的指南。

一些注意事项:

  1. Hadoop主要是两件事的结合:HDFS作为“存储”,MapReduce框架作为“CPU”。
  2. NameNode与HDFS相关,JobTracker与MapReduce相关。 MapReduce使用HDFS服务,但JobTracker和NameNode是完全不同的服务,不必位于同一节点上。
  3. 同样,DataNode是HDFS实体,但TaskTracker是MapReduce的组件,它们是独立的。在实践中,它们通常位于同一节点上,但不是固定的。
  4. 作业步骤本身由TaskTracker执行。 JobTracker就像调度程序。这与Map和Reduce步骤有关。不要忘记Combiner。
  5. 不,你可以使用1个以上的Reducer,你可以控制它,每个映射器最多可以使用1个合并器,因为合成器就在mapper之后发生。
  6. 随机播放过程与mapper(或合成器)输出有关,因此逻辑上它更靠近mapper而不是reducer,但实际上你不应该依赖于它。你的自由是接下来的记录和过程。另外,如果配置了0个reducer,你就不会有像shuffle这样的东西。
  7. 不要试图用这样的Q& A网站建议取代真正的知识。不起作用: - )。
  8. 希望得到这个帮助。