hbase基本操作命令
1.命名空间
list_namespace:列举所以命名空间
list_namespace_tables:列举指定命名空间中的表
alter_namespace:修改命名空间
create_namespace:创建命名空间
describe_namespace:查看指定命名空间配置
drop_namespace:删除命名空间
2.新建表
create ‘命名空间:表名’ , ‘列族名1’ , ‘列族名2’,… , ‘列族名n’
create ‘命名空间:表名’,{语法参数}
3.查看表
desc '命名空间:表名’
describe '命名空间:表名’
list ‘命名空间:正则表达式’
exists '命名空间:表名’
list:列出HBase中所有的表信息
4.修改表
修改列族
alter ‘命名空间:表名’,{语法参数}
删除列族
alter ‘命名空间:表名’, NAME => ‘f1’, METHOD => ‘delete’
alter ‘命名空间:表名’, ‘delete’ => 'f1‘
修改表属性
alter ‘命名空间:表名’, MAX_FILESIZE => '134217728’
alter ‘命名空间:表名’, METHOD => ‘table_att_unset’, NAME => ‘MAX_FILESIZE’
5.删除表
disabled ‘命名空间:表名’
drop ‘命名空间:表名’
6.表数据增加
put:向表、行、列指定的单元格添加数据
一次只能为一个表的一行数据的一个列添加一个数据
put ‘表名’ , ‘行键’ , ‘列族:列标识符’ , '插入值’
put ‘表名’ , ‘行键’ , ‘列族:列标识符’ , ‘插入值’ ,时间戳
在添加数据时,HBase会自动为添加的数据添加一个时间戳,当然,也可以在添加数据时人工指定时间戳的值
7.表数据获取
get:通过表名、行、列、时间戳、时间范围和版本号来获得相应单元格的值
get的参数可以是table表名,rowkey,以及column,value.无法通过get直接获取一个表中的所有行,必须指定rowkey
get ‘表名’,‘rowkey’,‘列族’
get ‘表名’,‘rowkey’,‘列族:列’
get ‘表名’,‘rowkey’,‘列族’,‘列族’
get ‘表名’,‘rowkey’,{TIMERANGE=[时间戳,时间戳]}
get ‘表名’,‘rowkey’,{FILTER=>“ValueFiter(=,‘banary:值’)”}
8.表数据扫描
scan 浏览表的相关信息
scan ‘表名’, {其他参数}
scan '表名
scan ‘表名’,{COLUMN=>‘列族’}
scan ‘表名’,{COLUMN=>‘列族:列’}
scan ‘表名’,{STARTROW=>‘rowkey’,ENDROW=>‘rowkey’}
scan ‘表名’,{STARTROW=>‘rowkey’,LIMIT=>行数}
scan ‘表名’,FILTER=“RowFilter(操作符,‘binary=rowkey’)”
scan ‘表名’,FILTER=“RowFilter(=,‘substring=rowkey’)”
scan ‘表名’,FILTER=“ValueFilter(=,‘banary:值’)”
9.表数据删除
delete删除指定列
deleteall:删除指定行的数据
delete ‘表名’, ‘行键’, '列簇’
deleteall ‘表名’, '行键’
10.表数据清空
truncate是通过删除表后重新创建表结构实现的
truncate ‘表名’,
truncate_preserve ‘表名’
11.删除表
enable/disable:使表有效或无效
drop:删除表
12.查询表中数据的行数
count ‘表名’
练习题:
1、创建表 clazz_per,列族 scount ‘表名’
tudent,course,版本数 2
2、列表显示创建的表
3、显示 student 的表结构
4、插入数据
4、扫描表的所有数据
5、查看表中所有学生信息
6、查看表中所有学生的姓名以及 java 的成绩
7、查看表中数值大于 90 的所有记录
8、查看表中行键大于 1890002 的 1 行记录
9、查询列 name,返回首行记录
12、将表中 1890001 的姓名更新为 lidan 和 longdan,查看指定最近的 2 个版本
13、删除 1890001 的整行记录
14、清空表中所有记录
15、删除表 clazz_per
create
'clazz_per',{NAME=>'student',VERSIONS=>2},{NAME=>'course',VERSIONS=>2}
list
describe 'clazz_per'
put 'clazz_per','1890001','student:name','changshan'
put 'clazz_per','1890001','student:age','20'
put 'clazz_per','1890001','course:java','90'
put 'clazz_per','1890001','course:vue','80'
put 'clazz_per','1890002','student:name','lisi'
put 'clazz_per','1890002','student:age','19'
put 'clazz_per','1890002','course:java','60'
put 'clazz_per','1890002','course:vue','70'
put 'clazz_per','1890003','student:name','liuwu'
put 'clazz_per','1890003','student:age','21'
put 'clazz_per','1890003','course:java','70'
put 'clazz_per','1890003','course:vue','90'
put 'clazz_per','1890004','student:name','liliu'
put 'clazz_per','1890004','student:age','20'
put 'clazz_per','1890004','course:java','55'
put 'clazz_per','1890004','course:vue','40'
scan 'clazz_per'
scan 'clazz_per',{COLUMNS=>'student'}
scan 'clazz_per',{COLUMNS=>['student:name','course:java']}
scan 'clazz_per',{FILTER=>"ValueFilter(>,'binary:90')"}
scan 'clazz_per',{STARTROW=>'1890003',LIMIT=>1}
scan 'clazz_per',{COLUMNS=>'student:name',LIMIT=>1}
put 'clazz_per','1890001','student:name','longdan'
put 'clazz_per','1890001','student:name','lidan'
scan 'clazz_per',{COLUMNS=>'student:name',VERSIONS=>2}
deleteall 'clazz_per'','1890001'
truncate 'clazz_per'
distable 'clazz_per'
drop 'clazz_per'