操作
|
命令
|
1、进入hbase终端 | |
进入hbase终端 | hbase shell 前提:export PATH=$HBASE_HOME/bin:$PATH |
2、namespace操作 | |
namespace相关
|
1)创建namespace: create_namespcae 'name'
2)删除namespace :drop_namespace 'name'
3)查看namespace: describe_namespace 'name'
4)列出所有namespace list_namespace
|
查看存在哪些表
|
list
|
3、表操作 | |
创建表
|
create 'nm1:table1', {NAME=>'cf1',TTL => '15552000', COMPRESSION => 'snappy'},{NUMREGIONS => 30, SPLITALGO => 'HexStringSplit'}
|
删除表
|
两步走
disable 'nm1:table1'
drop 'nm1:table1'
|
查看表
| desc 'nm1:table1'(describe关键字亦可) |
清空表数据 | truncate 'nm1:table1'(该操作会连带分区一起删除,truncate_preserve可保留分区) |
4、表记录更新操作 | |
添加表记录
|
put 'nm1:table1','rk1','cf1:column1','value1'(计数器插入的列除外)
|
删除表记录
|
delete 'nm1:table1','rk1'
|
更新表记录
|
put操作覆盖即可
|
bulkload批量更新 | https://blog.youkuaiyun.com/superLaner/article/details/120458923 |
5、表记录查询操作 | |
查询单条记录 |
get 'nm1:table1','rk1'
get 'nm1:table1','rk1','cf1'
get 'nm1:table1','rk1','cf1:column1'
|
查询表记录总数
|
count 'nm1:table1'
|
查询多条记录
|
scan 'tableName'
scan 'tableName',{COLUMN=>'columnFamily'} 【此处写COLUMN、COLUMNS无所谓】
scan 'tableName',{COLUMN=>'columnFamily:column'}
scan 'tableName',{COLUMN=>'columnFamily:column',
LIMIT=>n,STARTROW=>'a',STOPROW=>'z'}
注:本组命令都可以追加LIMIT=>n参数(如上边最后一个命令),限定查询结果集的条数
|
前缀模糊查询 | scan 'tableName', {FILTER => org.apache.hadoop.hbase.filter.PrefixFilter.new(org.apache.hadoop.hbase.util.Bytes.toBytes('rowkeyPrefix'))} |
十六进制数据正常显示
|
查询命令追加 {FORMATTER => 'toString'}
|
6、计数器操作 | |
计数器插入
|
incr 't1', 'row1', 'cf:no', 1(其中cf:no为计数器插入字段,1为步长,默认为1)
|
计数器查询
|
get_counter 't1','row1','cf:no'(其中cf:no为计数器插入字段)
|
7、自带压测 | |
压测
|
/hbase org.apache.hadoop.hbase.PerformanceEvaluation
|
其他 | |
他人总结 |
HBase shell操作
最新推荐文章于 2024-03-26 22:02:18 发布