如何在Hadoop 1中启动MapReduce应用程序

时间:2020-02-23 14:33:32  来源:igfitidea点击:

要了解JobTracker和TaskTracker如何运行以执行MapReduce操作,请查看MapReduce应用程序的执行。
该图显示了交互,以下步骤列表逐播放:

  • 客户端应用程序向JobTracker提交应用程序请求。

  • JobTracker确定执行整个应用程序所需的处理资源。
    这是通过请求文件和数据块的位置和数据块来完成的,从NameNode中需要,并计算处理所有这些数据的映射任务和缩小任务的数量。

  • JobTracker查看从节点的状态,并队列所有地图任务并减少执行任务。

  • 由于处理插槽可在从节点上可用,因此将映射任务部署到从节点。
    分配给特定数据块的地图任务被分配给存储相同数据的节点。

  • JobTracker监视任务进度,并且在任务失败或者节点发生故障时,任务将在下一个可用插槽中重新启动。
    如果在四次尝试后(这是默认值并且可以自定义),则相同的任务发生故障,则整个作业将失败。

  • 映射任务完成后,将任务从地图任务中的临时结果集进行处理。

  • 结果集返回到客户端应用程序。

更复杂的应用程序可以具有多轮地图/减少阶段,其中一轮的结果用作第二轮的输入。
这与SQL样式工作负载非常常见,其中有例如连接和逐个操作。