Hadoop Snappy 压缩的安装和配置

snappy是google的一个开源的压缩库,在合理的压缩率的前提下提供了提供了一个很高的压缩/解压的速度,利用单颗Intel Corei7处理器内核处理达到每秒处理250MB~500MB的数据流。snappy压缩在Hadoop中不是自带的,本文介绍在hadoop2.0中安装和配置snappy压缩,使hadoop2.0支持snappy压缩。

相关阅读

可以从https://code.google.com/p/snappy/下载源码,通过编译源码安装

tar -zxvf snappy-1.1.1.tar.gz

cd snappy-1.1.1

./configure

make

sudo make install

也可以直接用yum来安装

sudo yum install snappy snappy-devel


2 安装hadoop-snappy包

从https://github.com/electrum/hadoop-snappy下载hadoop-snappy包hadoop-snappy-master.zip
 
解压

unzip hadoop-snappy-master.zip

解压后是一个hadoop-snappy-master文件夹

编译

cd hadoop-snappy-master/

mvn package -Dsnappy.prefix=/usr/local


注意-Dsnappy.prefix是设置你的snappy安装的目录,默认是/usr/local

编译后把本地库文件和jar包(编译后可能已经打在一个压缩包里,需要先解压)拷贝到相应的目录

tar -zxvf hadoop-snappy-0.0.1-SNAPSHOT.tar.gz

cp-r hadoop-snappy-0.0.1-SNAPSHOT/lib/* $HADOOP_HOME/lib


Snappy 0.0.1-SNAPSHOT/目录包含本地库和hadoop-snappy-0.0.1-SNAPSHOT.jar包,都需要拷贝到相应的目录。

3 修改hadoop配置文件core-site.xml

<property>

    <name>io.compression.codecs</name>

        <value>

                org.apache.hadoop.io.compress.GzipCodec,

                org.apache.hadoop.io.compress.DefaultCodec,

                org.apache.hadoop.io.compress.BZip2Codec,

                org.apache.hadoop.io.compress.SnappyCodec

        </value>

</property>


4 重启hadoop集群

这样,我们hadoop服务器上的hadoop snappy就安装成功了。

5 实战tips

在hadoop2.0中,把hadoop-snappy-0.0.1-SNAPSHOT.jar包拷贝到$HADOOP_HOME/share/hadoop/mapreduce/lib/或者$HADOOP_HOME/share/hadoop/mapreduce/目录下,不需要重启hadoop集群。

hadoop服务器的每台机器都需要安装和配置。

hadoop客户机snappy的安装和配置的方法与hadoop服务器一样。

相关推荐