Hadoop MapReduce作业的生命周期

首先,我们来看如下的一张图:

Hadoop MapReduce作业的生命周期

作业的整个运行过程分为5个步骤:

1、作业的提交和初始化。

用户提交作业后,由JobClient实例将作业相关信息(jar包、配置文件xml、分片元信息等)上传到HDFS。

然后,JobClient通过RPC通知JobTracker。JobTracker接收到新作业请求后,由作业调度模块对作业进行初始化,为作业创建一个JobInProgress对象以跟踪作业的运行状况,而JobInProgress则会为每个Task创建一个TaskInProgress对象以跟踪每个任务的运行状态,而TaskInProgress可能需要管理多个Task运行尝试(Task Attempt)。

2、任务调度和监控。

通过MapReduce的架构简介,我们知道,任务的调度和监控由JobTracker完成。TaskTracker通过Heartbeat周期性地向JobTracker汇报本节点的资源使用情况,一旦出现空闲资源,任务调度器按照一定的策略选择合适的任务使用该空闲资源。另外,JobTracker还跟踪整个作业的运行过程,保证作业最终顺利完成。

3、任务运行环境的准备。

运行环境包括JVM启动和资源隔离,这些都由TaskTracker实现。

4、任务的执行。

启动Task后,每个Task的最新进度先由Task通过RPC汇报给TaskTracker,再由TaskTracker汇报给JobTracker。

5、作业运行完成。

直到所有Task执行完毕后,整个作业才算执行成功。

相关阅读

Ubuntu 13.04上搭建Hadoop环境

Ubuntu 12.10 +Hadoop 1.2.1版本集群配置

Ubuntu上搭建Hadoop环境(单机模式+伪分布模式)

Ubuntu下Hadoop环境的配置

单机版搭建Hadoop环境图文教程详解

搭建Hadoop环境(在Winodws环境下用虚拟机虚拟两个Ubuntu系统进行搭建)

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/7f4266ceca4a467f414d124287a929ca.html