版本:自己編譯的hbase-1.2.0-cdh5.14.0
默認情況下,Hbase不開啟snappy壓縮 , 所以在hbase的lib/native目錄下什么也沒有(我的前提是執行hadoop checknative可以看到hadoop是支持snappy的)
第一步:
需要將snappy-java-1.0.4.1.jar放在hbase的native目錄下:
可以去hadoop下拷貝過去:
cp /opt/cdh/hadoop-2.6.0-cdh5.14.0/share/hadoop/tools/lib/snappy-java-1.0.4.1.jar /opt/cdh/hbase-1.2.0-cdh5.14.0/lib/native
第二步:在hbase的native目錄下創建Linux-amd64-64目錄
mkdir Linux-amd64-64
第三步:將hadoop的lib/native中的文件拷貝到Hbase的Linux-amd64-64
cp /opt/cdh/hadoop-2.6.0-cdh5.14.0/lib/native/ /opt/cdh/hbase-1.2.0-cdh5.14.0/lib/native/Linux-amd64-64
第四步:在hbase-env.sh中指定library地址:
export HBASE_LIBRARY_PATH=/opt/cdh/hbase-1.2.0-cdh5.14.0/lib/native/Linux-amd64-64
第五步:在hbase-site.xml中指定開啟snappy壓縮:
<property> <name>hbase.regionserver.codecs</name> <value>snappy</value> </property>
重啟Hbase,搞定!