bin/hbase shell
help
namespace
help 'create_namespace'
create_namespace 'bigdata'
list_namespace
DDL
创建表
create 'bigdata:student', {NAME => 'info', VERSIONS => 5}, {NAME => 'msg'}
两个列族 info msg VERSIONS版本数为5
如不写命名空间默认default
create 'student1', 'info'
查看表
list
查看表详情
describe 'student1'
修改表
alter 'student1', {NAME => 'f1', VERSIONS => 3}
删除列族
alter 'student1', NAME => 'f1', METHOD => 'delete'
删除表
先将表格状态设置为不可用。
disable 'student1'
drop 'student1'
DML
写入数据
只能添加cell,可以手写时间戳,默认为系统时间
相同rowKey,相同列的数据,会写入多个版本进行覆盖
put 'bigdata:student', '1001', 'info:name', 'zhangsan'
读取数据
get
最大范围是一行数据,可以进行列过滤
get 'bigdata:student', '1001', {COLUMN => 'info:name'}
scan
不建议扫描过多的数据,推荐使用
startRow 和 stopRow 来控制读取的数据,默认范围左闭右开。
scan 'bigdata:student', {STARTROW => '1001', STOPROW => '1002'}
删除
delete
删除一个版本的数据,默认最新的版本
delete 'bigtata:student', '1001', 'info:name'
delete
删除所有版本
会标记为删除,不会立刻删除,在特定时期清理磁盘时进行删除
deleteall 'bigdata:student', '1001', 'info:name'