1:Hbase 集羣配置信息及啓動命令
其中,集羣主節點的主機名爲:hd09-01,兩臺從節點主機名分別爲:hd09-02,hd09-03。
-
啓動Hbase的工作:
-
hbase是基於hadoop的,所以hbase服務器必須啓動hadoop集羣:start-dfs.sh
-
再接着啓動yarn集羣:start-yarn.sh
-
在三臺機器上分別啓動Zookeeper集羣:輸入zkServer.sh start
-
然後在主節點機器上的hbase目錄下輸入:bin/hbase-daemon.sh start master
-
最後在兩臺從節點目錄下分別輸入:bin/hbase-daemon.sh start regionserver
-
在主節點上查看進程:
HMaster表示該臺機器作爲Hbase集羣的主節點。
在從節點上查看進程:
HRegionServer表示該臺機器作爲Hbase集羣的從節點。
啓動終端:bin/hbase shell
啓動web端:
輸入:192.168.152.128:16010
其中,192.168.152.128是主節點hd09-01的ip地址,16010是Hbase的端口。
以上結果均能顯示,表示環境及啓動命令正常。
2:Hbase-shell基礎命令
1:查看服務器狀態 :status 'hd09-01’
上述結果顯示:1個主節點,2個從節點,與環境配置信息相符。
2:查看當前有哪些表 :list
3:Hbase-表操作
- 創建表:**create ‘表名’,‘列族’ **
- 查看錶:scan '表名’
3.向表中插:put ‘表名’,‘rowkey’,‘列族:列名’,‘值’
其中:
rowkey:行鍵:唯一 不重複
timestamp:時間戳
cell:單元格 數據存放位置
column familly:列族,列族下包含多個列
column:列
4.覆蓋數據 :在hbase中沒有修改,但是可以覆蓋只要保持rowkey,列族,列相同即可進行覆蓋操作
5.繼續添加一行rowkey爲102的數據,然後篩選rowkey只爲101的數據
掃描 :can ‘user’,{STARTROW =>‘101’,STOPROW => ‘101’}
6.查看錶結構 :describe ‘表名’
7.變更表信息 :alter ‘表名’,{NAME => ‘info’,VERSIONS => ‘3’}
8.刪除數據:根據rowkey刪除,deleteall ‘表名’,‘rowkey’
如果想刪除rowkey爲101的所有數據:deleteall ‘表名’,‘rowkey’
如果根據具體的列刪除:delete ‘表名’,‘rowkey’,‘列族:列’
9:清空表:truncate ‘表名’
10:刪除表:刪除表
第一步:設置不可用狀態:disable ‘表名’
第二步:刪除該表:drop ‘表名’
11:統計表中數據行數 :count ‘表名’
在此,由於剛剛把user表已經刪除,重新創建一個emp表:
create ‘emp’,‘info1’,‘info2’----- 此時,有兩個列族,相同的rowkey:1001
在不同的列族中,插入兩條數據:
12:查看指定rowkey值 :get ‘表名’,‘rowkey’
可以看到,count實際上統計的是rowkey的值
13:查看具體列值 :get ‘表名’,‘rowkey’,‘列族:列’
14:查看具體列值 :get ‘表名’,‘rowkey’,'列族:列 ’