HBase —— Shell操作
作者:互联网
HBase —— Shell操作
表的基本操作
创建表
create '表名', '列簇名', ...
查看表
list
删除表
## 禁用表
disable "表名"
## 删除表
drop "表名"
添加数据
put '表名','ROWKEY','列簇名:列','值'
查看数据
get '表名','ROWKEY',{FORMATTER => 'toString'}
更新数据
## 更新数据仍然用put
put '表名','ROWKEY','列簇名:列','值'
删除数据
## 删除一列
delete '表名','ROWKEY','列簇:列'
## 删除一行
deleteall '表名','ROWKEY'
扫描表
## 还是要避免scan一张大表
scan '表名',{FORMATTER => 'toString'}
## 可以限制返回数量,列等
scan '表名',{LIMIT => 3, COLUMNS => ['列簇:列','列簇:列'], FORMATTER => 'toString'}
查询指定ROWKEY
scan '表名', {ROWPREFIXFILTER => 'rowkey'}
过滤器
show_filters # 显示过滤器
scan '表名', {Filter => "过滤器(比较运算符,'比较器表达式')"} # 使用过滤器
过滤器 | 描述 |
---|---|
RowFilter | 行键过滤器 |
ValueFilter | 列值过滤器 |
QualifierFilter | 列标识过滤器 |
FamilyFilter | 列簇过滤器 |
SingleColumnValueFilter | 单列值过滤器 |
SingleColumnValueExcludeFilter | 列值排除过滤器 |
PrefixFilter | 行键前值过滤器 |
PageFilter | 分页过滤器 |
比较器
比较器 | 描述 | 基本语法 |
---|---|---|
BinaryComparator | 匹配完整字节数组 | binary:值 |
BinaryPrefixComparator | 匹配字节数组前缀 | binary prefix:值 |
BitComparator | 匹配比特位 | bit:值 |
NullComparator | 匹配空值 | null |
RegexStringComparator | 匹配正则表达式 | regexstring:正则表达式 |
SubstringComparator | 匹配子字符串 | substring:值 |
过滤器使用示例
## 例如查询mytable中的RowKey为x的行信息
scan 'mytable', {FILTER => "RowFilter(=,'binary:x')"}
组合过滤器
使用AND和OR来组合过滤查询
scan '表名', {Filter => "过滤器(比较运算符,'比较器表达式')" AND/OR "过滤器(比较运算符,'比较器表达式')"}
shell状态管理
命令 | 描述 |
---|---|
status | 查看状态 |
whoami | 查看当前用户 |
list | 显示所有表 |
count | 统计表的记录数 |
describe | 展示表结构信息 |
exists | 检查表是否存在 |
enable | 启用一张表 |
disable | 禁用一张表 |
is_enabled | 检查表是否启用 |
is_deabled | 检查表是否禁用 |
alter | 更改表和列簇的模式 |
drop | 删除一张被禁用的表 |
truncate | 清空表的数据 |
标签:列簇,Shell,scan,##,ROWKEY,表名,过滤器,操作,HBase 来源: https://www.cnblogs.com/S2Jgogo/p/16500578.html