使用MRJob获取字节偏移量

时间:2012-07-10 21:19:21

标签: hadoop streaming mapreduce

根据“Hadoop权威指南”,输入格式TextInputFormat提供了键值对(k, v) = (byte offset, line)。但是,在MRJob中,映射器输入中的键始终为None。将字节偏移量作为键应该很容易,因为这就是TextInputFormat的作用。我怎么得到这个?

我知道您可以使用环境变量'map_input_start'并自己计算字节偏移量,但这会引起问题,我想以更简单的方式将偏移量作为键来实现。

2 个答案:

答案 0 :(得分:0)

如果使用以下签名在mapper类中定义map方法,则会将字节偏移量作为键。

public void map(LongWritable key,Text value,OutputCollector<>,Reporter) 

答案 1 :(得分:0)

TextInputFormat是一个Java类......我不知道它在流媒体世界中会如何运作。