来自http://hi.baidu.com/7636553/blog/item/982beb17713bc004972b43ee.html

hbase的scan查询功能注意项:

Scan scan = new Scan();

scan.setStartRow(“5193:”);

scan.setStopRow(“5194:”);

ResultScanner result = table.getScanner(scan);

for (Result r : result) {

get it......

}

查找

原本期望:

从下列中

5193:1

5193:2

5194:1

51939:1

51942:1

取出5193:---5194:中的元素(5193开头的元素),也就是(程序所使用的查询方式)

5193:1

5193:2

但是,其实很容易被误取了,实际查询得到的结果如下:

5193:1

5193:2

51942:1

原因是:与hbase内的scan的方式有关,hbase会将自己的元素按照key的ASCII码排序,

其实也就是说,我们会看见排列的方式如下:

51939:1

5193:1

5193:2

51942:1

5194:1

如果hbase使用这种查询方式,是实际工作中,因为id都比较长,其实发生的概率比较小,是一种偶现问题。

取出5193:开头的元素相对比较取巧的写法:

scan.setStartRow("5193:#");

scan.setStopRow("5193::");

ResultScanner result = table.getScanner(scan);

for (Result r : result) {

get it......

}

原因:ASCII排序中:"#" < "0-9" < ":"

取出来的将是5193:后面跟着数字的元素

(转)http://blog.sina.com.cn/s/blog_6a67b5c50100zbrx.html

hbase的查询scan功能注意点(setStartRow, setStopRow)的更多相关文章

  1. hbase分页查询

    为了广大技术爱好者学习netty,在这里帮新浪微博@nettying宣传下他出版的新书 <netty权威指南>@nettying兄在华为NIO实践多年,这本书是他的技术和经验的一个结晶.N ...

  2. MVC5搜索/查询 流程功能的实现

    接着上次的篇幅,我们这篇手动来写一个查询的流程代码!  搜索/查询 流程功能的实现 那现在要做搜索(查询)功能我们第一步应该做什么呢!第一次是不是我们应该去Controller(控制器)里去搞一个搜索 ...

  3. MySQL中间件之ProxySQL(9):ProxySQL的查询缓存功能

    返回ProxySQL系列文章:http://www.cnblogs.com/f-ck-need-u/p/7586194.html ProxySQL支持查询缓存的功能,可以将后端返回的结果集缓存在自己的 ...

  4. mysql慢查询日志功能的使用

    作用:mysql慢查询日志可监控有效率问题的SQL .. 一.开启mysql慢查询日志功能 1.查看是否开启 未使用索引的SQL记录日志查询 mysql> show variables like ...

  5. poscms基于list标签实现的查询分页功能

    poscms系统本身有一个在查询页(search页面)实现的查询分页功能,基于系统封装的php函数dr_search_url() 但是今天的需求除了导航栏.列表页.详情页都实现查询功能外,关键是有两个 ...

  6. DataUml Design 介绍9 - DataUML 1.3版本功能(查询分析器功能等)

    DataUML 1.3 (下载)主要更新内容如下: 1.增加查询分析器功能: 2.增加打开历史文件记录功能: 3.修改查询对象功能: 4.增加显示对象长度功能: 5.增加配置显示表字段功能: 6.增加 ...

  7. 2018.2.28 PHP中使用jQuery+Ajax实现分页查询多功能如何操作

    PHP中使用jQuery+Ajax实现分页查询多功能如何操作 1.首先做主页Ajax_pag.php 代码如下 <!DOCTYPE html> <html> <head& ...

  8. 【新功能】MaxCompoute禁止Full Scan功能开放

    摘要: 2018年1月10日,MaxCompute禁止Full Scan功能开放.对于新创建的project默认情况下执行sql时,针对该project里的分区表不允许全表扫描,必须有分区条件指定需要 ...

  9. ProxySQL(9):ProxySQL的查询缓存功能

    文章转载自: https://www.cnblogs.com/f-ck-need-u/p/9314459.html ProxySQL支持查询缓存的功能,可以将后端返回的结果集缓存在自己的内存中,在某查 ...

随机推荐

  1. go sample - hello world

    入门级别的hello world package mainimport "fmt"func main() { fmt.Println("blibliblbibl!&quo ...

  2. ASP.NET 5中的ASP.NET Bundles跑到哪里去了?

    (此文章同时发表在本人微信公众号"dotNET每日精华文章",欢迎右边二维码来关注.) 众所周知,在ASP.NET MVC中很早就存在一个所谓的"bundling and ...

  3. FreeSWITCH 体系配置结构

    转自:http://www.cnblogs.com/logo-fox/archive/2013/12/09/3465440.html FreeSWITCH总体结构: FreeSWITCH 由一个稳定的 ...

  4. PAT A 1013. Battle Over Cities (25)【并查集】

    https://www.patest.cn/contests/pat-a-practise/1013 思路:并查集合并 #include<set> #include<map> ...

  5. N种内核注入DLL的思路及实现

    内核注入,技术古老但很实用.现在部分RK趋向无进程,玩的是SYS+DLL,有的无文件,全部存在于内存中.可能有部分人会说:"都进内核了.什么不能干?".是啊,要是内核中可以做包括R ...

  6. json对象的解析

    json对象数据: { "status": "200", "code": "", "msg": &q ...

  7. opacity

    .css{filter:alpha(opacity:30);/*filter是给IE用到*/opacity:.3; }

  8. Android自动化压力测试之Monkey Test 异常解读(五)

    monkey结果分类 monkey结果详细解读 monkey运行log输出后,得读懂日志内容,定位错误 lgo日志顺序输出分别为  测试命令信息.随机事件流(11种事件).异常信息(anr.crash ...

  9. hdu 5446 Unknown Treasure Lucas定理+中国剩余定理

    Unknown Treasure Time Limit: 1500/1000 MS (Java/Others)    Memory Limit: 131072/131072 K (Java/Other ...

  10. 开发Portlet第二步:如何将Crystal静态Portlet转变成基于测试数据的动态Portlet?

    当基于Crystal的静态Portlet开发完成后,在与后台服务联调前,还需要将Portlet转换成基于测试数据的动态Portlet.具体步骤如下: 分步指南 复制Portlet项目,并修改相关的po ...