2

看起来 Hadoop 在使用TextInputFormat. 不幸的是,当使用 LZO 压缩时,Hadoop 不使用 LZO 索引文件来使文件可拆分。但是,如果我将输入格式设置为com.hadoop.mapreduce.LzoTextInputFormat,则文件将被拆分。

是否可以将 Hadoop 配置为解压缩 LZO 文件并在使用时拆分它们TextInputFormat

4

1 回答 1

0

我只是遇到了类似的问题,这是我的理解:

您想在代码中使用 LzoTextInputFormat。如果要处理混合的 lzo 和非 lzo 文件,则应将 lzo.text.input.format.ignore.nonlzo 设置为 false。在这种情况下,LzoTextInputFormat 将用于所有 lzo 文件,但它会默认为其他文件使用 TextInputFormat(它足够聪明,可以忽略索引文件)。

首次提出此问题时,此功能可能尚未出现,因此您可能已经知道此解决方案。

请看(有一条关于ignore.nonlzo的评论): https ://github.com/twitter/hadoop-lzo/blob/master/src/main/java/com/hadoop/mapreduce/LzoTextInputFormat.java

于 2014-01-31T19:54:42.267 回答