打开
1.基本命令
h基本shell :# h获取base shell
1.1 获取帮助
#帮助帮助
#获取命令的详细信息
help ' status '
1.2 查看服务器状态
status1.3 查看版本信息
版本2.关于表的操作
2.1 查看所有表
list2.2 创建表
命令格式: create ‘“表名”、“列族名1”和“列#创建一个名为Student的表,其中包含两个基本信息(baseInfo )、学校信息(schoolInfo )列家族
create 'Student '、' baseInfo '、' schoolInfo'
2.3 查看表的基本信息
命令格式: desc ‘ ' '表名describe ' student '
2.4 表的启用/禁用
启用和禁用可以启用/禁用此表。 is_enabled和is_disabled检查核对表是否无效#禁用表
disable 'Student '
#核对表是否无效
is_disabled 'Student '
#启用表
启用' student '
#核对表是否有效
is _ enabled ' student '
2.5 检查表是否存在
exists ' student '2.6 删除表
#必须在删除表之前禁用表disable 'Student '
#删除表
drop 'Student'
3.增删改
3.1 添加列族
命令格式:表名称、列族名称alter 'Student ',' teacherInfo'
3.2 删除列族
命令格式: alter ‘表名’,{NAME=‘列族名’,method=‘delete’}alter 'Student ',{NAME='teacherInfo ',METHOD='delete'}
3.3 更改列族存储版本的限制
默认情况下,列族仅存储一个版本的数据。 如果需要存储多个版本的数据,则必须更改列族的属性。 更改后可以用desc命令显示alter 'Student ',{NAME='baseInfo ',VERSIONS=3}
3.4 插入数据
命令格式:“表名”、“行键”、“列族:列”和“值”注:如果新数据的行键值、列族名称和列名称与原始数据完全相同,则与更新操作相同
put 'Student ',' rowkey1',' baseInfo:name ',' tom '
put 'Student ',' rowkey1',' baseInfo:birthday ',' 1990-01-09 '
put 'Student ',' rowkey1',' baseInfo:age ',' 29 '
put 'Student ',' rowkey1',' schoolInfo:name ',' Havard '
put 'Student ',' rowkey1',' schoolInfo:localtion ',' Boston '
put 'Student ',' rowkey2',' baseInfo:name ',' jack '
put 'Student ',' rowkey2',' baseInfo:birthday ',' 1998-08-22 '
put 'Student ',' rowkey2',' baseInfo:age ',' 21 '
put 'Student ',' rowkey2',' schoolInfo:name ',' yale '
put 'Student ',' rowkey2',' schoolInfo:localtion ',' New Haven '
put 'Student ',' rowkey3 ',' baseInfo:name ',' maike '
put 'Student ',' rowkey3 ',' baseInfo:birthday ',' 1995-01-22 '
put 'Student ',' rowkey3 ',' baseInfo:age ',' 24 '
put 'Student ',' rowkey3 ',' schoolInfo:name ',' yale '
put 'Student ',' rowkey3 ',' schoolInfo:localtion ',' New Haven '
put 'Student '、' wrowkey4'、' baseInfo:name '和' maike-jack'
3.5 获取指定行、指定行中的列族、列的信息
#获取指定行中所有列的数据信息get 'Student ',' rowkey3 '
#获取指定行的指定列族下所有列的数据信息
get 'Student ',' rowkey3 ',' baseInfo '
#获取指定行的指定列的数据信息
get 'Student ',' rowkey3 ',' baseInfo:name'
3.6 删除指定行、指定行中的列
#删除指定的行delete 'Student ',' rowkey3 '
#删除指定行的指定列的数据
有两种基本方法可以通过delete 'Student '、' rowkey3 '和' baseinfo : name '
4.查询
h base访问数据。使用指定的rowkey获取数据: get方法;
在指定条件下获取数据:扫描方法。
扫描可以设置begin和end参数以访问范围内的所有数据。 get本质上是begin和end相等的特殊扫描。
4.1Get查询
#获取指定行中所有列的数据信息get 'Student ',' rowkey3 '
#获取指定行的指定列族下所有列的数据信息
get 'Student ',' rowkey3 ',' baseInfo '
#获取指定行的指定列的数据信息
get 'Student ',' rowkey3 ',' baseinfo : name '
4.2 查询整表数据
scan ' student '4.3 查询指定列簇的数据
scan ' student ',{ column=' bas除了scan 'Student ',{ columns=' baseinfo : birthday ' }列(columns )修饰语外,HBase还具有Limit (限制查询结果行数)、startrow (row key )
以下内容表示从名为rowkey2的rowkey中查找以下两行的最新3版本的name列中的数据:
扫描' student ',{COLUMNS='baseInfo:name ',STARTROW='rowkey2',STOPROW='wrowkey4',LIMIT=2,Versions值
过滤器可以设置一系列条件进行过滤。 如果查询值为24的所有数据,则该值将包含yale的所有数据。
扫描' student ',过滤器=' value过滤器(=,' substring:yale ) )列名的前缀为birth。
scan 'Student ',filter=' columnprefixfilter ' ' birth ' ) ' filter支持使用括号、AND和OR组合的多个筛选条件:
#列名的前缀为birth,列值包含1998个数据
scan 'Student ',filter=' columnprefixfilter (' birth ' ) andvaluefiltervaluefilter(=,' substring:1998 ' ) prefilter
扫描' student ',FILTER='PrefixFilter('wr ' )