我有一个Sequential文件,其键值对为“org.apache.hadoop.typedbytes.TypedBytesWritable”,我必须提供此文件作为Hadoop作业的输入和必须只在地图中处理它。我的意思是我不需要做任何需要减少的事情。
1)我如何将FileInputFormat指定为SequentialFile?
2)地图功能的签名是什么。
3)我如何从地图而不是减少输出?
答案 0 :(得分:3)
1)我如何将FileInputFormat指定为SequentialFile?
将SequenceFileAsBinaryInputFormat设置为输入格式。这是SequenceFileAsBinaryInputFormat类的code。
这是代码
JobConf conf = new JobConf(getConf(), getClass());
conf.setInputFormat(SequenceFileAsBinaryInputFormat.class);
2)地图功能的签名是什么。
将使用BytesWritable作为键和值类型调用映射。
3)我如何从地图而不是减少输出?
将mapred.reduce.tasks
属性设置为0.地图的输出将是作业的最终输出。
另外,请查看SequenceFileAsTextInputFormat。将使用Text作为键和值类型调用映射。