根据“Hadoop权威指南”,输入格式TextInputFormat
提供了键值对(k, v) = (byte offset, line)
。但是,在MRJob中,映射器输入中的键始终为None
。将字节偏移量作为键应该很容易,因为这就是TextInputFormat的作用。我怎么得到这个?
我知道您可以使用环境变量'map_input_start'并自己计算字节偏移量,但这会引起问题,我想以更简单的方式将偏移量作为键来实现。
答案 0 :(得分:0)
如果使用以下签名在mapper类中定义map方法,则会将字节偏移量作为键。
public void map(LongWritable key,Text value,OutputCollector<>,Reporter)
答案 1 :(得分:0)
TextInputFormat是一个Java类......我不知道它在流媒体世界中会如何运作。