查看所有表
list
创建表
1.create 'user1', 'info1','info2'
2.create 'user2', {NAME=>'info1', version=>3}, {NAME=> 'cf2', version=>1} 优点: 可以给列族设置属性
查看表的详情
1.desc 'user1'
增加列族
1.alter 'user1', 'info3' 2. alter 'user1', {NAME=>'info5',version=>4}
删除列族
1.alter 'user1', {NAME => 'info5', METHOD => 'delete'}
2.alter 'user1', 'delete'=>'info4'
查看表是否存在
exists 'table_name'
启用禁用表
disable 'table_name' 禁用表
enable 'table_name' 启用表
is_disabled 'table_name' 是否禁用表
is_ensabled 'table_name' 是否使用中的表
删除表
drop 'table_name' 删表之前先要禁用表
put插入数据
1. put 'user1', 'row1', 'info1:name','xiaoke'
2.put 'user1', 'row1', 'info1:age', '18',1482077777777
时间戳是可以自己指定的,默认HBase自己生成
get获取数据
1.get 'user1', 'row1'
info1:age timestamp=1482077777777, value=18
info1:name timestamp=1625616135416, value=xiaoke
2.get 'user1','row1', 'info1:name'
info1:name timestamp=1625616135416, value=xiaoke
3.get 'user1','row1', {COLUMNS=>'info1:name', VERSIONS=>1}
info1:name timestamp=1625616135416, value=xiaoke
scan查看表
1.scan 'user1'
row1 column=info1:age, timestamp=1482077777777, value=18
row1 column=info1:name, timestamp=1625616135416, value=xiaoke
2.hbase(main):066:0> scan 'user1', {COLUMNS=> 'info1:name'}
ROW COLUMN+CELL
row1 column=info1:name, timestamp=1625616135416, value=xiaoke
3.scan 'user1', {COLUMNS=> 'info1:name', VERSIONS => 1}
ROW COLUMN+CELL
row1 column=info1:name, timestamp=1625616135416, value=xiaoke
4.scan 'user1', {COLUMNS=> 'info1:name', VERSIONS => 1, TIMESTAMP=>1625616135416}
ROW COLUMN+CELL
row1 column=info1:name, timestamp=1625616135416, value=xiaoke
5.scan 'user1', {COLUMNS => ['info2', 'info1'], FILTER => "(QualifierFilter(=, 'substring:a'))"} 待定
ROW COLUMN+CELL
row1 column=info1:age, timestamp=1482077777777, value=18
row1 column=info1:name, timestamp=1625616135416, value=xiaoke
row1 column=info2:name, timestamp=1625617156778, value=xiaoke
delete删除数据
1. delete 'user', 'row1', 'info:name' 删除user表row key为'row1', 列标识符为'info:name'的数据
2. delete 'user', 'row2', 'info:name', 1392399339922 删除user表row key 为'row2', 列标识符为'info:name', timestamp为1392399339922的数据
清空表数据
truncate 'tableName'
过滤器
get 'person', 'row1', {FILTER => "ValueFilter(=, 'binary:中国')"}
get 'person', 'row1', {FILTER => "(QualifierFilter(=, 'substring:a'))"}
scan 'person', {COLUMNS => 'info:name'}
scan 'person', {COLUMNS => ['info', 'data'], FILTER => "(QualifierFilter(=, 'substring:a'))"}
scan 'person', {COLUMNS => 'info', STARTROW => '20130201', ENDROW => '20140202'}
scan 'person', {COLUMNS => 'info:name', TIMERANGE => [1395978233636, 1395987769587]}
alter 'person', NAME => 'xiaoke'
alter 'person', NAME => 'xiaoke', VERSIONS => 10
get 'user', 'row1', {COLUMNS => ['info:name', 'data:pic']}
get和scan查看表中数据的区别
1. get指定rowkey获取数据
2. scan指定条件获取一批数据