您的位置:首页 > 其它

mapreduce JobConf 常用可定制参数

2013-03-15 14:19 197 查看
参数
作用
缺省值
其它实现
inputFormat
将输入的数据集切割成小数据集inputSplits, 每一个InputSplit将 由一个Mapper负责处理。此外inputFormat中还提供一个RecordReader的 实现, 将一个InputSplit解 析成《key,value》 对提供给 map 函数。
TextInputFormat(针 对文本文件,按行将文本文件切割成InputSplits, 并用LineRecordReader将InputSplit解 析成 《key,value》 对,key是行在文件中的位置,value是文件中的一行)
SequenceFileInputFormat
OutputFormat
提供一个 RecordWriter 的实现,负责输出最终结果
TextOutputFormat(用 LineRecordWriter 将最终结果写成纯文件文件,每个《key,value》对一行,key 和 value 之间用 tab 分隔)
SequenceFileOutputFormat
OutputKeyClass
输出的最终结果中 key 的类型
LongWritable
 
OutputValueClass
输出的最终结果中 value 的类型
Text
 
MapperClass
Mapper 类,实现 map 函数,完成输入的 《key,value》 到中间结果的映射
IdentityMapper(将 输入的 《key,value》 原封不动的输出为中间结果)
LongSumReducer,

LogRegexMapper,

4000
InverseMapper
CombinerClass
实现 combine 函数,将中间结果中的重复 key 做合并
null(不对中间结果中的重复 key 做合并)
 
ReducerClass
Reducer 类,实现 reduce 函数,对中间结果做合并,形成最终结果
IdentityReducer(将 中间结果直接输出为最终结果)
AccumulatingReducer,

LongSumReducer
InputPath
设定 job 的输入目录, job 运行时会处理输入目录下的所有文件
null
 
OutputPath
设定 job 的输出目录,job 的最终结果会写入输出目录下
null
 
MapOutputKeyClass
设定 map 函数输出的中间结果中 key 的类型
如果用户没有设定的话,使用OutputKeyClass
 
MapOutputValueClass
设定 map 函数输出的中间结果中
value 的类型 如果用户没有设定的话,使用 OutputValuesClass
 
OutputKeyComparator
对结果中的 key 进行排序时的使用的比较器
WritableComparable
 
PartitionerClass
对中间结果的 key 排序后,用此 Partition 函数将其划分为R份,每份由一个 Reducer 负责处理。
HashPartitioner(使 用 Hash 函数做 partition)
KeyFieldBasedPartitioner

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