比较器:
前面例子中的regexstring:2014-11-08.*、binary:\x00\x00\x00\x05,这都是比较器。HBase的filter有四种比较器:
(1)二进制比较器:如’binary:abc’,按字典排序跟’abc’进行比较
(2)二进制前缀比较器:如’binaryprefix:abc’,按字典顺序只跟’abc’比较前3个字符
(3)正则表达式比较器:如’regexstring:ab*yz’,按正则表达式匹配以ab开头,以yz结尾的值。这个比较器只能使用=、!=两个比较运算符。
(4)子串比较器:如’substring:abc123’,匹配以abc123开头的值。这个比较顺也只能使用=、!=两个比较运算符。

比较运算符:
HBase的filter中有7个比较运算符

1. LESS (<)

2. LESS_OR_EQUAL (<=)

3. EQUAL (=)

4. NOT_EQUAL (!=)

5. GREATER_OR_EQUAL (>=)

6. GREATER (>)

7. NO_OP (no operation)(不知道这个怎么用)

如果需要再bash直接执行查询,可以使用一下方式

echo "scan 'testByCrq', FILTER=>\"ValueFilter(=,'substring:111')\"" | hbase shell

几个例子

scan 'obd:journey', LIMIT => , FILTER=>"(ValueFilter(>,'binary:\x00\x00\x00\x00\x00\x00\x00\x0F') )"  

scan 'obd:journey', LIMIT => , FILTER=>"(ValueFilter(>,'binary:\x00\x00\x02\x81') AND ValueFilter(<,'binary:\x00\x00\x02\x82'))"

scan 'obd:journey', LIMIT => , FILTER=>"(RowFilter(>,'binary:\x00\x00\x02\x81') AND RowFilter(<,'binary:\x00\x00\x02\x82'))"

echo "scan 'obd:journey', FILTER=>\"(RowFilter(>,'binary:\x00\x00\x02\x81'))\"" | ./hbase shell > ~/journey.txt

echo "scan 'obd:journey', FILTER=>\"(RowFilter(=,'binaryprefix:\x00\x00\x02\x81'))\"" | ./hbase shell > ~/journey.txt

echo "scan 'obd:journey', FILTER=>\"(RowFilter(>=,'binaryprefix:\x00\x00\x02\x81\x00\x00\x00\x00\x00\x00\x00\x00'))\"" | ./hbase shell > ~/journey.txt

echo "scan 'obd:journey', FILTER=>\"(RowFilter(>=,'binaryprefix:\x00\x00\x00\x81\x00\x00\x00\x00\x00\x00\x00\x00'))\"" | ./hbase shell > ~/journey.txt

scan 'obd:journey', FILTER=>"(RowFilter(>,'binary:\x00\x00\x02\x81\x00\x00\x00\x00\x00\x00\x00\x00'))"

echo "scan 'obd:journey', FILTER=>\"(RowFilter(>,'binaryprefix:\x00\x00\x02\x81\x00\x00\x00\x00\x00\x00\x00\x00') AND RowFilter(<,'binaryprefix:\x00\x00\x02\x82\x00\x00\x00\x00\x00\x00\x00\x00'))\"" | ./hbase shell > ~/journey.txt

HBase shell scan 过滤器用法总结的更多相关文章

  1. hbase基本概念和hbase shell常用命令用法

    1. 简介 HBase是一个分布式的.面向列的开源数据库,源于google的一篇论文<bigtable:一个结构化数据的分布式存储系统>.HBase是Google Bigtable的开源实 ...

  2. 【转载】HBase基本概念和hbase shell常用命令用法

    1. 简介 HBase是一个分布式的.面向列的开源数据库,源于google的一篇论文<bigtable:一个结构化数据的分布式存储系统>.HBase是Google Bigtable的开源实 ...

  3. HBase shell scan 模糊查询

    0.进入hbase shell ./hbase shell help help "get" #查看单独的某个命令的帮助 1. 一般命令 status 查看状态 version 查看 ...

  4. hbase shell基础和常用命令详解(转)

    HBase shell的基本用法 hbase提供了一个shell的终端给用户交互.使用命令hbase shell进入命令界面.通过执行 help可以看到命令的帮助信息. 以网上的一个学生成绩表的例子来 ...

  5. hbase shell基础和常用命令详解

    HBase是Google Bigtable的开源实现,它利用Hadoop HDFS作为其文件存储系统,利用Hadoop MapReduce来处理HBase中的海量数据,利用Zookeeper作为协同服 ...

  6. Hbase框架原理及相关的知识点理解、Hbase访问MapReduce、Hbase访问Java API、Hbase shell及Hbase性能优化总结

    转自:http://blog.csdn.net/zhongwen7710/article/details/39577431 本blog的内容包含: 第一部分:Hbase框架原理理解 第二部分:Hbas ...

  7. hbase shell学习-2

    一个学生成绩表的例子来演示hbase的用法. name grade course math english Tom 5 97 87 Jim 4 89 80 表的创建:语法:create '表名称',' ...

  8. 【转】HBase shell命令与 scan 过滤器

    Hbase 常用shell命令 https://www.cnblogs.com/i80386/p/4105423.html HBase基础之常用过滤器hbase shell操作 https://www ...

  9. HBase Scan,Get用法

    Scan,get用法 1. get help帮助信息 从下列get用法信息可以看出 get 后面可以跟table表名,rowkey,以及column,value.但是如果想通过get直接获取一个表中的 ...

随机推荐

  1. idea2018注册

    1.在网上随便找一个注册码,lanyu的即可,注册时会被提示此注册码已被取消. 2.修改hosts文件,目录:C:\Windows\System32\drivers\etc\hosts,在文件中添加  ...

  2. vue适配移动端px自动转化为rem

    1.下载lib-flexible 我使用的是vue-cli+webpack,所以是通过npm来安装的 npm i lib-flexible --save 2.引入lib-flexible 在main. ...

  3. 如何安装zsh,终极shell

    1,教程 教程 上知乎直接搜索终极shell也可以,话不多说,直接自己看教程吧 2,总之就是 sudo apt-get install zsh chsh ...修改设置 wget下载oh-my-zsh ...

  4. application.properties 文件和 application.yml 文件的区别

    yml文件的好处,天然的树状结构,方便查看,最终会转成application.properties 注意点: 1,原有的key,例如spring.jpa.properties.hibernate.di ...

  5. 20175315 实验二《Java面向对象程序设计》实验报告

    20175315 实验二<Java面向对象程序设计>实验报告 一.实验内容及步骤 1.初步掌握单元测试和TDD 单元测试 任务一:三种代码 用程序解决问题时,要学会写以下三种代码: 伪代码 ...

  6. 在线激活win10、win8/8.1和office2019、2016、2013等的kms激活工具

    在线激活win10.win8/8.1和office2019.2016.2013等的kms激活工具 MicroKMS神龙版能激活win10.win8/8.1.win7以及server2008/2012/ ...

  7. 解决关于win10下eclipse代码格式化不生效问题

    今日,在写代码的时候遇到在eclipse中ctrl+shift+f格式化代码不生效的问题,原本以为是和热键冲突,所以关闭了搜狗输入法的简体和繁体的切换方式,但是发现,还是没有生效,所以,想到修改ecl ...

  8. C++入门篇十

    静态成员变量:可以共享数据,类内声明,类外初始化(实现) // 静态成员变量.cpp : 此文件包含 "main" 函数.程序执行将在此处开始并结束. // #include &q ...

  9. js数据结构与算法——队列

    <script> //创建一个队列 function Queue(){ let items = []; //向队尾添加一个新的项 this.enqueue = function(eleme ...

  10. java.lang.IllegalArgumentException: Invalid source 'classpath:spring-mvc.xml'

    今天在跑项目时遇到java.lang.IllegalArgumentException: Invalid source 'classpath:spring-mvc.xml'报错,自己也是摸索了很久,一 ...