HBase 0.96配置 snappy(绝对有效哦亲)

通常情况下,snappy压缩算法无非是hbase 最好的伴侣,不过这里不介绍 snappy 算法,也不介绍如何安装 snappy,这里只记录如何给 hbase 0.96X-hadoop2版本开启 snappy 支持。如果你在尝试为 hbase 96+hadoop2开启 snappy 压缩的时候遇到
java.lang.RuntimeException: native snappy library not available: this version of libhadoop was built without snappy support.

恭喜你,本文就是你需要的良方妙药,全国包邮的!

网上介绍的资料大多是提供94版本的 hbase的解决方案,包括官方的 wiki,不幸的是小弟一一试过,没有一个是顶用的,诸如:
     在 hbase-env.sh 里面 export LD_LIBRARY_PATH或者HBASE_LIBRARY_PATH,这是 不顶用的。
     把 hadoop的 lib/native/xxx和 libsnappy.XXX拷贝到 hbase 对应目录下,这也是 不顶用的。
     下载 hadoop-snappy自行编译?完全没有必要,因为从hadoop 1.1.X 版本以后 hadoop-snappy 就已经是 hadoop-common 的一部分了。
     异常说的很清楚,你的 hadoop native 包不支持 snappy!需要重新编译你的 hadoop 才行。编译填坑指南见 http://dennis-lee-gammy.iteye.com/admin/blogs/2009982,你唯一需要做的就是将
mvn package -Pdist,native -DskipTests -Dtar -rf :hadoop-common  
加上 -Drequire.snappy ,剩下的一切照旧。
     然后,打完,收工。

猜你喜欢

转载自dennis-lee-gammy.iteye.com/blog/2015643