hadoop2.6.0-cdh5.7.0编译,支持snappy、bzip2本地压缩

一、软件包: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验证

 

请使用浏览器的分享功能分享到微信等