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