栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 前沿技术 > 大数据 > 大数据系统

HBase Shell 命令

HBase Shell 命令

文章目录
  • 1. 定义表
    • 1.1 create 建表
    • 1.2 Describe 查看表的属性
    • 1.3 Disable 停用表
    • 1.4 Exists查看表是否存在
    • 1.5 alter 增/改一个列族
    • 1.6 alter 删除列族
  • 2. 插入数据
    • 2.1 put 插入数据
    • 2.2 Append 拼接数据
  • 3. 查看数据
    • 3.1 scan 命令
    • 3.2 get 命令
    • 3.3 删除数据
  • 4. Hbase过滤器
    • 4.1 RowFilter
    • 4.2 FamilyFilter
    • 4.3 ValueFilter
    • 4.4 PrefixFilter
    • 4.5 多个列或多个查询条件

1. 定义表 1.1 create 建表
create '表名','列族名'

create '表名',{NAME=>'列族名',VERSION=>'',BLOCKCACHE=>'',BLOOMFILTER=>'',COMPRESSION=>''},{NAME=>'',属性=>'属性值'}
1.2 Describe 查看表的属性
describe '表名'
1.3 Disable 停用表
Disable '表名'

Hbase删除表之前,首先要将其停用(disable),然后才能执行删除操作

1.4 Exists查看表是否存在
Exists '表名'
1.5 alter 增/改一个列族
alter '表名','列族名'

alter'表名',{NAME='列族名',属性1=>属性值1,属性2=>属性值2},{NAME=>'列族名2',属性1=>属性值1,。。。}

如果是不存在的列族,就是添加,如果是已存在的列族,就是修改属性

Alter允许的列族级别属性

  • BLOOMFILTER

  • COMPRESSION

  • TTL

  • BLOCKSIZE

  • BLOCKCACH

Alter允许的表级别属性

  • MAX_FILESIZE

  • READONLY

  • MEMSTORE_FLUSHSIZE

  • PRIORITY

1.6 alter 删除列族
alter'表名','delete'=>'列族名'
2. 插入数据 2.1 put 插入数据
put'表名','行键名','列族名','列名'
2.2 Append 拼接数据
Append'表名','行键','列名','拼接值'
3. 查看数据 3.1 scan 命令
  1. scan查看表中数据

    scan 'tale_name'
    
  2. scan 指定行键范围

    scan 'table_name',{STARTROW=>'a1',ENDROW=>'a5'}
    

    范围 左闭右开 [a1,a5)

  3. scan 指定最大返回行数量

    scan 'table_name',{LIMIT=>num}
    
  4. scan 指定时间戳范围

    scan 'table_name',{TIMERANGE=>[min,max]}
    
  5. scan 查看指定列信息

    scan 'table_name',{COLUMN=>[列族1:列名1,列族2:列名2,...]}
    
3.2 get 命令

get 查看表中单元格的数据

get 'table_name','rowkey_name',{COLUMN,VERSIONS,TIMERANGE,FILTER}

get 查看多列的数据

get 'table_name','rowkey_name',{COLUMN=>[列族1:列名1,列族2:列名2,...]}
3.3 删除数据

delete 删除表中的数据

delete 'table_name','rowkey_name',

deleteall 删除整行数据

4. Hbase过滤器 4.1 RowFilter

包含字符串查找

查询表名为’test’,匹配出rowkey中含w1的数据。

scan'test',FILTER=>"RowFilter(=,'substring:w1')"

数值精确查找

查询表名为test,匹配出rowkey等于row1的数据。

可以使用所有比较运算符。(<,≤,=,≠,>,≥)

scan'test',FILTER=>"RowFilter(=,’binary:row1')"
4.2 FamilyFilter

查询表名为test,“列族名称”中匹配出含’cf’的数据。

scan'test',FILTER=>“FamilyFilter(=,'substring:cf')"
4.3 ValueFilter

查询表名为test,value含’Tom’的数据。

scan'test',FILTER=>"ValueFilter(=,'substring:Tom')"
4.4 PrefixFilter

查询表名为test,rowkey前缀中**含’ro’**的数据。

scan'test',FILTER=>"PrefixFilter('ro')"
4.5 多个列或多个查询条件

(1)多个列名

(2)多个过滤器可以用AND或者OR来连接

(3)设计好的rowkey

查询键值等于row1,且列族名称等于cf的列值

scan'test',{FILTER=>"RowFilter(=,'binary:row1') AND FamilyFilter(=,’binary:cf’)"}
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/673422.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号