[发明专利]一种基于降序存储的数据分页查询方法有效
申请号: | 201510557950.9 | 申请日: | 2015-09-02 |
公开(公告)号: | CN105045932B | 公开(公告)日: | 2018-11-13 |
发明(设计)人: | 张登银;陈佳敏 | 申请(专利权)人: | 南京邮电大学 |
主分类号: | G06F17/30 | 分类号: | G06F17/30 |
代理公司: | 南京知识律师事务所 32207 | 代理人: | 汪旭东 |
地址: | 210003 江苏*** | 国省代码: | 江苏;32 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | 本发明涉及一种基于降序存储的数据分页查询方法,该方法针对HBase构建的大型Web信息系统应用场景不支持关系数据库原有的分页,解决了现有的HBase表分页查询算法存在资源消耗大、查询效率低的问题。该方法根据HBase中数据的存储特点,提出了一种以时间降序排列的分页查询算法,通过时间戳的降序排列,使最新的数据存储在表的顶端,从而满足用户对最新数据的访问需求。通过指定所查询数据大小和起始时间,由PageFilter函数来支持每页返回的行数,实现了将数据以时间降序排列,并分页展现给用户的功能,达到降低数据网络传输代价的目的。 | ||
搜索关键词: | 一种 基于 降序 存储 数据 分页 查询 方法 | ||
【主权项】:
1.一种基于降序存储的数据分页查询方法,其特征在于,所述方法应用于数据分页查询,包括如下步骤:步骤1:数据库中检索页面块区大小的数据存储在HDFS上,包括:1)分页处理在数据库端进行;2)每次进行翻页操作时,从数据库中检索页面块区大小的数据;步骤2:系统生成时间戳Tm、当前时间Tc、Tm‑Tc和设备ID组成Rowkey,所述Rowkey包括:HBase表中数据根据Rowkey的字典顺序存储,所述时间戳为递增,设置Rowkey,即:为Tm‑Tc和设备ID的组合,其中,Tm‑Tc表示为时间戳Tm和当前时间Tc相减;步骤3:数据按照Rowkey进行降序处理后,存储在HBase表中,在分页浏览时,数据按时间升序排序由前到后展示,最先得到的是历史数据,然而用户大都对最新的数据比较关注,因此对采集来的数据进行处理,使得最新数据存储在HBase表顶端,符合用户对信息的需求;步骤4:输入起始时间Tn和每页显示数据条数N,设置Tn=startRow,设置stopRowkey为默认不变,包括:1)分页方式不需要记录总数,类似于社交网站和一些论坛,客户端不需要获取总记录数,只需要判断每页之后是否还有数据,向用户提供“下一页”和“上一页”的翻页功能;2)只提供上下页翻页功能,不对整个数据表的数据进行一次性分页,每次取出用户指定数据大小的数据,提高查询效率;步骤5:调用pageFilter(tableName,startRowkey,N+1)函数,返回M条数据,包括:1)由PageFilter(tableName,startRowkey,stopRowkey,N+1)函数来支持每页返回的行数,不需要记录数据库中数据总数和标记每一行数据,实现将数据以时间降序排列,并分页展现给用户的功能;2)在查询完一页后,请求下一页,更新page=page+1,调用page函数;请求上一页,更新page=page‑1,判断page是否为0,若为0则操作结束,否则调用page函数,得到上页数据;所述降序处理的方法如下,包括:步骤1:系统生成一个较大的时间戳Tm,以生成的时间戳Tm减去当前时Tc作为所存储数据Rowkey的一部分;步骤2:Tm‑Tc和设备ID组合成Rowkey;步骤3:通过时间戳相减的操作,改变数据在HBase中存放顺序;所述方法的分页查询算法:(1)设置页码缓存,记录每一页的起始Rowkey,存放形式为<页码,startRowkey>,当每次进行“下一页”操作时,均多取出来一条数据,并将其Rowkey存入缓存中,作为下一页的startRowkey;(2)设置一个page变量和pageTemp变量,分别用来记录当前所在的页码和用户浏览的总页数,如果page等于pageTemp,则查询数据库取得下一页的startRowkey,并更新缓存,否则,直接从缓存中读取上下页的startRowkey。
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于南京邮电大学,未经南京邮电大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/patent/201510557950.9/,转载请声明来源钻瓜专利网。
- 数据显示系统、数据中继设备、数据中继方法、数据系统、接收设备和数据读取方法
- 数据记录方法、数据记录装置、数据记录媒体、数据重播方法和数据重播装置
- 数据发送方法、数据发送系统、数据发送装置以及数据结构
- 数据显示系统、数据中继设备、数据中继方法及数据系统
- 数据嵌入装置、数据嵌入方法、数据提取装置及数据提取方法
- 数据管理装置、数据编辑装置、数据阅览装置、数据管理方法、数据编辑方法以及数据阅览方法
- 数据发送和数据接收设备、数据发送和数据接收方法
- 数据发送装置、数据接收装置、数据收发系统、数据发送方法、数据接收方法和数据收发方法
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置