hbase压缩算法-Snappy算法安装

Compression就是在用CPU换IO吞吐量/磁盘空间,如果没有什么特殊原因推荐针对Column Family设置compression,下面主要有三种算法: GZIP, LZO, Snappy,作者推荐使用Snappy,因为它有较好的Encoding/Decoding速度和可以接受的压缩率。

Comparison between compression algorithms

Algorithm% remainingEncodingDecoding
GZIP 13.4% 21 MB/s 118 MB/s
LZO 20.5% 135 MB/s 410 MB/s
Zippy/Snappy 22.2% 172 MB/s 409 MB/s

1. 下载snappy代码,编译并安装动态连接库到每台datanode和regionserver上
Build/install Snappy (http://code.google.com/p/snappy/)
./configure
make && make install

2. Build Hadoop Snappy (http://code.google.com/p/hadoop-snappy/)
mvn package

3. 在hdfs中安装snappy
a. 解压 hadoop-snappy-0.0.1-SNAPSHOT.tar.gz 将其中的native中的动态静态链接库文件拷到hadoop lib的native下面,将hadoop-snappy-0.0.1-SNAPSHOT.jar考到hadoop lib下,此过程类似安装lzo.

b. 将一下改动加入到hadoop的core-site.xml中:
<property>
<name>io.compression.codecs</name>
<value>org.apache.hadoop.io.compress.SnappyCodec</value>
</property>

c. 重启动 Hadoop.

4. 将3.a 中的lib拷贝到hbase 的对应lib 和 lib/native 之中,并启动hbase

测试安装是否成功:

1 . 使用 CompressionTest 来查看snappy是否 enabled 并且能成功 loaded:
$ hbase org.apache.hadoop.hbase.util.CompressionTest hdfs://host/path/to/hbase snappy

2 . 创建一章以snappy方式压缩的表来检查能否成功:
$ hbase shell
> create 't1', { NAME => 'cf1', COMPRESSION => 'snappy' }
> describe 't1'

在"describe" 命令输出中, 需要确认 "COMPRESSION => 'snappy'"

参考链接:
https://ccp.cloudera.com/display/CDHDOC/Snappy+Installation
http://blog.csdn.net/jingling_zy/article/details/7258014 

http://shitouer.cn/2012/07/hadoop-snappy-introduction-and-install/

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值