我是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