hbase常用shell语句
时间: 2023-06-14 18:06:31 浏览: 48
1. 创建表:
```
create 'table_name', {NAME => 'cf1'}, {NAME => 'cf2'}
```
2. 插入数据:
```
put 'table_name', 'row_key', 'cf:column', 'value'
```
3. 查询数据:
```
get 'table_name', 'row_key'
```
4. 扫描数据:
```
scan 'table_name'
```
5. 删除数据:
```
delete 'table_name', 'row_key', 'cf:column'
```
6. 删除表:
```
disable 'table_name'
drop 'table_name'
```
7. 查看所有表:
```
list
```
8. 查看表的描述信息:
```
describe 'table_name'
```
9. 增加列族:
```
alter 'table_name', 'add', 'new_cf'
```
10. 删除列族:
```
alter 'table_name', 'delete', 'cf_to_delete'
```
相关问题
HBase shell里ROW FILTER语句详解
HBase shell中ROW FILTER语句用于过滤行键(row key),只返回符合条件的行。ROW FILTER语句的语法如下:
```shell
scan 'table_name',{FILTER=>"RowFilter(比较符,'比较值')"}
```
其中,比较符有以下几种:
- LESS:小于
- LESS_OR_EQUAL:小于或等于
- EQUAL:等于
- NOT_EQUAL:不等于
- GREATER_OR_EQUAL:大于或等于
- GREATER:大于
比较值可以是字符串或者数字,根据行键的类型而定。
以下是一些示例:
1. 找出行键小于等于"row001"的所有行
```shell
scan 'table_name',{FILTER=>"RowFilter(LESS_OR_EQUAL,'row001')"}
```
2. 找出行键等于"row001"的所有行
```shell
scan 'table_name',{FILTER=>"RowFilter(EQUAL,'row001')"}
```
3. 找出行键大于"row001"的所有行
```shell
scan 'table_name',{FILTER=>"RowFilter(GREATER,'row001')"}
```
4. 找出行键不等于"row001"的所有行
```shell
scan 'table_name',{FILTER=>"RowFilter(NOT_EQUAL,'row001')"}
```
需要注意的是,ROW FILTER语句只能用于单独的扫描操作,不能与其他过滤器一起使用。
hbase 建表语句
HBase建表语句可以使用HBase Shell或者HBase API来创建表。以下是一个示例的HBase建表语句:
```
create 'mytable', 'cf1', 'cf2', 'cf3'
```
这个语句创建了一个名为"mytable"的表,包含三个列族(cf1, cf2, cf3)。
你可以根据自己的需求修改表名和列族名称。同时,你还可以为每个列族设置进一步的属性,如版本数、压缩类型等。使用HBase API可以更精细地控制表的属性。
请注意,HBase建表语句的具体细节可能因版本和配置而异,你可以根据自己的HBase版本和需要进行相应的调整。