hbase基于hue的查询语法

hbase基于hue的查询语法

登录地址

https://hue-ui.xiaoniangao.cn

界面操作说明

  1. 进入hue中的hbase
  2. 进入表的查询界面
  3. 界面说明

查询语句

,表示结束查询,可以不加

主键查询

  1. 输入主键 rowkey1,rowkey2
    说明:只输入主键查询
    例1:00000051|1538229142
    例2:00000051|1538229142,00000051|1538230148
  2. 根据主键的前缀查询 row_prefix*,
    说明:根据主键的前几位进行模糊查询,默认只显示一条数据;通过 +n-1 来显示n条数据
    例1:00000051|*
    例2:显示10条数据 00000051|* +9

查询列族和列名

[colFamily:col1,colFamily:col2,colFamily:,col3,col_prefix*+(n-1),col1 to col2]
说明:colFamily表示列族,col表示列名, colFamily: 表示显示该列族下所有列, <col_prefix>*+(n-1) 根据列名模糊查询,col1 to col2显示col1到col2之间的列
例100000051|* +9 [i:ts,i:path]

例200000051|* +9 [i:p*+3]

例300000051|1538229142,00000051|1538230148[elapse to path]

根据条件过滤查询

{filter() AND/OR filter()}
个人意见:substring筛选时使用=来筛选,否则会出错;binary筛选时可以用=、>=、<=等操作

  • 根据主键进行过滤
    • RowFilter(=,'substring:111') 主键中包含111
    • RowFilter(=,'binary:111') 主键等于111
    • PrefixFilter('user1') 主键的前缀是user1
  • 根据列进行过滤
    • 列名过滤
      • QualifierFilter (=, 'substring:p') 列名中包含p
      • QualifierFilter (=, 'binary:p') 列名等于p
      • MultipleColumnPrefixFilter('a','b','e') 列名的前缀是a或者b或者e
      • ColumnPrefixFilter('c2') 列名的前缀是c2
    • 列值过滤
      • SingleColumnValueFilter('i', 'path', =, 'substring:student') 列族为i,列名为path,列值包含student
      • SingleColumnValueFilter('i', 'path', =, 'binary:student') 列族为i,列名为path,列值等于student
      • ValueFilter(=,'substring:111') 列值中包含111
      • ValueFilter(=,'binary:111') 列值等于111


        以上过滤器是大部分常用的过滤器,在hue-hbase中另有一些过滤器未在此文档中描述。

以下是我自己整理的一部分参考语法:

hbase中有单纯根据列值查询的ValueFilter和根据列名和列值查询的SingleColumnValueFilter,可根据需要选择。
下表中是按照根据列名和列值来进行查询的参考

SQL hue_hbase
select col1,col2 [col1,col2]
where col1="student" SingleColumnValueFilter('i', 'col1', =, 'binary:student')
where col1 like "%body%" SingleColumnValueFilter('i', 'col1', =, 'substring:body')
where col1>=1.9 SingleColumnValueFilter('i', 'col1', >=, 'binary:1.9')
where col1="student" AND col2>1.9 SingleColumnValueFilter('i', 'col1', =, 'binary:student') AND SingleColumnValueFilter('i', 'col2', >, 'binary:1.9')
where col1="student" OR col2>1.9 SingleColumnValueFilter('i', 'col1', =, 'binary:student') OR SingleColumnValueFilter('i', 'col2', >, 'binary:1.9')
posted @ 2018-11-28 16:50  枫子_dan  阅读(5306)  评论(0编辑  收藏  举报