HBase相关shell操作
我们可以使用shell的方式维护和管理HBase。例如:执行建表语句、执行增删改查操作等。
进入HBase客户端操作界面
/bin/hbase shell
查看帮助命令
help
查看当前数据库中有哪些表
list
创建一张表
create 'user','info','data'
create 'user',{NAME => 'info', VERSIONS => '3'},{NAME => 'data'}
添加数据操作
put 'user','rk0001','info:name','zhangsan'
put 'user','rk0001','info:gender','female'
put 'user','rk0001','info:age',20
put 'user','rk0001','data:pic','picture'
查询数据操作
get 'user','rk0001'
get 'user','rk0001','info'
get 'user','rk0001','info:name','info:age'
get 'user','rk0001','info','data'
get 'user','rk0001',{COLUMN => ['info', 'data']}
get 'user','rk0001',{COLUMN => ['info:name', 'data:pic']}
get 'user','rk0001',{FILTER => "ValueFilter(=,'binary:zhangsan')"}
scan 'user'
scan 'user',{FORMATTER => 'toString'}
scan 'user',{LIMIT => 3, FORMATTER => 'toString'}
scan 'user',{COLUMNS => 'info'}
scan 'user',{COLUMNS => 'info', RAW => true, VERSIONS => 5}
scan 'user',{COLUMNS => 'info', RAW => true, VERSIONS => 3}
scan 'user',{COLUMNS => ['info', 'data']}
scan 'user',{COLUMNS => ['info:name', 'data:pic']}
scan 'user',{COLUMNS => 'info:name'}
scan 'user',{COLUMNS => 'info:name', VERSIONS => 5}
scan 'user',{COLUMNS => ['info', 'data'], FILTER => "(QualifierFilter(=,'substring:a'))"}
scan 'user',{COLUMNS => 'info',STARTROW => 'rk0001', ENDROW => 'rk0003'}
scan 'user',{FILTER => "PrefixFilter('rk')"}
scan 'user',{TIMERANGE => [1392368783980, 1392380169184]}
过滤器的查询地址: http://hbase.apache.org/2.2/devapidocs/index.html
更新数据操作
alter 'user',NAME => 'info', VERSIONS => 5
删除数据以及删除操作
delete 'user', 'rk0001', 'info:name'
delete 'user','rk0001'
alter 'user',NAME => 'info', METHOD => 'delete'
alter 'user', 'delete' => 'info'
truncate 'user'
disable 'user'
drop 'user'
注意:
1.deleteall是在HBase 2.0版本后出现的,在2.0版本之前,只需要使用delete这个命令即可完成所有的数据删除工作
2.delete删除数据的时候,只会删除最新版本的数据,而deleteall直接将对应的数据的所有历史版本全部删除
3.如果不disable直接drop表,会报错:Drop the named table. Table must first be disabled.
统计一张表有多少行数据
count 'user'
HBase高级Shell管理命令
status 'node1'
whoami
count 'user'
alter 'user', NAME => 'CF2', VERSIONS => 2
alter 'user', 'delete' => 'CF2'
|