解壓縮hbase二進制安裝文件到/opt目錄下:
#tar -zxvf hbase-0.98.6-cdh5.3.6.tar.gz -C /opt/cdh-5.3.6/
編輯配置文件,這里僅配置數據目錄,如果不指定數據目錄,默認hbase數據存儲在/tmp目錄下:
#vim conf/hbase-site.xml
<property>
<name>hbase.rootdir</name>
<value>file:///opt/hbase0986</value>
</property>
創建hbase數據目錄:
#mkdir -p /opt/hbase0986
#chown -R hadoop:hadoop /opt/hbase0986
啟動hbase服務並且檢查hbase運行狀態:
#cd /opt/cdh-5.3.6/hbase-0.98.6/
#bin/start-hbase.sh
#bin/hbase shell
hbase(main):001:0> status
1 servers, 0 dead, 2.0000 average load
以上信息表明hbase已經啟動並且正在運行。至此,hbase本地模式安裝完成。
下面進行一些基本測試:
創建一張測試表並且新增幾條數據:
hbase(main):002:0> create 'testtable','colfaml'
0 row(s) in 0.2570 seconds
=> Hbase::Table - testtable
hbase(main):003:0> list 'testtable'
TABLE
testtable
1 row(s) in 0.0160 seconds
=> ["testtable"]
hbase(main):004:0> put 'testtable','myrow-1','colfaml:q1','value-1'
0 row(s) in 0.0930 seconds
hbase(main):005:0> put 'testtable','myrow-2','colfaml:q2','value-2'
0 row(s) in 0.0050 seconds
hbase(main):006:0> put 'testtable','myrow-3','colfaml:q3','value-3'
0 row(s) in 0.0060 seconds
hbase(main):007:0> put 'testtable','myrow-2','colfaml:q3','value-3'
0 row(s) in 0.0040 seconds
通過scan檢索數據:
hbase(main):012:0> scan 'testtable'
ROW COLUMN+CELL
myrow-1 column=colfaml:q1, timestamp=1495836746559, value=value-1
myrow-2 column=colfaml:q2, timestamp=1495836769808, value=value-2
myrow-2 column=colfaml:q3, timestamp=1495836883408, value=value-3
myrow-3 column=colfaml:q3, timestamp=1495836780730, value=value-3
3 row(s) in 0.0310 seconds
通過get命令可以獲得單個文件的值:
hbase(main):022:0> get 'testtable','myrow-1'
COLUMN CELL
colfaml:q1 timestamp=1495836746559, value=value-1
1 row(s) in 0.0060 seconds
hbase(main):023:0> get 'testtable','myrow-2'
COLUMN CELL
colfaml:q2 timestamp=1495836769808, value=value-2
colfaml:q3 timestamp=1495836883408, value=value-3
2 row(s) in 0.0100 seconds
通過delete命令可以刪除數據:
hbase(main):027:0> delete 'testtable','myrow-2','colfaml:q3'
0 row(s) in 0.0070 seconds
hbase(main):028:0> scan 'testtable'
ROW COLUMN+CELL
myrow-1 column=colfaml:q1, timestamp=1495836746559, value=value-1
myrow-2 column=colfaml:q2, timestamp=1495836769808, value=value-2
myrow-3 column=colfaml:q3, timestamp=1495836780730, value=value-3
3 row(s) in 0.0260 seconds
刪除表也很簡單,不過hbase在刪除表之前要先禁用表:
hbase(main):029:0> disable 'testtable'
0 row(s) in 1.2320 seconds
hbase(main):030:0> drop 'testtable'
0 row(s) in 0.1620 seconds
通過exit命令退出hbase shell:
hbase(main):031:0> exit
停止hbase守護進程:
$ bin/stop-hbase.sh
stopping hbase...............
至此,我們完成了一個從安裝hbase到對表的創建,增刪改查相關的操作,最終刪除表,並且停止hbase服務的完整流程。