中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

hadoop cdh版本安裝snappy

發布時間:2020-06-16 03:29:43 來源:網絡 閱讀:3343 作者:liuhongyi115 欄目:大數據

一.安裝 protobuf
ubuntu 系統
首先確保具有 gcc gcc-c++ libtool cmake 具有這些環境
1 在 /etc/ld.so.conf.d/目錄下創建文件 libprotobuf.conf 寫入內容 /usr/local/lib 否則會報 error while loading shared libraries: libprotoc.so.8: cannot open shared obj
2../configure make&&make install
2.驗證安裝完成
protoc --version
libprotoc 2.5.0

二.安裝 snappy 本地庫
http://www.filewatcher.com/m/snappy-1.1.1.tar.gz.1777992-0.html
下載snappy-1.1.1.tar.gz
解壓 ./configure
make&& makeInstall

檢查/usr/local/lib
libsnappy.a
libsnappy.la
libsnappy.so
libsnappy.so.1
libsnappy.so.1.2.0

三.編譯 cdh hadoop的源碼。(加入snappy支持)
下載鏈接http://archive.cloudera.com/cdh6/cdh/5/

hadoop-2.6.0-cdh6.11.0-src.tar.gz
解壓。使用maven編譯
4.檢查文件
hadoop-2.6.0-cdh6.11.0/hadoop-dist/target/hadoop-2.6.0-cdh6.11.0/lib/native
目錄下是否具有 hadoop的本地庫以及 snappy的本地庫

  1. 將此目錄下的文件拷貝到hadoop集群中的hadoop下的lib/native目錄和hbase下的lib/native/Linux-amd64-64目錄下,沒有則新建,各節點均需拷貝。

cp ~apk/hadoop-2.6.0-cdh6.11.0/hadoop-dist/target/hadoop-2.6.0-cdh6.11.0/lib/native/* ~/app/hadoop/lib/native/

6.將本地庫同步到其他節點
7.配置 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>

配置 mapred-site.xml
加入
<property>
<name>mapreduce.map.output.compress</name>
<value>true</value>
</property>
<property>
<name>mapreduce.map.output.compress.codec</name>
<value>org.apache.hadoop.io.compress.SnappyCodec</value>
</property>
<property>
<name>mapreduce.admin.user.env</name>
<value>LD_LIBRARY_PATH=/home/hadoop/app/hadoop/lib/native</value>
</property>
配置 hbase的 hbase-site.xml
加入
<property>
<name>hbase.block.data.cachecompressed</name>
<value>true</value>
</property>

8.重啟hadoop的hdfs與yarn
9.驗證snappy是否成功。
hadoop checknative

18/03/07 17:33:36 WARN bzip2.Bzip2Factory: Failed to load/initialize native-bzip2 library system-native, will use pure-Java version
18/03/07 17:33:36 INFO zlib.ZlibFactory: Successfully loaded & initialized native-zlib library
Native library checking:
hadoop: true /home/hadoop/app/hadoop/lib/native/libhadoop.so
zlib: true /lib/x86_64-linux-gnu/libz.so.1
snappy: true /home/hadoop/app/hadoop/lib/native/libsnappy.so.1
lz4: true revision:10301
bzip2: false
openssl: true /usr/lib/x86_64-linux-gnu/libcrypto.so

看到snappy已經成功支持

運行mapreduce任務
hadoop jar ~/app/hadoop/share/hadoop/mapreduce/hadoop-mapreduce-examples-2.6.0-cdh6.11.0.jar wordcount /input/gisData /output
如果正常運行。則證明 snappy沒有問題。如果有。
Exception in thread "main" java.lang.UnsatisfiedLinkError: org.apache.hadoop.util.NativeCodeLoader.buildSupportsSnappy()Z

請檢查mapred-site.xml 的本地庫配置

10 啟動hbase.
先創建一張snappy的表

create 'snappyTest',{NAME=>'f',COMPRESSION => 'SNAPPY'}
descibe 'snappyTest'

TTL => 'FOREVER', COMPRESSION => 'SNAPPY', MIN_VERSIONS => '0' 看到這個snappy就可以了。

重點是我們要壓縮現有的表
可以在shell外執行
$ echo "disable 'snappyTest2'" | hbase shell #禁用表
$ echo "desc 'snappyTest2'" | hbase shell #查看表結構
$ echo "alter 'snappyTest2',{NAME=>'f',COMPRESSION => 'SNAPPY'} " | hbase shell #壓縮修改為snappy
$ echo "enable 'snappyTest2'" | hbase shell #使用該表
$ echo "major_compact 'snappyTest2'" | hbase shell #最好使該表的region compact一次

也可以hbase shell 進shell手動壓縮。壓縮后會發現 數據有40%左右的壓縮比

java代碼創建Hbase表只需要
HColumnDescriptor HColumnDesc = new HColumnDescriptor("data");
HColumnDesc.setCompressionType(Algorithm.SNAPPY);//這句是關鍵

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

禄劝| 台中市| 孝义市| 武冈市| 拉萨市| 隆德县| 邯郸市| 武鸣县| 镇江市| 秀山| 夏津县| 广灵县| 青川县| 上饶市| 长武县| 平顶山市| 阿克| 元氏县| 泗阳县| 宕昌县| 芜湖市| 邢台县| 衢州市| 孟州市| 新安县| 竹山县| 清流县| 驻马店市| 武平县| 巴彦淖尔市| 延津县| 法库县| 富蕴县| 南川市| 明溪县| 霍城县| 金阳县| 怀仁县| 新化县| 洮南市| 东乡族自治县|