查看支持的压缩格式
执行下面命令:
hadoop checknative
检查本地库结果如下:
Native library checking:
hadoop: true /program/hadoop-3.0.3/lib/native/libhadoop.so.1.0.0
zlib: true /lib64/libz.so.1
zstd : false
snappy: true /lib64/libsnappy.so.1
lz4: true revision:10301
bzip2: true /lib64/libbz2.so.1
openssl: false Cannot load libcrypto.so (libcrypto.so: 无法打开共享对象文件: 没有那个文件或目录)!
ISA-L: false libhadoop was built without ISA-L support
说明支持 zlib、snappy、lz4、bzip2 压缩格式
注意: snappy 与 hadoop、linux版本相关,如果不支持,需要重新编译hadoop
说明
修改 mapred-site.xml 配置文件,增加内容如下:
<property>
<name>mapreduce.map.output.compress</name>
<value>true</value>
<description>map是否启用压缩</description>
</property>
<property>
<name>mapreduce.map.output.compress.codec</name>
<value>org.apache.hadoop.io.compress.SnappyCodec</value>
<description>map采用何种压缩算法</description>
</property>
<property>
<name>mapreduce.output.fileoutputformat.compress</name>
<value>true</value>
<description>reduce是否启用压缩</description>
</property>
<property>
<name>mapreduce.output.fileoutputformat.compress.codec</name>
<value>org.apache.hadoop.io.compress.GzipCodec</value>
<description>reduce采用何种压缩算法</description>
</property>