一、软件包:snappy-1.1.3.tar.gz
下载地址:wget https://github.com/google/snappy/releases/download/1.1.3/snappy-1.1.3.tar.gz
二、安装依赖包:
yum -y install snappy libsnappy-dev
yum -y install bzip2 libbz2-dev
yum -y install libjansson-dev
三、bzip2压缩支持:
yum install -y bzip2-devel
rpm -qa bzip2-devel
注:bizip2的的本地压缩支持无效,整个编译过程,并没有出现任何错误,或异常,而且去cenots下的lib64位目录下,查看libbz2的so文件,发现也正常。安装bzip2-devel库支持,然后重新编译我们的hadoop即可。
四、
安装snappy:
# tar xf snappy-1.1.3.tar.gz
# cd snappy-1.1.3
# ./configure
# make && make install
查看snappy是否安装完成
:
# ll /usr/local/lib/ | grep snappy
五、编译hadoop:
mvn clean package -DskipTests -Pdist,native -Dtar -Dsnappy.lib=/usr/local/lib -Dbundle.snappy
或
mvn clean package -DskipTests -Pdist,native -Dtar
注:必须在编译时加入
native
六、
配置hadoop的core-site.xml、mapred-site.xml
vi core-site.xml
io.compression.codecs
org.apache.hadoop.io.compress.GzipCodec,
org.apache.hadoop.io.compress.DefaultCodec,
org.apache.hadoop.io.compress.BZip2Codec,
org.apache.hadoop.io.compress.SnappyCodec
vi mapred-site.xml
mapreduce.map.output.compress.codec
org.apache.hadoop.io.compress.SnappyCodec
编译完成后,将生成hadoop中的native目录下文件拷贝到对应hadoop安装目录下的native目录中,并重启hadoop。执行hadoop checknative验证