- 1. 定义表
- 1.1 create 建表
- 1.2 Describe 查看表的属性
- 1.3 Disable 停用表
- 1.4 Exists查看表是否存在
- 1.5 alter 增/改一个列族
- 1.6 alter 删除列族
- 2. 插入数据
- 2.1 put 插入数据
- 2.2 Append 拼接数据
- 3. 查看数据
- 3.1 scan 命令
- 3.2 get 命令
- 3.3 删除数据
- 4. Hbase过滤器
- 4.1 RowFilter
- 4.2 FamilyFilter
- 4.3 ValueFilter
- 4.4 PrefixFilter
- 4.5 多个列或多个查询条件
create '表名','列族名'
create '表名',{NAME=>'列族名',VERSION=>'',BLOCKCACHE=>'',BLOOMFILTER=>'',COMPRESSION=>''},{NAME=>'',属性=>'属性值'}
1.2 Describe 查看表的属性
describe '表名'1.3 Disable 停用表
Disable '表名'
1.4 Exists查看表是否存在Hbase删除表之前,首先要将其停用(disable),然后才能执行删除操作
Exists '表名'1.5 alter 增/改一个列族
alter '表名','列族名'
alter'表名',{NAME='列族名',属性1=>属性值1,属性2=>属性值2},{NAME=>'列族名2',属性1=>属性值1,。。。}
如果是不存在的列族,就是添加,如果是已存在的列族,就是修改属性
Alter允许的列族级别属性
-
BLOOMFILTER
-
COMPRESSION
-
TTL
-
BLOCKSIZE
-
BLOCKCACH
Alter允许的表级别属性
-
MAX_FILESIZE
-
READONLY
-
MEMSTORE_FLUSHSIZE
-
PRIORITY
alter'表名','delete'=>'列族名'2. 插入数据 2.1 put 插入数据
put'表名','行键名','列族名','列名'2.2 Append 拼接数据
Append'表名','行键','列名','拼接值'3. 查看数据 3.1 scan 命令
-
scan查看表中数据
scan 'tale_name'
-
scan 指定行键范围
scan 'table_name',{STARTROW=>'a1',ENDROW=>'a5'}范围 左闭右开 [a1,a5)
-
scan 指定最大返回行数量
scan 'table_name',{LIMIT=>num} -
scan 指定时间戳范围
scan 'table_name',{TIMERANGE=>[min,max]} -
scan 查看指定列信息
scan 'table_name',{COLUMN=>[列族1:列名1,列族2:列名2,...]}
get 查看表中单元格的数据
get 'table_name','rowkey_name',{COLUMN,VERSIONS,TIMERANGE,FILTER}
get 查看多列的数据
get 'table_name','rowkey_name',{COLUMN=>[列族1:列名1,列族2:列名2,...]}
3.3 删除数据
delete 删除表中的数据
delete 'table_name','rowkey_name',
deleteall 删除整行数据
4. Hbase过滤器 4.1 RowFilter包含字符串查找
查询表名为’test’,匹配出rowkey中含w1的数据。
scan'test',FILTER=>"RowFilter(=,'substring:w1')"
数值精确查找
查询表名为test,匹配出rowkey等于row1的数据。
可以使用所有比较运算符。(<,≤,=,≠,>,≥)
scan'test',FILTER=>"RowFilter(=,’binary:row1')"4.2 FamilyFilter
查询表名为test,“列族名称”中匹配出含’cf’的数据。
scan'test',FILTER=>“FamilyFilter(=,'substring:cf')"4.3 ValueFilter
查询表名为test,value含’Tom’的数据。
scan'test',FILTER=>"ValueFilter(=,'substring:Tom')"4.4 PrefixFilter
查询表名为test,rowkey前缀中**含’ro’**的数据。
scan'test',FILTER=>"PrefixFilter('ro')"
4.5 多个列或多个查询条件
(1)多个列名
(2)多个过滤器可以用AND或者OR来连接
(3)设计好的rowkey
查询键值等于row1,且列族名称等于cf的列值
scan'test',{FILTER=>"RowFilter(=,'binary:row1') AND FamilyFilter(=,’binary:cf’)"}



