Hadoop0.21.0源码流程分析(1)-客户端提交作业
来源:互联网 发布:淘宝查号信誉 编辑:程序博客网 时间:2024/05/22 03:50
- 流程图
- 函数调用关系图
- JobConf
JobConf类继承org.apache.hadoop.conf.Configuration类,所有客户端程序中配置的信息和其他运行信息,都会保存在这个类里。
- JobClient
JobClient.runJob(job)静态方法会实例化一个JobClient实例,然后用此实例的submitJob(conf)方法向 master提交作业。此方法会返回一个RunningJob对象,它用来跟踪作业的状态。作业提交完毕后,JobClient会根据此对象开始轮询作业的进度,直到作业完成。
submitJob(conf)内部是通过submitJobInternal(job)方法完成实质性的作业提交。 submitJobInternal(job)方法首先会向hadoop分布系统文件系统hdfs依次上传三个文件: job.jar, job.split和job.xml。
job.xml: 作业配置,例如Mapper, Combiner, Reducer的类型,输入输出格式的类型等。
job.jar: jar包,里面包含了执行此任务需要的各种类,比如 Mapper,Reducer等实现。
job.split: 文件分块的相关信息,比如有数据分多少个块,块的大小(默认64m)等。
写完这三个文件之后, 此方法会通过RPC调用master节点上的JobTracker. submitJob( )方法,此时作业已经提交完成。
JobClient里面使用使用RPC机制来构造一个实现 JobSubmissionProtocol接口的JobTracker的代理,然后利用远程发放直接执行JobTracker里的submitJob。
- JobTracker
JobClient提交job后,JobTracker会创建一个JobInProgress来跟踪和调度这个job,并把它添加到job队列里。JobInProgress会根据提交的job jar中定义的输入数据集(已分解成FileSplit)创建对应的一批TaskInProgress用于监控和调度MapTask和ReduceTask。
- Hadoop0.21.0源码流程分析(1)-客户端提交作业
- Hadoop0.21.0源码流程分析(1)-客户端提交作业
- Hadoop0.21.0源码流程分析(2)-主节点接收作业
- Hadoop0.21.0源码流程分析(2)-主节点接收作业
- Hadoop0.21.0源码编译流程
- Hadoop源码解析之YARN客户端作业提交流程
- Hadoop0.21.0源码流程分析(3)-Task节点管理启动任务
- Hadoop0.21.0源码流程分析(3)-Task节点管理启动任务
- Hadoop源码分析1: 客户端提交JOB
- Hadoop2.0 客户端提交作业流程
- MapReduce作业提交源码分析
- Job作业提交源码分析
- hadoop作业提交源码分析
- Hadoop作业提交源码分析
- Spark作业提交执行流程源码图
- Apache Flink流作业提交流程分析
- Apache Flink流作业提交流程分析
- Spark源码分析(一)作业提交
- 三大检索工具(SCI、EI、ISTP)收录检索技巧及核心期刊投稿导引
- Hadoop0.21.0源码流程分析(1)-客户端提交作业
- thinkpad E40 无线网络问题
- [记录] sqlplus命令整理
- ht46ru232 串口接收、发送程序 C语言
- Hadoop0.21.0源码流程分析(1)-客户端提交作业
- 郁闷,下载资源积分不够。。。
- 流(1)--文件
- fedora 15 安装 sun java
- PE文件结构解析 C、C++程序 vc2008编译
- Flex动态DataGrid 一
- 数据库基本操作
- 《海底捞你学不会》学什么
- DTD