自定义二进制文件 - 从hadoop读取

时间:2014-08-01 18:29:02

标签: java hadoop mapreduce

我有一个固定长度的二进制文件。记录如下:

[Field1:int, Field2:double, Field3: int, ....]

如何让这个文件成为我的地图缩减工作的输入? 我是否需要编写自定义的InputFormat? 有人可以发一个例子吗?

由于

1 个答案:

答案 0 :(得分:1)

我发现存在一个名为FixedLengthInputFormat的类!它运作良好! 我可以将记录的长度传递给它。映射器接收BytesWritable(一种字节数组)作为输入值,我只是将它反序列化为一个对象。

https://hadoop.apache.org/docs/current/api/org/apache/hadoop/mapred/FixedLengthInputFormat.html