HBase shell 常用指令

时间:2021-04-02 05:56:01

HBase shell 常用指令

连接HBase

$ ./bin/hbase shell

打开帮助

hbase(main):001:0> help

创建表

hbase(main):003:0> create 'test', 'cf'
0 row(s) in 2.6280 seconds

=> Hbase::Table - test

成功在HBase数据库上创建一个名为test的表,表中包含一个名字为cf的列族。

查看表的信息

hbase(main):005:0> list 'test'
TABLE
test
1 row(s) in 0.0110 seconds

=> ["test"]

插入数据

hbase(main)::> put 'test', 'row1', 'cf:a', 'value1'
row(s) in 0.2250 seconds hbase(main)::> put 'test', 'row2', 'cf:b', 'value2'
row(s) in 0.0070 seconds hbase(main)::> put 'test', 'row3', 'cf:c', 'value3'
row(s) in 0.0050 seconds

成功往HBase数据库的test表中插入了三行数据,cf是列族名,a,b,c是列名,row1,row2,row3是row key。在HBase中列名是不需要在建表的时候指定,会在用户插入数据的时候动态创建。

获取整个表中的所有记录

获取test表所有记录:

hbase(main)::> scan 'test'
ROW COLUMN+CELL
row1 column=cf:a, timestamp=, value=value1
row2 column=cf:b, timestamp=, value=value2
row3 column=cf:c, timestamp=, value=value3
row(s) in 0.1950 seconds

获取单行记录

获取test表中row key为row1的行记录:

hbase(main)::> get 'test', 'row1'
COLUMN CELL
cf:a timestamp=, value=value1
row(s) in 0.2120 seconds

停用或启用表

当你需要删除表或者修改表的设置的时候,你需要先把表停用。

停用test表:

hbase(main)::> disable 'test'
row(s) in 2.5570 seconds

启用test表:

hbase(main)::> enable 'test'
row(s) in 1.4180 seconds

删除表

停用test表:

hbase(main)::> disable 'test'
row(s) in 2.5340 seconds

删除test表:

hbase(main)::> drop 'test'
row(s) in 1.2790 seconds

退出HBase shell

hbase(main)::> quit