一、基本命令
- 查看版本号——version
- 查看状态——status
- 查看当前用户——whoami
- 使用帮助——help
二、操作命令
- 创建表——create ‘user’,‘baseinfo’,‘privateinfo’——user是表名,baseinfo和privateinfo是两个列簇(列族)
- 查看所有表——list
- 查看表的具体信息——desc ‘user’
- 判断表是否存在——exists ‘user’
- 向表中插入数据
put ‘user’,‘001’,‘baseinfo:name’,‘zhangsan’
put ‘user’,‘001’,‘baseinfo:gender’,‘male’
put ‘user’,‘001’,‘privateinfo:age’,‘20’
put ‘user’,‘002’,‘baseinfo:name’,‘lisi’
‘001’、'002’是row-key,‘name’,'gender’是列 - 通过行键(row-key)获取数据——get ‘user’,‘001’
- 通过指定的列族(CF)获取数据
get ‘user’,‘001’,‘baseinfo’
get ‘user’,‘001’,{COLUMNS=>‘baseinfo’}
get ‘user’,‘001’,{COLUMNS=>[‘baseinfo’]} - 获取指定列的数据
get ‘user’,‘001’,‘baseinfo:name’
get ‘user’,‘001’,{COLUMNS=>[‘baseinfo:name’]}
get ‘user’,‘001’,{COLUMNS=>‘baseinfo:name’} - 更新数据(覆盖即更新)——put ‘user’,‘001’,‘baseinfo:name’,‘zhangyan’
- 修改多版本存储——alter ‘user’ ,NAME=>‘baseinfo’,VERSIONS=>5
- 多版本数据查询——get ‘user’,‘001’,{COLUMNS=>[‘baseinfo:name’],VERSIONS=>5}
- 全扫描——scan ‘user’,{COLUMNS=>[‘baseinfo:name’],VERSIONS=>2}
- 指定rowkey范围查询——scan ‘user’,{STARTROW=>‘0’,STOPROW=>‘2’}
- 统计表中数据个数——count ‘user’
- 删除整行——deleteall ‘user’,‘001’
- 删除一个单元格的值——delete ‘user’,‘001’,‘baseinfo:name’,1505286495492
- 删除一列——delete ‘user’,‘001’,‘baseinfo:name’
- 删除一个列簇——alter ‘user’,‘delete’=>‘baseinfo’
- 禁用/启用表——disable/enable ‘user’
- 清空表——truncate ‘user’
- 删除表——disable ‘user’ ——>drop ‘user’ 先禁用再删除
三、名称空间
名称空间(namespace)是一个表管理的机制,可以比作成Mysql的数据库
- 创建namespace——create_namespace 名称
- 列出所有namespace——list_namespace
- 创建namespace下的表——create ‘test:user’,‘info’ --test为namespace,user为表名,info为一个列族名
- 查看namespace下的所有表——list_namespace_tables ‘名称空间名’
- 查看namespace下的表的结构——describe_namespace ‘名称空间名’
- 修改namespace属性
--修改前
hbase(main):002:0> create_namespace 'test1',{"name"=>"znn","time"=>"2020-07-12"}
0 row(s) in 0.0330 seconds
hbase(main):003:0> describe_namespace 'test1'
DESCRIPTION
{NAME => 'test1', name => 'znn', time => '2020-07-12'}
1 row(s) in 0.0160 seconds
--修改后
hbase(main):007:0> alter_namespace 'test1',{METHOD=>"set","name"=>"sss"}
0 row(s) in 0.0140 seconds
hbase(main):008:0> describe_namespace 'test1'
DESCRIPTION
{NAME => 'test1', name => 'sss', time => '2020-07-12'}
1 row(s) in 0.0050 seconds
- 删除属性——
hbase(main):010:0> alter_namespace 'test1',{METHOD=>"unset",NAME=>"name"}
0 row(s) in 0.0290 seconds
hbase(main):011:0> describe_namespace 'test1'
DESCRIPTION
{NAME => 'test1', time => '2020-07-12'}
1 row(s) in 0.0060 seconds
四、安全权限(Security with GRANT)
授权使用的关键字是grant,有以下几个权限类别
- R——读
- W——写
- C——创建
- A——管理
- X——执行
示例:grant ‘user’,‘RWCA’,‘table:qualifier’