[发明专利]一种实时数据的分布存储和分页查询方法有效
申请号: | 201210400710.4 | 申请日: | 2012-10-18 |
公开(公告)号: | CN103778135B | 公开(公告)日: | 2018-01-02 |
发明(设计)人: | 李志枥;程行荣;张文章;余小峰 | 申请(专利权)人: | 厦门雅迅网络股份有限公司 |
主分类号: | G06F17/30 | 分类号: | G06F17/30 |
代理公司: | 厦门市首创君合专利事务所有限公司35204 | 代理人: | 李雁翔,连耀忠 |
地址: | 361000 福建*** | 国省代码: | 福建;35 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 实时 数据 分布 存储 分页 查询 方法 | ||
技术领域
本发明涉及一种数据存储与查询方法,更具体地说,涉及一种实时数据的分布存储和分页查询方法。
背景技术
在当今的社交网络中,用户会产生大量的实时数据,而往往这些实时数据需要进行分布式存储,此时能够快速分页查询这些实时数据就显得尤为重要。
目前,实现快速查询分布式数据的方法,大多以数据偏移量和获取个数进行分页查询,这种技术存在一点不足:在查看当前页数据时,如果数据库增加了新的实时数据,当你点击获取下一页数据时,就会发现前一页的数据会重复出现在下一页上,这样就会给用户造成了不好的体验。如图1所示,时间轴由上到下分别表示访问第一页、访问第二页的数据分布曲线,及其对比。
发明内容
本发明的目的在于克服现有技术的不足,提供一种解决在访问下一页数据时出现数据重复现象的问题的实时数据的分布存储和分页查询方法。
本发明的技术方案如下:
一种实时数据的分布存储和分页查询方法,采用至少一个以上数据节点对数据进行存储;查询方法步骤如下:
1)客户端提交查询请求至业务节点;
2)业务节点接收查询请求,判断查询请求中包含的请求显示的信息条数、页码;业务节点以当前查询页面的首个数据的对象id,结合当前查询页面显示的信息条数进行运算,得出所请求的数据的起始数据的对象id,并结合请求显示的信息条数,运算得出查询结果,并从数据节点输出符合显示的信息条数、页码的查询结果。
作为优选,所述的对象id按所属数据生成时间的先后呈递增序列。
作为优选,步骤1)具体为:
1.1)在客户端中设置记录标签参数,该标签的起始值为空,之后的值由业务节点重新计算再传回给客户端;
1.2)客户端在每次请求实时数据时,将页码标签、每页显示信息数标签、记录标签发送至业务节点;
步骤2)具体为:
2.1)业务节点接收客户端发过来的参数,判断请求数据的起始值是否为0或记录标签是否为空,如果满足其中任一项,直接按请求数据的起始值、每页显示信息数标签参数访问数据节点,进行分页查询;
2.2)从数据节点得到查询结果之后,业务节点开始计算记录标签的值,并和查询结果一起返回给客户端;
2.3)如果步骤2.1)的请求数据的起始值和记录标签均不为空,业务节点判断查询请求的页码与当前页码的大小关系;
2.4)计算请求的页码与当前页码差乘以每页显示信息条数得到下一页偏移值,如果查询请求的页码大于当前页码,则查询的首个数据的对象id为当前页首个数据的对象id减去下一页偏移值;如果查询请求的页码小于当前页码,则查询的首个数据的对象id为当前页首个数据的对象id加上下一页偏移值;
2.5)业务节点重新计算记录标签的值,与数据节点查询结果一起返回给客户端。
作为优选,步骤2.5)所述的计算记录标签的值,方法如下:
a、记录下查询结果最后一条记录的对象id;
b、将请求数据的起始值与查询结果个数进行相加得到下一页偏移值;
c、再将步骤a中的最后一条记录的对象id与步骤b中的偏移值拼接为记录标签的值。
作为优选,步骤2.4)具体为:
业务节点从记录标签中获取下一页偏移值和查询结果最后一条记录的对象id,如果请求数据的起始值大于等于下一页偏移值,则只在数据节点中查询对象id小于查询结果最后一条记录的对象id;
如果请求数据的起始值小于下一页偏移值,则只在数据节点中查询对象id大于查询结果最后一条记录的对象id。
作为优选,所述的对象id为全局唯一,对象id的生成规则为:时间戳+业务节点内流水号+业务节点编号。
作为优选,数据的存储规则为:对象id与数据节点个数取模,得到的结果为该数据对应存储的数据节点编号。
作为优选,所述的数据节点为在至少一个物理数据节点上创建的不少物理数据节点的虚拟数据节点。
作为优选,从数据节点获取数据的步骤如下:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于厦门雅迅网络股份有限公司,未经厦门雅迅网络股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201210400710.4/2.html,转载请声明来源钻瓜专利网。
- 数据显示系统、数据中继设备、数据中继方法、数据系统、接收设备和数据读取方法
- 数据记录方法、数据记录装置、数据记录媒体、数据重播方法和数据重播装置
- 数据发送方法、数据发送系统、数据发送装置以及数据结构
- 数据显示系统、数据中继设备、数据中继方法及数据系统
- 数据嵌入装置、数据嵌入方法、数据提取装置及数据提取方法
- 数据管理装置、数据编辑装置、数据阅览装置、数据管理方法、数据编辑方法以及数据阅览方法
- 数据发送和数据接收设备、数据发送和数据接收方法
- 数据发送装置、数据接收装置、数据收发系统、数据发送方法、数据接收方法和数据收发方法
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置