mapreduce压缩

这是mr的一种优化策略,通过压缩编码对mapper或者reducer的输出进行压缩,以减少磁盘io,提高mr运行速度(但也增加了cpu运算负担)

特性:

1.mr支持将map输出的结果或者reduce输出的结果进行压缩,以减少网络IO或最终输出数据的体积

2.压缩特性使用得当能提高性能,但运用不当也可降低性能

3.基本原则:运算密集型的job,少用压缩     io密集型的job,多用压缩

mapper输出压缩

在配置参数或在代码中都可以设置reduce的输出压缩

1.在配置参数中设置

mapreduce.map.output.compress = false

mapreduce.map.output.compress.codec=org.apache.hadoop.io.compress.DefaultCode.class

2.在代码中设置:

conf.setBoolean("mapred.compress.map.output'',true);

conf.setClass("mapred.map.output.compression.code",DefaultCodec.class,CompressionCodec.class);

 

posted @ 2019-11-13 16:40  张先森🌛  阅读(137)  评论(0)    收藏  举报