关系型数据库中用offset和limit分页很容易,但是在hbase中就不是一件容易的事.
首先看PageFilter,这个filter只是提供了limit的功能,没有offset,而且并不能保证最后取得的result数量不超过PageFilter中设定的值.因为scan在next操作跨越region时,要open一个新的scanner,而PageFilter是分别序列化到每个region上,就算scan第一个region时,region server对filter做了一些操作改变了filter的状态,在scan第二个region时,也不能保持filter的状态,而要使用全新的filter.因此PageFilter是对每个region中取出的result数量加以限制.
而且hbase不能指定filter的执行顺序,PageFilter与其他的filter配合使用,不知道会不会有问题.
既然hbase的offset只能使用StartRow来实现,一般hbase的分页都是通过StartRow和PageFilter来实现.比如hbase的分页不提供直接跳转到某页,只能从第一页开始进行下一页.每次把当前页的最后一条记录的rowkey+1当成下一页操作时的StartRow.或者像京东的专利那样,把每页对应的StartRow分别存储起来.
http://www.google.com/patents/CN103617232A?cl=zh&hl=zh-CN
分享到:
相关推荐
hbase查询分页分页
hbase分页查询实现.pdf
hbase分页查询实现
hbase分页查询实现[归类].pdf
hbase java api 访问 查询、分页 详情请看:http://blog.csdn.net/wild46cat/article/details/53321409
hbase 利用pagefilter支持分页功能,可以显示总条目,指定每页个数,获取总页码。
里面包括了特定场合下,HBase随机查询的一些性能指标参考以及调优策略
项目中自己用的,弄了很久,需要把数据从各种数据源导入到,我们的原始数据库,原始数据库采用hbase,来存储所有数据,那么这里就用的nifi,从其他数据源获取数据以后,然后导入到Hbase中去,这个是设计好的流程模板. ...
hbase-page hbase 分页
实现sql查询Hbase,Phoenix 基于Hbase给面向业务的开发人员提供了以标准SQL的方式对Hbase进行查询操作,并支持标准SQL中大部分特性:条件运算,分组,分页,等高级查询语法。 这里提供两个版本: apache-phoenix-4.8.1...
java操作Hbase之Hbase专用过滤器PageFilter的使用源代码,附带全部所需源代码,欢迎下载学习。
用户历史订单列表查询rowkey设计技巧 最左前缀原则
NIFI模板PostGreSqlToHbaseByPhoenix-数据从PostGresql实时同步到Hbase-带分页.zip NIFI大数据处理模板,导入以后可以直接将数据从postgresql从通过phoenix拉取到Hbase中去,注意这里,需要自己配置一下phoenix连接...
hbase 示例:订单设计&分页设计实效crud接口
数据查询结果的分页显示操作,并且对查询关键字高亮显示; 导出 表结构的导出; 表结构及数据的导出; 导入 文件批量put命令导入(支持中文) 批量put命令执行(支持中文) 非可视化界面的命令操作 HBase命令的执行 导入...
如果你也需要利用NIFI进行数据同步,并且你用到了Postgresql数据库,想从Postgresql数据库中去获取数据然后,把数据同步到Hbase中去,这里我们使用的大数据存储工具,Hbase来存储原始数据. 我们需要把所有的关系型数据,...
这里面编写了一个NIFI大数据传输流程,使用phoenix从hbase中去获取数据,带分页获取数据以后,然后把数据同步到指定的mysql数据库中去,实现数据的实时同步. 下载以后配置一下对应的数据库连接池,以及数据库的用户名...
•过滤器是在HBase服务器端上执行判断操作 •过滤器可以应用到行键(RowFilter),列限定符(QualifierFilter)或者数据值(ValueFilter) •过滤器允许对数据分页处理(PageFilter),限制扫描器返回行数 •Filter...
•过滤器是在HBase服务器端上执行判断操作 •过滤器可以应用到行键(RowFilter),列限定符(QualifierFilter)或者数据值(ValueFilter) •过滤器允许对数据分页处理(PageFilter),限制扫描器返回行数 •Filter...
hbase分页查询实现 1.封装查询条件 2.封装每行数据 3.根据ROW KEY集合获取GET对象集合 4.封装配置的所有字段列族