0

.gz 文件由名为 gzputs & gzwrite 的 C 程序编写。

我按 列出压缩文件内容gzip -l,发现uncompressed值不正确。该值似乎等于最新gzputsgzwrite写入 .gz 文件的字节数。这使得rationagitive 价值。

当这些 .gz 文件用作 Map/Reduce 的输入时发生错误。在地图阶段似乎只能读取 .gz 文件的一部分。(零件的大小似乎等于上述uncompressed值)。

有人可以教我在 C 程序或 Map/Reduce 中应该做什么?

4

1 回答 1

0

问题解决了。Map/Reduce 中的读取错误似乎是GZIPInputStream 的错误

我从 Internet 上找到了一个可以正确读取 gz 文件的类 GZIPInputStream 类。然后我在hadoop中扩展和定制了TextInputFormat和LineRecordReader。现在可以了。

于 2012-10-23T01:15:41.497 回答