您的位置:首页 > 运维架构

【Hadoop】MapReduce Job Files

2013-10-19 21:16 381 查看
Hadoop运行一个MapReduce Job后,JobTracker和TaskTracker都需要创建/维护一系列的文件以便运行/管理/监控job。其中,有部分job files存储在HDFS从而可以分发到各个TT,有部分存储在JT和TT本地。

JobTracker Files

下表总结了几种主要的job file:

FSLocation PropertyChild DirectoryDirectory File ListFile Type
HDFSmapreduce.jobtracker.staging.root.dir<userId>/.staging/<jobId>job.xml

job.jar

job.split

job.splitmetainfo
Temporary
HDFSmapred.system.dir<jobId>jobTokenTemporary
Localmapred.local.dirjobTracker<jobId>.xmlTemporary
Localhadoop.job.history.location.<jobId>_<timestamp>_<userId>_<jobName>

<jobId>_conf.xml
Persistent
其中有两点解释一下:

Staging directory: 用户提交Job时,客户端需要将Job相关的文件拷贝到HDFS以便JobTracker随后引用。这在另一篇文章《MapReduce Job Submission Files》中讨论过
History directory: 用户之所以可以通过UI来监测Job运行以及历史信息,是因为JobTracker实现了一个HistoryServer,并将Job运行的历史信息记录到Local FS。最主要的是记录历史运行状态的文件,记录了包括提交/完成时间,每个Task Attemp的启动时间,运行状态,Counter等。

Cloudera Blog上有一篇总结Job Files的文章http://blog.cloudera.com/blog/2010/11/hadoop-log-location-and-retention/

TaskTracker Files
真正执行Task的TaskTracker在Local FileSystem也需要维护一系列的job files,下面这篇文章的"Directory Structure"部分有详细总结:
http://hadoop.apache.org/docs/r1.2.1/mapred_tutorial.html
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: