相關軟體安裝、設定:
hadoop 安裝配置: http://sc8log.blogspot.tw/2017/04/hadoop-cluster.html
zookeeper 安裝、設定: http://sc8log.blogspot.tw/2017/04/zookeeper-cluster.html
下載 Hbase 套件
hadoop 安裝配置: http://sc8log.blogspot.tw/2017/04/hadoop-cluster.html
zookeeper 安裝、設定: http://sc8log.blogspot.tw/2017/04/zookeeper-cluster.html
下載 Hbase 套件
tar -zf hbase-1.3.1-bin.tar.gz
sudo mv hbase-1.3.1 /usr/local/hbase
修改 bash.bashrc
export HBASE_HOME=/usr/local/hbase
export PATH=$PATH:$HBASE_HOME/bin
重新載入 bash.bashrc
source /etc/bash.bashrc
建立 Log 目錄
mkdir -p /usr/local/hbase/{logs,tmp,pids}
修改 conf/hbase-env.sh
export JAVA_HOME=${JAVA_HOME}
export HBASE_PID_DIR=/usr/local/hbase/pids
export HBASE_MANAGES_ZK=true //由 hbase 負責啟動、停止 zookeeper
export HBASE_MANAGES_ZK=true //由 hbase 負責啟動、停止 zookeeper
修改 regionservers
vi $HBASE_HOME/conf/regionservers
master
slave01
slave02
slave03
修改 backup-masters
vi $HBASE_HOME/conf/backup-masters
slave03
修改 hbase-site.xml
vi $HBASE_HOME/conf/hbase-site.xml
<configuration>
<property>
<name>hbase.cluster.distributed</name>
<value>true</value>
</property>
<property>
<name>hbase.rootdir</name>
<value>hdfs://master:9000/hbase</value>
</property>
<property>
<name>hbase.zookeeper.quorum</name>
<value>master,slave01,slave02,slave03</value>
</property>
<property>
<name>hbase.tmp.dir</name>
<value>/usr/local/hbase/tmp</value>
</property>
<property>
<name>hbase.zookeeper.property.dataDir</name>
<value>/user/zookeeper</value>
</property>
</configuration>
清除 Log、tmp
rm -rf $HBASE_HOME/logs/*
rm -rf $HBASE_HOME/tmp/*
將 hbase 目錄複製到每台 slave
scp -r $HBASE_HOME slave01:~
scp -r $HBASE_HOME slave02:~
scp -r $HBASE_HOME slave03:~
移動 hbase 目錄(每台 slave)
sudo mv ~/hbase /usr/local/
sudo chown -R hadoop:hadoop /usr/local/hbase
sudo chmod +x /usr/local/hbase
啟動 Hbase
$HBASE_HOME/bin/start-hbase.sh
進入測試 hbase
hbase shell
運用範例:
學號 姓名 國文 英文 數學
105111111 boss 50 60 70
105111112 tom 60 70 80
105111113 max 90 95 100
建立 Table
create 'result','name','score'
寫入資料
put 'result','105111111','name','boss'
put 'result','105111111','score:chinese','50'
put 'result','105111111','score:english','60'
put 'result','105111111','score:math','70'
put 'result','105111112','name','tom'
put 'result','105111112','score:chinese','60'
put 'result','105111112','score:english','70'
put 'result','105111112','score:math','80'
put 'result','105111113','name','max'
put 'result','105111113','score:chinese','80'
put 'result','105111113','score:english','90'
put 'result','105111113','score:math','100'
查詢個人成績
get 'result','105111112'
查詢相同科目
scan 'result',{COLUMNS => 'score:english'}
查詢 result table 全部資料
scan 'result'
計算(統計不重覆的 row key 值,此範例為 3 人)
count 'result'
查看 table 結構
describe 'result'
刪除一列
delete 'result','105111112','name'
刪除相同 key 值的資料
deleteall 'result','105111112'
刪除 result table 的結構及資料
truncate 'result'
刪除 result table
disable 'result'
drop 'result'
學號 姓名 國文 英文 數學
105111111 boss 50 60 70
105111112 tom 60 70 80
105111113 max 90 95 100
建立 Table
create 'result','name','score'
寫入資料
put 'result','105111111','name','boss'
put 'result','105111111','score:chinese','50'
put 'result','105111111','score:english','60'
put 'result','105111111','score:math','70'
put 'result','105111112','name','tom'
put 'result','105111112','score:chinese','60'
put 'result','105111112','score:english','70'
put 'result','105111112','score:math','80'
put 'result','105111113','name','max'
put 'result','105111113','score:chinese','80'
put 'result','105111113','score:english','90'
put 'result','105111113','score:math','100'
查詢個人成績
get 'result','105111112'
查詢相同科目
scan 'result',{COLUMNS => 'score:english'}
查詢 result table 全部資料
scan 'result'
計算(統計不重覆的 row key 值,此範例為 3 人)
count 'result'
查看 table 結構
describe 'result'
刪除一列
delete 'result','105111112','name'
刪除相同 key 值的資料
deleteall 'result','105111112'
刪除 result table 的結構及資料
truncate 'result'
刪除 result table
disable 'result'
drop 'result'
沒有留言:
張貼留言