数据压缩
hadoop源码支持的压缩格式有:BZip2Codec 、Lz4Codec、DefaultCodec
在map阶段压缩/解压缩:
要在获取job实例之前设置map压缩
Configuration configuration = new Configuration();
// 开启map端输出压缩
configuration.setBoolean(“mapreduce.map.output.compress”, true);
// 设置map端输出压缩方式
configuration.setClass(“mapreduce.map.output.compress.codec”, BZip2Codec.class, CompressionCodec.class);
Job job = Job.getInstance(configuration);
在reduce阶段压缩/解压缩
要在job提交前设置reduce压缩
// 设置reduce端输出压缩开启
FileOutputFormat.setCompressOutput(job, true);
// 设置压缩的方式
FileOutputFormat.setOutputCompressorClass(job, BZip2Codec.class);
// FileOutputFormat.setOutputCompressorClass(job, GzipCodec.class);
// FileOutputFormat.setOutputCompressorClass(job, Lz4Codec.class);
// FileOutputFormat.setOutputCompressorClass(job, DefaultCodec.class);
boolean result = job.waitForCompletion(true);