MapReduce 作业提交执行过程代码分析(Hadoop 1.2.1)
来源:互联网 发布:平台软件下载 编辑:程序博客网 时间:2024/06/03 06:43
MR工作过程大致分为以下几步:
1:作业配置
2:提交作业
2.1:从JobTracker获取新的JobID。
2.2:将该Job相关的资源(jar,libjars)发送到JobTracker。
2.3:计算输入分片。
2.4:将job.xml发送到JobTrack。
这样就将Job发送给JobTracker。
3:作业初始化
3.1:将接收到的Job放到队列中并生成与之对应的JobInProgress对象来管理该Job。
3.2:JobInProgress调用initTasks()来初始化Task
3.2.1:创建分片并为每个分片生成MapTask和ReduceTask,并生成与之对应的TaskInProgress来管理Task。
3.2.2:将MapTask放入名为 nonRunningMapCache 的Set 中。
3.2.2:将ReduceTask放入名为 nonRunningReduces 的Set中。
这样Task就初始化好了,
4:任务分配
4.1:TaskTracker通过心跳机制与JobTracker通信,当TaskTracker有足够的资源(磁盘,cpu,slot空闲)时,从JobTracker那里获取任务。
4.2:JobTracker 通过TaskSchedule 来分配任务(map任务和reduce任务)。
5:任务执行
5.1:TaskTracker拿到任务之后,通过TaskLauncher.startNewTask()来执行任务。
6:进度和状态更新
TaskTracker上该Job的任务都完成了汇报给JobTracker
7:作业完成
JobTracker修改Job的状态,返回给JobClient。
下面是执行的时序图
0 0
- MapReduce 作业提交执行过程代码分析(Hadoop 1.2.1)
- Hadoop MapReduce作业提交与初始化过程分析
- (大数据之MapReduce) Hadoop作业提交分析(四)
- hadoop作业提交和MapReduce基础分析
- Hadoop-2.4.1源码分析--MapReduce作业切片(Split)过程
- hadoop2提交到Yarn: Mapreduce执行过程分析1
- hadoop2提交到Yarn: Mapreduce执行过程分析1
- hadoop2提交到Yarn: Mapreduce执行过程分析1
- MapReduce作业提交过程
- 【Hadoop】MapReduce笔记(一):MapReduce作业运行过程、任务执行
- MapReduce作业执行过程
- Hadoop-2.7.3源码分析:MapReduce作业提交源码跟踪
- Hadoop-2.4.1源码分析--MapReduce作业(job)提交源码跟踪
- 【MR原理-2】MapReduce作业提交与初始化过程分析
- Hadoop作业提交分析
- hadoop之MapReducer作业的提交执行过程
- Hadoop源码分析23:MapReduce的Job提交过程
- MapReduce作业提交源码分析
- 三角00
- Servlet的运行过程
- activiti自定义流程之Spring整合activiti-modeler5.16实例(四):部署流程定义
- 排序算法--冒泡排序法
- IOS学习之—— 定时器 NSTimer 和 CADisplayLink 类的使用
- MapReduce 作业提交执行过程代码分析(Hadoop 1.2.1)
- 学习笔记之2016.3.30
- img标签没有文字提示的问题
- matlab进度条
- POJ2229 Sumsets(DP)
- Windows7+Pycharm搭建Spark的开发环境
- Java虚拟机学习 - 内存调优
- 【Redis源码剖析】 - Redis内置数据结构之字典dict
- ZOJ 2836 Number Puzzle