Hadoop序列文件压缩

时间:2015-07-20 16:00:33

标签: hadoop mapreduce

尝试运行作业时,出现以下错误:

SequenceFile doesn't work with GzipCodec without native-hadoop code!

我已经在几个地方读过我需要获取native-hadoop代码,但这对我来说很难安装。如果有一个参数我可以在某处设置(核心站点,hdfs-site,mapred-site ...等)并重新启动hdfs,那就太好了。

我尝试在mapred-site.xml中设置以下属性,但没有任何好运:

mapred.map.output.compress.codec
mapreduce.output.fileoutputformat.compress.codec

有没有办法将其从Gzip更改为另一种不需要本机代码的压缩格式?

Hadoop版本:CDH 5.2.0 操作系统:CentOS 6.6

1 个答案:

答案 0 :(得分:0)

您可以使用LZO或Snappy https://code.google.com/p/hadoop-snappy/来压缩数据。您应该将这些配置添加到mapred-site.xml

<property>
    <name>mapred.compress.map.output</name>
    <value>true</value>
  </property>

<property>
    <name>mapred.map.output.compression.codec</name>
    <value>org.apache.hadoop.io.compress.SnappyCodec</value>
</property>