MapReduce开发人员指南
2010-05-10 11:42:43 [0评论 ]
1目的说明
本文档用于介绍如何编写MapReduce程序,并在中国移动提供的测试平台上执行。
2MapReduce作业管理工具使用说明
2.1MR作业管理工具参数说明
MR作业管理工具接口中参数的描述如表1所示
其它规范:
(1)Job信息填写界面给出了三个示例程序,可以根据JobType和Sample来进行选择;
(2)如果需要上传文件,注意只能上传后缀名为jar的文件,并且大小不能超过10M。
2.2作业配置参数示例
2.3类的编写范例
2.3.1Mapper类
Mapper extends JobConfigurable, Closeable
需要实现的方法:
void map(K1 key, V1 value, OutputCollector
void configure(JobConf job)
2.3.2Red ucer类
Reducer extends JobConfigurable, Closeable
需要实现的方法:
void reduce(K2 key, Iterator values, OutputCollector output, Reporter reporter)void configure(JobConf job)
void configure(JobConf job)
2.3.3InputFormat类
InputFormat
需要实现的方法:
InputSplit[] getSplits(JobConf job, int numSplits)
对作业的输入文件进行逻辑划分,每一个InputSplit分配给一个独立的Mapper处理
RecordReader getRecordReader(InputSplit split, JobConf job, Reporter reporter)
获取给出的InputSplit对应的的RecordReader
2.3.4OutputFormat类
OutputFormat
需要实现的方法:
RecordWriter getRecordWriter(FileSystem ignored, JobConf job, String name, Progressable progress)
void checkOutputSpecs(FileSystem ignored, JobConf job)
当作业提交时校验具体输出的有效性
2.3.5OutputKeyClass类
需要实现的接口:
WritableComparable
2.3.6OutputValueClas s类
需要实现的接口:
Writable
3.1静态统计信息说明