Hbase学习(四):HBase DDL与DML操作
1. HBASE Shell的DDL操作
1. 创建表 语法:create ‘表名’ , ‘列族名字1’ ,列族名字2’ ,列族名字n’
例如:create 'test2','test_id', ‘testname’
创建表test2,有两个列族test_id, testname
2. 列出全部表 语法:list
例如:list
3. 得到表的描述 语法: describe ‘表名’
例如: describe 'test2’
4. 删除一个列族:需要三个命令:
1) disable ‘表名’
2) alter ‘表名’, {NAME=>‘列族名字’, METHOD=>‘delete’}
3) enable ‘表名’
例如: disable ‘test2’
alter ‘test2’, {NAME=>‘testname’, METHOD=>‘delete’}
enable ‘test2'
5. 查看表是否存在 语法:exists '表名’
例如:exists 'test2'
6. 判断表是否为‘enable’ 语法:is_enabled '表名’
例如: is_enabled 'test2'
判断表是否为‘disable’语法: is_disabled '表名’
例如: is_disabled 'test2'
7. 删除一个表,需要两个命令:
1) disable ‘表名’
2) drop '表名'
例如:1) disable ‘test2’
2) drop 'test2'
2. HBASE Shell的DML操作
1. 添加一条数据
语法: put '表名', '行名', '列族名:列名', '值'
例如:
put 'person', 'per1', 'personinfo:name', 'xiaoshu'
put 'person', 'per1', 'personinfo:age', '59'
2. 全表扫描
语法: scan ‘表名’
例如: scan ‘person’
3. 获得某一行的所有数据:
语法:get '表名', '行名'
例如:get 'person','per1'
4. 获取某行,某列族的所有数据
语法: get ‘表名’, ‘行名’, ‘列族名'
例如:
get ‘person’,‘per1’,‘personinfo’
5. 获取某行,某列族,某列的所有数据
语法: get ‘表名’, ‘行名’, ‘列族名:列名’
例如: get 'person','per1','personinfo:age’
6. 更新一条数据,语法等同添加
语法: put '表名', '行名', '列族名:列名', '值'
例如:
put 'person', 'per1', 'personinfo:age', '69'
7. 删除某行,某列族,某列的值
语法:delete ‘表名’,‘行名’,‘列族:列’
例如:delete ‘person’,‘per1’,‘personinfo:age’
8. 删除整行
语法:deleteall '表名','行名’
例如:deleteall ' person ',' per1 '
9. 统计表的行数
语法:count ‘表名’
例如: count ' person '
10. 清空表
语法: truncate ‘表名’
例如: truncate ' person '