Hadoop源码分析30 JobInProgress 的 TaskInProgress 执行情况
来源:互联网 发布:普中科技单片机论坛 编辑:程序博客网 时间:2024/06/04 19:33
提交命令行:hadoop
JobTracker已生成JobInProgress(job_201404200630_0001),包括以下TaskInProgress:
maps[0](task_201404200630_0001_m_000000)
maps[1](task_201404200630_0001_m_000001)
maps[2](task_201404200630_0001_m_000002)
reduces[0](task_201404200630_0001_r_000000)
reduces[1](task_201404200630_0001_r_000001)
cleanup[0](task_201404200630_0001_m_000003,map的cleanup)
cleanup[1](task_201404200630_0001_r_000002,reduce的cleanup)
setup[0](task_201404200630_0001_m_000004,map的setup)
setup[1](task_201404200630_0001_r_000003,reduce的setup)
RPC请求:heartbeat from10.1.1.102
处理:获得setup[0](TaskInProgress,attempt_201404200630_0001_m_000004),封装成MapTask(attempt_201404200630_0001_m_000004_0),再封装成LaunchTaskAction
返回:1个LaunchTaskAction(setup[0])
RPC请求:heartbeat from10.1.1.103
处理:没有获得Task
返回:[]
RPC请求:heartbeat from10.1.1.102
处理:Task(attempt_201404200630_0001_m_000004)成功——>setup[0](task_201404200630_0001_m_000004)成功
获得maps[0](task_201404200630_0001_m_000000),封装成MapTask(attempt_201404200630_0001_m_000000_0),再封装成LaunchTaskAction
获得maps[1](task_201404200630_0001_m_000001),封装成MapTask(attempt_201404200630_0001_m_000001_0),再封装成LaunchTaskAction
获得setup[0](attempt_201404200630_0001_m_000004_0),再封装成KillTaskAction
返回:2个LaunchTaskAction(maps[0],maps[1]),1个KillTaskAction(setup[0])
RPC请求:heartbeat from10.1.1.103
处理:获得maps[2](task_201404200630_0001_m_000002),封装成MapTask(attempt_201404200630_0001_m_000002_0),再封装成LaunchTaskAction
返回:1个LaunchTaskAction(maps[2])
RPC请求:heartbeat from10.1.1.102
处理:Task(attempt_201404200630_0001_m_000000_0)成功——>maps[0](task_201404200630_0001_m_000009)成功
Task(attempt_201404200630_0001_m_000001_0)成功——>maps[1](task_201404200630_0001_m_000001)成功
获得maps[2](task_201404200630_0001_m_000002),封装成MapTask(attempt_201404200630_0001_m_000002_1),再封装成LaunchTaskAction
获得reduces[0](task_201404200630_0001_r_000000),封装成ReduceTask(attempt_201404200630_0001_r_000000_0),再封装成LaunchTaskAction
返回:2个LaunchTaskAction(maps[2]、reduces[0])
RPC请求:heartbeat from10.1.1.103
处理:Task(attempt_201404200630_0001_m_000002_0)成功——>maps[2](task_201404200630_0001_m_000002)成功
获得reduces[1](task_201404200630_0001_r_000001),封装成ReduceTask(attempt_201404200630_0001_r_000001_0),再封装成LaunchTaskAction
返回:1个LaunchTaskAction(reduces[1])
RPC请求:heartbeat from10.1.1.102
处理:Task(attempt_201404200630_0001_m_000002_1)成功——>maps[2](task_201404200630_0001_m_000002)已经成功,故需要将其KILL
Task(attempt_201404200630_0001_r_000000_0
返回:1个KillTaskAction(maps[2],attempt_201404200630_0001_m_000002_1)
RPC请求:heartbeat from10.1.1.103
处理:Task(attempt_201404200630_0001_r_000001_0)
返回:1个CommitTaskAction(reduces[1],attempt_201404200630_0001_r_000001_0)
RPC请求:heartbeat from10.1.1.102
处理:Task(attempt_201404200630_0001_r_000000_0)
返回:1个CommitTaskAction(reduces[0],attempt_201404200630_0001_r_000000_0)
RPC请求:heartbeat from10.1.1.103
处理:Task(attempt_201404200630_0001_r_000001_0)
返回:1个KillTaskAction(reduces[1],attempt_201404200630_0001_r_000001_0)
RPC请求:heartbeat from10.1.1.102
处理:Task(attempt_201404200630_0001_r_000000_0)
返回:1个LaunchTaskAction(cleanup[0],attempt_201404200630_0001_m_000003_0),1个KillTaskAction(reduces[0],attempt_201404200630_0001_r_000000_0)
RPC请求:heartbeat
处理:
返回:[]
RPC请求:heartbeat from10.1.1.102
处理:Task(attempt_201404200630_0001_m_000003_0)
返回:KillJobAction(KILL_JOB:job_201404200630_0001)
RPC请求:heartbeat from10.1.1.103
处理:
返回:KillJobAction(KILL_JOB:job_201404200630_0001)
可见10.1.1.102执行了以下Task:
setup[0](Map的setup):Launch->RUNNING->SUCCEED->KILL
maps[0]:Launch->RUNNING->
maps[1]:Launch->RUNNING->
maps[2]:Launch->RUNNING->
reduces[0]:Launch->RUNNING->COMMIT_PENDING->COMMIT->SUCCEED->KILL
cleanup[0](Map的cleanup):Launch->RUNNING->SUCCEED
Job: KILL
10.1.2.103执行了以下Task:
maps[2]:Launch->RUNNING->
reduces[1]:Launch->RUNNING->COMMIT_PENDING->COMMIT->SUCCEED->KILL
Job: KILL
而setup[1](Reduce的setup)、cleanup[1](Reduce的cleanup)没有执行。
- Hadoop源码分析30 JobInProgress 的 TaskInProgress 执行情况
- Hadoop源码分析25 JobInProgress 主要容器
- JobInProgress初始化为TaskInProgress
- Hadoop源码分析的思路
- hadoop的job提交的源码分析
- hadoop的mapred工作原理---源码分析
- Hadoop 中 IPC 的源码分析
- hadoop中job提交的源码分析
- Hadoop源码分析之NameNode的格式化
- hadoop的RPC机制源码分析
- Hadoop源码分析34 Child的Map
- Hadoop源码分析1 MapReduce的输入
- hadoop-1.2.0的IPC源码分析
- Hadoop中Mapper过程的源码分析
- Hadoop读写过程的源码分析
- 【hadoop】 3007-hadoop的提交job的源码分析
- Hadoop源码分析(3): Hadoop的运行痕迹
- Hadoop源码分析-HDFS
- Hadoop源码分析25 JobInProgress 主要容器
- Hadoop源码分析26 JobTracker主要容器和线程
- Hadoop源码分析27 JobTracker空载处理心跳
- Hadoop源码分析28 JobTracker 处理JobClient请求
- Hadoop源码分析29 split和splitmetainfo
- Hadoop源码分析30 JobInProgress 的 TaskInProgress 执行情况
- Hadoop源码分析31 TaskTracke成员
- Hadoop源码分析32 TaskTracker流程
- Hadoop源码分析33 Child的主要流程
- Hadoop源码分析34 Child的Map
- Collection测试
- Hadoop源码分析35 QuickSort & HeapSort
- Hadoop源码分析36 Child的Reduce分析
- 傅里叶变换