在MapReduce的各阶段过程中,根据场景开启不同类型的压缩,可以有效提升工作的处理时间,
压缩可以在MapReduce作用的任意阶段启用,通过压缩可以有效降低工作的处理时间,
1。从原始数据到地图阶段,需要可切分的Splitable,以便于启动多个线程加速任务
2。地图阶段落地过程,因为需要马上进行减少,所以讲求的是速度,所以越快越好
3。减少阶段是分结果的:
归档需求:建议采用高压缩比的工具,归档后节省磁盘空间;
作为下一个任务的输入:要采用Splitable,如果不切片的话下一个MapReduce将只有一个任务来处理任务
强>
通过上图,可以根据不同的阶段,选项不同的压缩工具;
在选项压缩工具时,针对不同的阶段,可以从3个方面选择对应压缩工具:
<强> 强>
core-site.xml相关的配置:io.compression.codecs→配置支持哪些压缩格式,多种压缩格式以逗号区分
mapred-site。xml相关的配置:
mapreduce.output.fileoutputformat.compress:是否开启压缩,真表示开启,默认为假
mapreduce.output.fileoutputformat.compress.codec:压缩类型
mapreduce.map.output.compress:是否开启压缩,真表示开启,默认为假
mapreduce.map.output.compress.codec:压缩类型