Hbase提供了一个shell的终端给用户交互:#$HBASE_HOME/bin/hbase shell,执行quit命令可以退出命令行
2.使用Hbase Shelll 命令操作:
名称 |
命令表达式 |
创建表 |
create '表名', '列族名1','列族名2','列族名N' 例如:create 'user','info1','info2' |
查看所有表 |
list 例如:list 'user' |
描述表(展示表结构) |
describe ‘表名’ 例如:desc ‘user’ |
判断表存在 |
exists '表名' |
判断是否禁用启用表 |
is_enabled '表名' is_disabled ‘表名’ |
添加记录 |
put ‘表名’, ‘rowKey’, ‘列族 : 列‘ , '值' |
查看记录rowkey下的所有数据 |
get '表名' , 'rowKey' |
查看表中的记录总数 |
count '表名' |
获取某个列族 |
get '表名','rowkey','列族' |
获取某个列族的某个列 |
get '表名','rowkey','列族:列’ |
删除记录 |
delete ‘表名’ ,‘行名’ , ‘列族:列' |
删除整行 |
deleteall '表名','rowkey' |
删除一张表 |
先要屏蔽该表(设置该表不可用),才能对该表进行删除 第一步 disable ‘表名’ ,第二步 drop '表名' |
清空表 |
truncate '表名' |
查看所有记录(全表扫描) |
scan "表名" |
查看某个表某个列中所有数据 |
scan "表名" , {COLUMNS=>'列族名:列名'} |
更新记录 |
就是重写一遍,进行覆盖,hbase没有修改,都是追加 |
Shell操作:
1.向表中添加数据(记录):
访问HBASE table中的行,只有三种方式:1.通过单个row key访问 2.通过row key的range(正则) 3.全表扫描
2.补充:Hbase和Zookeeper的关系: Hbase依赖zookeeper