共计 1939 个字符,预计需要花费 5 分钟才能阅读完成。
snappy 是 google 的一个开源的压缩库,在合理的压缩率的前提下提供了提供了一个很高的压缩 / 解压的速度,利用单颗 Intel Corei7 处理器内核处理达到每秒处理 250MB~500MB 的数据流。snappy 压缩在 Hadoop 中不是自带的,本文介绍在 hadoop2.0 中安装和配置 snappy 压缩,使 hadoop2.0 支持 snappy 压缩。
相关阅读 :
Ubuntu 13.04 上搭建 Hadoop 环境 http://www.linuxidc.com/Linux/2013-06/86106.htm
Ubuntu 12.10 +Hadoop 1.2.1 版本集群配置 http://www.linuxidc.com/Linux/2013-09/90600.htm
Ubuntu 上搭建 Hadoop 环境(单机模式 + 伪分布模式)http://www.linuxidc.com/Linux/2013-01/77681.htm
Ubuntu 下 Hadoop 环境的配置 http://www.linuxidc.com/Linux/2012-11/74539.htm
单机版搭建 Hadoop 环境图文教程详解 http://www.linuxidc.com/Linux/2012-02/53927.htm
Hadoop LZO 安装教程 http://www.linuxidc.com/Linux/2013-01/78397.htm
Hadoop 集群上使用 Lzo 压缩 http://www.linuxidc.com/Linux/2012-05/60554.htm
1 安装 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 服务器一样。
更多 Hadoop 相关信息见 Hadoop 专题页面 http://www.linuxidc.com/topicnews.aspx?tid=13