安裝完Apache hbase啟動後就可以進入 hbase shell了,hbase shell 是與Hbase交互的界面。
[neo@netkiller bin]$ hbase shell 2017-06-27 21:07:35,524 WARN [main] util.NativeCodeLoader: Unable to load native-hadoop library for your platform... using builtin-java classes where applicable HBase Shell; enter 'help<RETURN>' for list of supported commands. Type "exit<RETURN>" to leave the HBase Shell Version 1.2.6, rUnknown, Mon May 29 02:25:32 CDT 2017 hbase(main):001:0>
退出 Hbase shell
hbase(main):038:0> exit [neo@netkiller bin]$
首先我們做幾個基本操作,例如創建表,寫入數據,讀取數據等等,你會發現Hbase被神話了,操作其實沒有那麼複雜,遠沒有關係型資料庫複雜。
創建一個名為 t1 的表,使用預設命名空間 namespace=default,這個表有一個列族名(column family) 為 f1。後面會解釋什麼是 column family,這裡你只要對著操作就可以了。
hbase(main):002:0> create 't1', 'f1' 0 row(s) in 1.2190 seconds => Hbase::Table - t1
向t1表插入數據欄位名(key)是r1,數據值 value 是 ‘value’
hbase(main):014:0> put 't1', 'r1', 'f1', 'value' 0 row(s) in 0.0060 seconds
獲取表 t1 ,欄位名(key)為 r1 的數據
hbase(main):032:0> get 't1', 'r1' COLUMN CELL f1: timestamp=1498613275013, value=value 1 row(s) in 0.0240 seconds
列出用戶表
hbase(main):009:0> list TABLE t1 1 row(s) in 0.0450 seconds => ["t1"] hbase(main):010:0>
掃瞄表相當於 select * from t1
hbase(main):034:0> scan 't1' ROW COLUMN+CELL r1 column=f1:, timestamp=1498613275013, value=value 1 row(s) in 0.0140 seconds
表的啟用與禁用操作
hbase(main):010:0> disable 't1' 0 row(s) in 1.3740 seconds hbase(main):011:0> enable 't1' 0 row(s) in 1.2380 seconds
刪除表,刪除表之前需要先禁用該表,然後使用drop命令刪除。
hbase(main):036:0> disable 't1' 0 row(s) in 2.2460 seconds hbase(main):037:0> drop 't1' 0 row(s) in 1.2310 seconds hbase(main):038:0>