如何将减速器输出压缩我的意思是(整个MR输出)到zip。?而不是像"part0000.zip"那样"part0000.txt "



我是MR编码新手,有人能帮我吗?如何压缩减速器输出我的意思是(整个MR输出)到一个zip。在JAVA中;而不是"part0000.txt "像"part0000.zip"

您可以更好地配置mapreduce作业属性,将reducer的输出本身写入预压缩文件。

下面的属性将帮助您这样做,

mapreduce.output.fileoutputformat.compress
mapreduce.output.fileoutputformat.compress.codec
mapreduce.output.fileoutputformat.compress.type

根据您所选择的OutputFormat,您可以使用多种压缩编解码器和压缩类型。

在Configuration实例中设置以下属性,如下所示。但是,当您运行我的作业时,减速机生成的输出被压缩,生成的文件名为:part-r-00000.gz。

conf.setBoolean("mapreduce.output.fileoutputformat.compress", true);
conf.set("mapreduce.output.fileoutputformat.compress.typemapreduce.output.fileoutputformat.compress.codec",   CompressionType.BLOCK.toString());
conf.setClass("mapred.output.compression.codec", GzipCodec.class, CompressionCodec.class);

详细信息…请遵循mapred-default.xml

相关内容

  • 没有找到相关文章