您的位置:首页 > 其它

MapReduce源码解读系列之——作业如何提交到JobTracker

2015-07-19 23:47 316 查看
一、环境配置说明

Hadoopversion : 1.1.2

Eclipse环境

Linux版本:Centos 6.4

二、解读

1.在main()方法中有如下代码:

job.waitForCompletion(true)

查看waitForCompletion(…)方法,其中包含以下代码语句:

connect();————————————————————①

info = jobClient.submitJobInternal(conf);—————-②

2.在connect()方法中【代码语句①】

实际上创建了一个JobClient对象

而该对象的构造方法获得了JobTracker的客户端代理对象(类似于RPC)

JobSubmissionProtocol(这是一个接口 JobTracker实现了这个接口,或 JobSubmissionProtocol的实现类是JobTracker)

3.在jobClient.submitJobInternal(conf)方法中【代码语句②】

调用了JobSubmissionProtocol.submitJob(…),也就是执行的是JobTracker.submitJob(…)

因此,将job提交给了JobTracker。

完。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: