HBase shell scan 过滤器用法总结
比较器:
前面例子中的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 过滤器用法总结的更多相关文章
- hbase基本概念和hbase shell常用命令用法
1. 简介 HBase是一个分布式的.面向列的开源数据库,源于google的一篇论文<bigtable:一个结构化数据的分布式存储系统>.HBase是Google Bigtable的开源实 ...
- 【转载】HBase基本概念和hbase shell常用命令用法
1. 简介 HBase是一个分布式的.面向列的开源数据库,源于google的一篇论文<bigtable:一个结构化数据的分布式存储系统>.HBase是Google Bigtable的开源实 ...
- HBase shell scan 模糊查询
0.进入hbase shell ./hbase shell help help "get" #查看单独的某个命令的帮助 1. 一般命令 status 查看状态 version 查看 ...
- hbase shell基础和常用命令详解(转)
HBase shell的基本用法 hbase提供了一个shell的终端给用户交互.使用命令hbase shell进入命令界面.通过执行 help可以看到命令的帮助信息. 以网上的一个学生成绩表的例子来 ...
- hbase shell基础和常用命令详解
HBase是Google Bigtable的开源实现,它利用Hadoop HDFS作为其文件存储系统,利用Hadoop MapReduce来处理HBase中的海量数据,利用Zookeeper作为协同服 ...
- Hbase框架原理及相关的知识点理解、Hbase访问MapReduce、Hbase访问Java API、Hbase shell及Hbase性能优化总结
转自:http://blog.csdn.net/zhongwen7710/article/details/39577431 本blog的内容包含: 第一部分:Hbase框架原理理解 第二部分:Hbas ...
- hbase shell学习-2
一个学生成绩表的例子来演示hbase的用法. name grade course math english Tom 5 97 87 Jim 4 89 80 表的创建:语法:create '表名称',' ...
- 【转】HBase shell命令与 scan 过滤器
Hbase 常用shell命令 https://www.cnblogs.com/i80386/p/4105423.html HBase基础之常用过滤器hbase shell操作 https://www ...
- HBase Scan,Get用法
Scan,get用法 1. get help帮助信息 从下列get用法信息可以看出 get 后面可以跟table表名,rowkey,以及column,value.但是如果想通过get直接获取一个表中的 ...
随机推荐
- nginx做80端口转发
server { server_name zjrzb.cn listen 80; location / { proxy_pass http://127.0.0.1:8090; proxy_set_he ...
- APP的三种开发模式
转载于http://pleasureswx123.github.io/2014/09/15/APP%E7%9A%84%E4%B8%89%E7%A7%8D%E5%BC%80%E5%8F%91%E6%A8 ...
- python使用pip 18以上版本离线安装package
在内网办公环境,常常需要使用离线安装python的软件包. 一般都会先在互联网的电脑上下载,再拷贝到内网办公机器上进行离线安装. 一般来说,我是这样做的: 1.拷贝和外网电脑上版本一致,且32位或64 ...
- Java小程序练习
1.选择排序法所谓的选择排序,就是把当前数据与它后面所有的数据做个比较,假如满足比较条件,则进行交换操作,直到最后二个数比较完毕,这样重新输出的数据就已经由大到小或者由小到大排好序了.for(int ...
- nvm的使用
nvm能下载并按照指定 的版本,还能切换已安装好的版本,相当的好用
- jqGrid基础写法
$("#jqGrid").jqGrid({ url: baseURL + 'sys/scheduleLog/list', datatype: "json", c ...
- java http post/get 服务端和客户端实现json传输
注:本文来源于<java http post/get 服务端和客户端实现json传输> 最近需要写http post接口所以学习下. 总的还是不难直接上源码! PostHttpClient ...
- 浅谈rest風格的接口开发
简单描述:因为前后端分离,开发完模块之后,接到team leader的指令,我这个渣渣javaer需要给前端人员返回一个接口,具体内容是课程列表json和分类列表json.emmmm,第一次写接口,心 ...
- cocos creator 碰撞检测
creator的碰撞检测系统分为碰撞检测系统和物理碰撞检测系统两个模块,并且这两个模块是相互独立的(这边主要是非物理碰撞检测系统) 1.在制作碰撞检测系统的时候要对物体进行分组,即指定节点的分组与分组 ...
- (转载)配置 Linux 操作系统的 JDK
系统Ubuntu,下载jdk-9.0.1 1,切换到root ,创建文件夹 xxxx@ubuntu:~$ sudo su root@ubuntu:~# mkdir /usr/java 2,找到下载 ...