CN106021357A - 基于分布式的大数据分页查询方法及系统 - Google Patents

基于分布式的大数据分页查询方法及系统 Download PDF

Info

Publication number
CN106021357A
CN106021357A CN201610305022.8A CN201610305022A CN106021357A CN 106021357 A CN106021357 A CN 106021357A CN 201610305022 A CN201610305022 A CN 201610305022A CN 106021357 A CN106021357 A CN 106021357A
Authority
CN
China
Prior art keywords
data
page number
storage table
page
result storage
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201610305022.8A
Other languages
English (en)
Other versions
CN106021357B (zh
Inventor
李善宝
辛国茂
马述杰
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Taihua Wisdom Industry Group Co Ltd
Original Assignee
Taihua Wisdom Industry Group Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Taihua Wisdom Industry Group Co Ltd filed Critical Taihua Wisdom Industry Group Co Ltd
Priority to CN201610305022.8A priority Critical patent/CN106021357B/zh
Publication of CN106021357A publication Critical patent/CN106021357A/zh
Application granted granted Critical
Publication of CN106021357B publication Critical patent/CN106021357B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • G06F16/2458Special types of queries, e.g. statistical queries, fuzzy queries or distributed queries
    • G06F16/2471Distributed queries

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computational Linguistics (AREA)
  • Probability & Statistics with Applications (AREA)
  • Software Systems (AREA)
  • Mathematical Physics (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Fuzzy Systems (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

本发明公开基于分布式的大数据分页查询方法,包括:接收页码内容查询请求;根据基于查询时间设置的主行键从分布式数据库中获取全量结果存储表的数据;若已查询出详细结果的数量满足页码内容查询请求时,则根据主行键计算出目标数据在详细信息结果存储表内的页码,并从详细信息结果存储表内获取符合页码内容查询请求的数据进行反馈;若已查询出详细结果的数量不满足页码内容查询请求时,则在全量结果存储表内从所请求查询的目标数据内容位置起再获取特定数量的数据进行查询,直至获取到的结果数量满足页码内容查询请求;按照所获得的详细信息结果存储表反馈符合页码内容查询请求的数据。本发明达到了快速获取分页结果的效果。

Description

基于分布式的大数据分页查询方法及系统
技术领域
本发明涉及数据查询的技术领域,更具体地,涉及一种基于分布式的大数据分页查询方法及系统。
背景技术
随着移动通讯及互联网的快速发展,信息技术已经融入到人们的生活中了,遍布世界各地的各种通讯设备产生的各式各样的数据也越来越多,数据的存储量也从原来的兆字节(MB)、千兆字节(GB)快速增长到万亿字节(TB)、千兆兆字节(PB)的量级。动辄数百TB甚至数十至数百PB规模的大数据已远远超出了原有传统的计算技术和处理能力。在这种背景下,基于分布式系统基础架构(Hadoop)的生态圈分布式存储方法成为了解决大数据存储的一种最具代表性的手段。
分布式的存储方式相对于传统的关系型数据存储方式,采用行和列组成的二维表存储数据,解决了对庞大通信数据进行存储及快速查询的问题。在传统的关系型数据中,对数据进行分页查询是一项比较简单的技术,因为各种关系数据库都带有分页的手段。但是当关系型数据库的数据存储量达到特定数量时,已经无法使用数据库自带的分页机制,因为这会导致严重的性能问题。而在现有的Hadoop生态圈中也没有较好的分页支持,特别是对于分布式的、面向列的开源数据库(Hbase),其基于列的而不是基于行的模式,无法对分页查询进行支持。
在Hbase进行数据查询时,通常通过如下过程实现:第一次查询请求第三方系统/存储,获取到只有主键的结果;然后再根据主键向另外一个第三方系统/存储请求详细的结果;最后将查询到的详细的结果返回给前台进行展示。在第一次请求时返回的是符合条件的全量数据;第二次请求时可以批量发送主键,返回的是存在详细信息的结果集。而其中第一次请求所需时间较多,第二次请求所需时间和请求的主键数量呈线性递增关系,且其返回的结果并非和主键一一对应,有可能有的主键对应的详细数据不存在,所以查询到详细信息结果集的数量Rs和请求的主键数量Rc的关系是Rs≤Rc,如此,要想获取准确的查询数据就需要遍历所存储的全部数据,这就大大增加了在用户进行分页查看时的处理量,从而影响其响应速度。
因此,提供一种基于分布式进行海量数据存储和快速分页查询的方法是本领域亟待解决的问题。
发明内容
有鉴于此,本发明提供了一种基于分布式的大数据分页查询方法及系统,解决了传统大数据分页查询需要全量数据查询导致查询速率低下的缺点。
为了解决上述技术问题,本发明提出一种基于分布式的大数据分页查询方法,包括:
接收页码内容查询请求,并从中解析出要查询的页码及在该页码内的目标数据量;
根据基于查询时间设置的主行键从分布式数据库中获取全量结果存储表的数据;其中,所述全量结果存储表包括:主行键、初始结果、当前的结果数量、初始的结果数量及已查询出详细结果的数量;
将所述已查询出详细结果的数量与所述页码内容查询请求的查询页码及查询数据数量进行比较;
若所述已查询出详细结果的数量满足所述页码内容查询请求时,则根据所述主行键计算出目标数据在详细信息结果存储表内的页码,并从所述详细信息结果存储表内获取符合所述页码内容查询请求的数据进行反馈;
若所述已查询出详细结果的数量不满足所述页码内容查询请求时,则在所述全量结果存储表内从所请求查询的目标数据内容位置起再获取特定数量的数据进行查询,直至获取到的结果数量满足所述页码内容查询请求;
将所述获取到的结果存储到所述详细信息结果存储表内,并按照所获得的详细信息结果存储表反馈符合所述页码内容查询请求的数据。
进一步地,其中,所述根据所述主行键计算出目标数据在详细信息结果存储表内的页码,进一步包括:
利用要查询的页码及在该页码内的目标数据量与在详细信息结果存储表内所设置的数据条数比值获取查询结果集所在的页码。
进一步地,其中,所述在所述全量结果存储表内从所请求查询的目标数据内容位置起再获取特定数量的数据进行查询,进一步包括:
从所请求查询的目标数据内容位置起再获取所述目标数据量特定倍数的数据。
进一步地,其中,所述在所述全量结果存储表内从所请求查询的目标数据内容位置起再获取特定数量的数据进行查询,进一步包括:
从全量结果存储表中获取该特定数量数据的初始存储结果及其数量,并在所述初始结果及初始的结果数量中进行该特定数量数据的删减处理;
将所述已查询出详细结果的数量加上获取的所述特定数量数据后与所述页码内容查询请求进行比较。
进一步地,其中,所述将所述获取到的结果存储到所述详细信息结果存储表内,进一步包括:
将所述获取到的结果按照每页预定的数据条数存储到所述详细信息结果存储表内。
另一方面,本发明还提供一种基于分布式的大数据分页查询系统,包括:接收模块、获取模块、分析模块及处理模块;其中,
所述接收模块,用于接收页码内容查询请求,并从中解析出要查询的页码及在该页码内的目标数据量;
所述获取模块,用于根据基于查询时间设置的主行键从分布式数据库中获取全量结果存储表的数据;其中,所述全量结果存储表包括:主行键、初始结果、当前的结果数量、初始的结果数量及已查询出详细结果的数量;
所述分析模块,用于将所述已查询出详细结果的数量与所述页码内容查询请求的查询页码及查询数据数量进行比较;
所述处理模块,用于若所述已查询出详细结果的数量满足所述页码内容查询请求时,则根据所述主行键计算出目标数据在详细信息结果存储表内的页码,并从所述详细信息结果存储表内获取符合所述页码内容查询请求的数据进行反馈;
若所述已查询出详细结果的数量不满足所述页码内容查询请求时,则在所述全量结果存储表内从所请求查询的目标数据内容位置起再获取特定数量的数据进行查询,直至获取到的结果数量满足所述页码内容查询请求;
将所述获取到的结果存储到所述详细信息结果存储表内,并按照所获得的详细信息结果存储表反馈符合所述页码内容查询请求的数据。
进一步地,其中,所述处理模块,进一步用于:
利用要查询的页码及在该页码内的目标数据量与在详细信息结果存储表内所设置的数据条数比值获取查询结果集所在的页码。
进一步地,其中,所述处理模块,进一步用于:
从所请求查询的目标数据内容位置起再获取所述目标数据量特定倍数的数据。
进一步地,其中,所述处理模块,进一步用于:
从全量结果存储表中获取该特定数量数据的初始存储结果及其数量,并在所述初始结果及初始的结果数量中进行该特定数量数据的删减处理;
将所述已查询出详细结果的数量加上获取的所述特定数量数据后与所述页码内容查询请求进行比较。
进一步地,其中,所述处理模块,进一步用于:
将所述获取到的结果按照每页预定的数据条数存储到所述详细信息结果存储表内。
与现有技术相比,本发明的基于分布式的大数据分页查询方法及系统,实现了如下的有益效果:
(1)本发明所述的基于分布式的大数据分页查询方法及系统,基于分布式(Hbase)存储设置分页查询,既保证了利用分布式数据存储量大的特性,又利用对分布式存储方式的主行键进行设置提升了分页的效率、达到了快速获取分页结果的效果。
(2)本发明所述的基于分布式的大数据分页查询方法及系统,相对于传统的分页方案,传统的分页方案不会做分页标识,而本发明方案在查询过后会按照数据条数进行分条存储,需要再次查看原来查看过的页码数据时,不必再进行全存储数据表遍历,只需对请求页码的特定数据量进行遍历即可,大大提升了查询数据分页结果的效率。
(3)本发明所述的基于分布式的大数据分页查询方法及系统,在分页过程中,可以对要进行分页的数据进行2页或更多页数的预查询缓存,通过该方式能提高下一页的请求及查询速度。
当然,实施本发明的任一产品必不特定需要同时达到以上所述的所有技术效果。
通过以下参照附图对本发明的示例性实施例的详细描述,本发明的其它特征及其优点将会变得清楚。
附图说明
被结合在说明书中并构成说明书的一部分的附图示出了本发明的实施例,并且连同其说明一起用于解释本发明的原理。
图1为本发明所述的基于分布式的大数据分页查询方法的一个可选实施例的流程示意图;
图2为本发明实施例2所述的基于分布式的大数据分页查询方法的一个可选实施例的流程示意图;
图3为本发明实施例2所述的基于分布式的大数据分页查询方法的一个具体实施例的流程示意图;
图4为本发明实施例3所述的基于分布式的大数据分页查询系统的一个具体实施例流程示意图。
具体实施方式
现在将参照附图来详细描述本发明的各种示例性实施例。应注意到:除非另外具体说明,否则在这些实施例中阐述的部件和步骤的相对布置、数字表达式和数值不限制本发明的范围。
以下对至少一个示例性实施例的描述实际上仅仅是说明性的,决不作为对本发明及其应用或使用的任何限制。
对于相关领域普通技术人员已知的技术、方法和设备可能不作详细讨论,但在适当情况下,所述技术、方法和设备应当被视为说明书的一部分。
在这里示出和讨论的所有例子中,任何具体值应被解释为仅仅是示例性的,而不是作为限制。因此,示例性实施例的其它例子可以具有不同的值。
应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步讨论。
实施例1
如图1所示,为本发明所述的基于分布式的大数据分页查询方法的一个可选实施例的流程示意图。本发明利用查询时间及分页页码对分布式数据存储的主行键进行设置,方便用户对分页数据的快速查询,提升了用户体验。本实施例中所述的基于分布式的大数据分页查询方法包括以下步骤:
步骤101、接收页码内容查询请求,并从中解析出要查询的页码及在该页码内的目标数据量。
接收用户通过终端发送的带有查询页码及数据数量的页码内容查询请求,据此从分布式数据库中进行相应数据内容的查询是本分页查询方案进行准确查询的基础,例如,请求查询Pn页内的Pnn条数据。
步骤102、根据基于查询时间设置的主行键从分布式数据库中获取全量结果存储表的数据;其中,所述全量结果存储表包括:主行键、初始结果、当前的结果数量、初始的结果数量及已查询出详细结果的数量。
优选地,存储系统中全量结果存储表的主行键(rowkey)为请求全量数据时精确到毫秒的时间,其格式可以为年/月/日/小时/分钟/秒+毫秒。详细信息的结果集中每条结果之间使用特殊的字符进行分割。
其中,在未进行分页查询时当前的结果数量(currentCount)以及初始时的结果数量(originalCount)的值相等,已查询出详细结果的数量(breakAfterCount)的值为0。“初始时的结果数量”在整个分页查询过程中没有变化;“当前的结果数量”将会随着分页的请求而减少;“已查询出详细结果的数量”将会随着分页的请求而增大;且currentCount+breakAfterCount≤originalCount。
因为返回的结果并非和主行键一一对应,可能有的主行键对应的详细数据不存在。所以查询到详细信息结果集的数量Rs和请求的主键数量Rc的关系是Rs<=Rc。当前的结果数量存放到的还未查询详细信息的“主行键结果集”数量,已查询出详细结果的数量是已查询出的“详细结果集”数量,因为已查询出详细结果的数量小于或者等于查询时使用的“主行键结果集”数量,而初始时的结果数量不变,所以currentCount+breakAfterCount≤originalCount。
步骤103、将所述已查询出详细结果的数量与所述页码内容查询请求的查询页码及查询数据数量进行比较。通过查询数据库中页码及数据量并查询请求比较,以便准确地找出需要查询的页码及数据存储的数量。
步骤104、若所述已查询出详细结果的数量满足所述页码内容查询请求时,则根据所述主行键计算出目标数据在详细信息结果存储表内的页码,并从所述详细信息结果存储表内获取符合所述页码内容查询请求的数据进行反馈。
如果满足查询请求,则确定出初步查询出的结果数据表(详细信息结果存储表)中,然后从该表中找出所需数据所在的页码,再根据该页码将符合请求数量的查询结果反馈给用户。
步骤105、若所述已查询出详细结果的数量不满足所述页码内容查询请求时,则在所述全量结果存储表内从所请求查询的目标数据内容位置起再获取特定数量的数据进行查询,直至获取到的结果数量满足所述页码内容查询请求。
当已查询出详细结果的数量不满足所述页码内容查询请求时,根据预先设定原则,从全量结果存储表中再选取特定数量的数据(例如,再选取2页的数据)作为新增的初始结果,并向三方系统/存储请求详细信息,获取到的结果数量BAc及结果集BARSc。并据此对数据存储表进行相应处理后,再与所述查询请求比较,直至获取到的结果数量满足所述页码内容查询请求。
步骤106、将所述获取到的结果存储到所述详细信息结果存储表内,并按照所获得的详细信息结果存储表反馈符合所述页码内容查询请求的数据。
在方法中,前提是有一个全量的基本数据,该数据是第二次查询(详细结果查询)的关键主行键,但这个全量数据在分页中不是必须的,省略这些全量数据仍可进行分页。
本实施例所述的基于分布式的大数据分页查询方法,基于分布式(Hbase)存储设置分页查询,既保证了利用分布式数据存储量大的特性,又利用对分布式存储方式的主行键进行设置提升了分页的效率、达到了快速获取分页结果的效果。
实施例2
如图2及图3所示,图2为本发明实施例2所述的基于分布式的大数据分页查询方法的流程示意图;图3为本发明实施例2所述的基于分布式的大数据分页查询方法的一个具体实例的流程示意图。在本实施例中,设置了利用主行键查询分页分布式存储数据的具体方法。本实施例中的基于分布式的大数据分页查询方法包括以下步骤:
步骤201、接收页码内容查询请求,并从中解析出要查询的页码及在该页码内的目标数据量。
步骤202、根据基于查询时间设置的主行键从分布式数据库中获取全量结果存储表的数据;其中,所述全量结果存储表包括:主行键、初始结果、当前的结果数量、初始的结果数量及已查询出详细结果的数量。
步骤203、将所述已查询出详细结果的数量与所述页码内容查询请求的查询页码及查询数据数量进行比较。通过查询数据库中页码及数据量并查询请求比较,以便准确地找出需要查询的页码及数据存储的数量。
步骤204、若所述已查询出详细结果的数量满足所述页码内容查询请求时,则根据所述主行键利用要查询的页码及在该页码内的目标数据量与在详细信息结果存储表内所设置的数据条数比值获取查询结果集所在的页码,并从所述详细信息结果存储表内获取符合所述页码内容查询请求的数据进行反馈。
步骤205、若所述已查询出详细结果的数量不满足所述页码内容查询请求时,则在所述全量结果存储表内从所请求查询的目标数据内容位置起再获取所述目标数据量特定倍数的数据;
步骤206、从全量结果存储表中获取该特定数量数据的初始存储结果及其数量,并在所述初始结果及初始的结果数量中进行该特定数量数据的删减处理。优选地,该删减处理包括:将“该特定数量数据”从初始结果中删除;初始时的结果数量减去该特定数量。
步骤207、将所述已查询出详细结果的数量加上获取的所述特定数量数据后与所述页码内容查询请求进行比较,直至获取到的结果数量满足所述页码内容查询请求。通过本步骤的循环查询及比较直至获取符合用户的页码内容查询请求的数据,以便反馈至用户。
步骤208、将所述获取到的结果存储到所述详细信息结果存储表内,并按照所获得的详细信息结果存储表反馈符合所述页码内容查询请求的数据。
在上述步骤中,将所述获取到的结果按照每页预定的数据条数存储到所述详细信息结果存储表内。
如图3所示,为本发明实施例2所述的基于分布式的大数据分页查询方法的一个具体实例的流程示意图,包括如下步骤:
步骤301、接收用户的分页数据查询请求。
步骤302、从全量结果存储表中获取数据。
步骤303、判断获取数据的详细信息是否满足用户的分页数据查询请求。
步骤304、当满足用户的分页数据查询请求时,计算详细信息结果存储表的主行键页码。
步骤305、根据获得的主行键页码从全量结果存储表中获取查询数据。
步骤306、当获取数据的详细信息不满足用户的分页数据查询请求时,从全量结果存储表中再读取特定数量的初始数据。
步骤307、获取新获得初始数据的详细信息结果集。
步骤308、将新获得初始数据的详细信息结果集从全量结果存储表中删除。
步骤309、全量结果存储表中已查询出详细结果的数量减去新获得初始数据的详细信息结果集的数据量。
步骤310、判断新获得的结果数据是否满足分页数据查询请求。
步骤311、新获得的结果数据不满足分页数据查询请求时,循环选取新的初始数据进行处理。
步骤312、新获得的结果数据满足分页数据查询请求时,将获取的结果集写入详细信息结果存储表。
步骤313、反馈满足分页数据查询请求的查询结果。
本实施例所述的基于分布式的大数据分页查询方法,相对于传统的分页方案,传统的分页方案不会做分页标识,而本发明方案在查询过后会按照数据条数进行分条存储,需要再次查看原来查看过的页码数据时,不必再进行全存储数据表遍历,只需对请求页码的特定数据量进行遍历即可,大大提升了查询数据分页结果的效率。
实施例3
如图4所示,为本实施例中公开的基于分布式的大数据分页查询系统的一个可选实施例的结构示意图。本实施例中所述的基于分布式的大数据分页查询系统包括:接收模块401、获取模块402、分析模块403及处理模块404;其中,
所述接收模块401,与所述获取模块402相藕接,用于接收页码内容查询请求,并从中解析出要查询的页码及在该页码内的目标数据量;
所述获取模块402,与所述接收模块401及所述分析模块403相藕接,用于根据基于查询时间设置的主行键从分布式数据库中获取全量结果存储表的数据;其中,所述全量结果存储表包括:主行键、初始结果、当前的结果数量、初始的结果数量及已查询出详细结果的数量;
所述分析模块403,与所述获取模块402及所述处理模块404相藕接,用于将所述已查询出详细结果的数量与所述页码内容查询请求的查询页码及查询数据数量进行比较。
所述处理模块404,与所述分析模块403相藕接,用于若所述已查询出详细结果的数量满足所述页码内容查询请求时,则根据所述主行键计算出目标数据在详细信息结果存储表内的页码,并从所述详细信息结果存储表内获取符合所述页码内容查询请求的数据进行反馈;
若所述已查询出详细结果的数量不满足所述页码内容查询请求时,则在所述全量结果存储表内从所请求查询的目标数据内容位置起再获取特定数量的数据进行查询,直至获取到的结果数量满足所述页码内容查询请求;
将所述获取到的结果存储到所述详细信息结果存储表内,并按照所获得的详细信息结果存储表反馈符合所述页码内容查询请求的数据。
其中,所述处理模块404,进一步用于:
利用要查询的页码及在该页码内的目标数据量与在详细信息结果存储表内所设置的数据条数比值获取查询结果集所在的页码;
从所请求查询的目标数据内容位置起再获取所述目标数据量特定倍数的数据;
将所述获取到的结果按照每页预定的数据条数存储到所述详细信息结果存储表内。
优选地,所述处理模块404,进一步还用于:
从全量结果存储表中获取该特定数量数据的初始存储结果及其数量,并在所述初始结果及初始的结果数量中进行该特定数量数据的删减处理;
将所述已查询出详细结果的数量加上获取的所述特定数量数据后与所述页码内容查询请求进行比较。
通过以上各个实施例可知,本发明的基于分布式的大数据分页查询方法及系统存在的有益效果是:
(1)本发明所述的基于分布式的大数据分页查询方法及系统,基于分布式(Hbase)存储设置分页查询,既保证了利用分布式数据存储量大的特性,又利用对分布式存储方式的主行键进行设置提升了分页的效率、达到了快速获取分页结果的效果。
(2)本发明所述的基于分布式的大数据分页查询方法及系统,相对于传统的分页方案,传统的分页方案不会做分页标识,而本发明方案在查询过后会按照数据条数进行分条存储,需要再次查看原来查看过的页码数据时,不必再进行全存储数据表遍历,只需对请求页码的特定数据量进行遍历即可,大大提升了查询数据分页结果的效率。
(3)本发明所述的基于分布式的大数据分页查询方法及系统,在分页过程中,可以对要进行分页的数据进行2页或更多页数的预查询缓存,通过该方式能提高下一页的请求及查询速度。
本领域内的技术人员应明白,本发明的实施例可提供为方法、装置、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
虽然已经通过例子对本发明的一些特定实施例进行了详细说明,但是本领域的技术人员应该理解,以上例子仅是为了进行说明,而不是为了限制本发明的范围。本领域的技术人员应该理解,可在不脱离本发明的范围和精神的情况下,对以上实施例进行修改。本发明的范围由所附权利要求来限定。

Claims (10)

1.一种基于分布式的大数据分页查询方法,其特征在于,包括:
接收页码内容查询请求,并从中解析出要查询的页码及在该页码内的目标数据量;
根据基于查询时间设置的主行键从分布式数据库中获取全量结果存储表的数据;其中,所述全量结果存储表包括:主行键、初始结果、当前的结果数量、初始的结果数量及已查询出详细结果的数量;
将所述已查询出详细结果的数量与所述页码内容查询请求的查询页码及查询数据数量进行比较;
若所述已查询出详细结果的数量满足所述页码内容查询请求时,则根据所述主行键计算出目标数据在详细信息结果存储表内的页码,并从所述详细信息结果存储表内获取符合所述页码内容查询请求的数据进行反馈;
若所述已查询出详细结果的数量不满足所述页码内容查询请求时,则在所述全量结果存储表内从所请求查询的目标数据内容位置起再获取特定数量的数据进行查询,直至获取到的结果数量满足所述页码内容查询请求;
将所述获取到的结果存储到所述详细信息结果存储表内,并按照所获得的详细信息结果存储表反馈符合所述页码内容查询请求的数据。
2.根据权利要求1所述的基于分布式的大数据分页查询方法,其特征在于,所述根据所述主行键计算出目标数据在详细信息结果存储表内的页码,进一步包括:
利用要查询的页码及在该页码内的目标数据量与在详细信息结果存储表内所设置的数据条数比值获取查询结果集所在的页码。
3.根据权利要求1所述的基于分布式的大数据分页查询方法,其特征在于,所述在所述全量结果存储表内从所请求查询的目标数据内容位置起再获取特定数量的数据进行查询,进一步包括:
从所请求查询的目标数据内容位置起再获取所述目标数据量特定倍数的数据。
4.根据权利要求1所述的基于分布式的大数据分页查询方法,其特征在于,所述在所述全量结果存储表内从所请求查询的目标数据内容位置起再获取特定数量的数据进行查询,进一步包括:
从全量结果存储表中获取该特定数量数据的初始存储结果及其数量,并在所述初始结果及初始的结果数量中进行该特定数量数据的删减处理;
将所述已查询出详细结果的数量加上获取的所述特定数量数据后与所述页码内容查询请求进行比较。
5.根据权利要求1所述的基于分布式的大数据分页查询方法,其特征在于,所述将所述获取到的结果存储到所述详细信息结果存储表内,进一步包括:
将所述获取到的结果按照每页预定的数据条数存储到所述详细信息结果存储表内。
6.一种基于分布式的大数据分页查询系统,其特征在于,包括:接收模块、获取模块、分析模块及处理模块;其中,
所述接收模块,用于接收页码内容查询请求,并从中解析出要查询的页码及在该页码内的目标数据量;
所述获取模块,用于根据基于查询时间设置的主行键从分布式数据库中获取全量结果存储表的数据;其中,所述全量结果存储表包括:主行键、初始结果、当前的结果数量、初始的结果数量及已查询出详细结果的数量;
所述分析模块,用于将所述已查询出详细结果的数量与所述页码内容查询请求的查询页码及查询数据数量进行比较;
所述处理模块,用于若所述已查询出详细结果的数量满足所述页码内容查询请求时,则根据所述主行键计算出目标数据在详细信息结果存储表内的页码,并从所述详细信息结果存储表内获取符合所述页码内容查询请求的数据进行反馈;
若所述已查询出详细结果的数量不满足所述页码内容查询请求时,则在所述全量结果存储表内从所请求查询的目标数据内容位置起再获取特定数量的数据进行查询,直至获取到的结果数量满足所述页码内容查询请求;
将所述获取到的结果存储到所述详细信息结果存储表内,并按照所获得的详细信息结果存储表反馈符合所述页码内容查询请求的数据。
7.根据权利要求6所述的基于分布式的大数据分页查询系统,其特征在于,所述处理模块,进一步用于:
利用要查询的页码及在该页码内的目标数据量与在详细信息结果存储表内所设置的数据条数比值获取查询结果集所在的页码。
8.根据权利要求6所述的基于分布式的大数据分页查询系统,其特征在于,所述处理模块,进一步用于:
从所请求查询的目标数据内容位置起再获取所述目标数据量特定倍数的数据。
9.根据权利要求6所述的基于分布式的大数据分页查询系统,其特征在于,所述处理模块,进一步用于:
从全量结果存储表中获取该特定数量数据的初始存储结果及其数量,并在所述初始结果及初始的结果数量中进行该特定数量数据的删减处理;
将所述已查询出详细结果的数量加上获取的所述特定数量数据后与所述页码内容查询请求进行比较。
10.根据权利要求6所述的基于分布式的大数据分页查询系统,其特征在于,所述处理模块,进一步用于:
将所述获取到的结果按照每页预定的数据条数存储到所述详细信息结果存储表内。
CN201610305022.8A 2016-05-09 2016-05-09 基于分布式的大数据分页查询方法及系统 Active CN106021357B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201610305022.8A CN106021357B (zh) 2016-05-09 2016-05-09 基于分布式的大数据分页查询方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201610305022.8A CN106021357B (zh) 2016-05-09 2016-05-09 基于分布式的大数据分页查询方法及系统

Publications (2)

Publication Number Publication Date
CN106021357A true CN106021357A (zh) 2016-10-12
CN106021357B CN106021357B (zh) 2019-05-03

Family

ID=57100161

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201610305022.8A Active CN106021357B (zh) 2016-05-09 2016-05-09 基于分布式的大数据分页查询方法及系统

Country Status (1)

Country Link
CN (1) CN106021357B (zh)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108874897A (zh) * 2018-05-23 2018-11-23 新华三大数据技术有限公司 数据查询方法及装置
CN109359060A (zh) * 2018-10-24 2019-02-19 北京奇虎科技有限公司 数据抽取方法、装置、计算设备及计算机存储介质
CN109460404A (zh) * 2018-09-03 2019-03-12 中新网络信息安全股份有限公司 一种基于redis的高效Hbase分页查询方法
CN109684528A (zh) * 2018-12-04 2019-04-26 深圳店匠科技有限公司 跨库分页查询方法、系统和存储介质
CN110597859A (zh) * 2019-09-06 2019-12-20 天津车之家数据信息技术有限公司 一种分页查询数据的方法和装置
CN111488386A (zh) * 2020-04-14 2020-08-04 北京易数科技有限公司 数据查询方法和装置

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103678408A (zh) * 2012-09-21 2014-03-26 阿里巴巴集团控股有限公司 一种查询数据的方法及装置
CN103778135A (zh) * 2012-10-18 2014-05-07 厦门雅迅网络股份有限公司 一种实时数据的分布存储和分页查询方法
US8832055B1 (en) * 2005-06-16 2014-09-09 Gere Dev. Applications, LLC Auto-refinement of search results based on monitored search activities of users
CN105045932A (zh) * 2015-09-02 2015-11-11 南京邮电大学 一种基于降序存储的数据分页查询方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8832055B1 (en) * 2005-06-16 2014-09-09 Gere Dev. Applications, LLC Auto-refinement of search results based on monitored search activities of users
CN103678408A (zh) * 2012-09-21 2014-03-26 阿里巴巴集团控股有限公司 一种查询数据的方法及装置
CN103778135A (zh) * 2012-10-18 2014-05-07 厦门雅迅网络股份有限公司 一种实时数据的分布存储和分页查询方法
CN105045932A (zh) * 2015-09-02 2015-11-11 南京邮电大学 一种基于降序存储的数据分页查询方法

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
PETER HAASE等: "A Comparison of RDF Query Languages", 《INTERNATIONAL SEMANTIC WEB CONFERENCE》 *
孙风栋等: "Oracle 10g数据库海量数据分页查询优化", 《计算机应用与软件》 *

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108874897A (zh) * 2018-05-23 2018-11-23 新华三大数据技术有限公司 数据查询方法及装置
CN108874897B (zh) * 2018-05-23 2019-09-13 新华三大数据技术有限公司 数据查询方法及装置
CN109460404A (zh) * 2018-09-03 2019-03-12 中新网络信息安全股份有限公司 一种基于redis的高效Hbase分页查询方法
CN109359060A (zh) * 2018-10-24 2019-02-19 北京奇虎科技有限公司 数据抽取方法、装置、计算设备及计算机存储介质
CN109359060B (zh) * 2018-10-24 2023-06-16 三六零科技集团有限公司 数据抽取方法、装置、计算设备及计算机存储介质
CN109684528A (zh) * 2018-12-04 2019-04-26 深圳店匠科技有限公司 跨库分页查询方法、系统和存储介质
CN110597859A (zh) * 2019-09-06 2019-12-20 天津车之家数据信息技术有限公司 一种分页查询数据的方法和装置
CN110597859B (zh) * 2019-09-06 2022-03-29 天津车之家数据信息技术有限公司 一种分页查询数据的方法和装置
CN111488386A (zh) * 2020-04-14 2020-08-04 北京易数科技有限公司 数据查询方法和装置
CN111488386B (zh) * 2020-04-14 2023-09-29 北京易数科技有限公司 数据查询方法和装置

Also Published As

Publication number Publication date
CN106021357B (zh) 2019-05-03

Similar Documents

Publication Publication Date Title
CN106021357A (zh) 基于分布式的大数据分页查询方法及系统
CN106227894B (zh) 一种数据分页查询方法和装置
CN103473230A (zh) 服务范围确定方法、物流服务提供方推荐方法及相应装置
CN104123340B (zh) 一种数据库分表分页查询方法及系统
CN102725753B (zh) 优化数据访问的方法及装置、优化数据存储的方法及装置
CN106528787B (zh) 一种基于海量数据多维分析的查询方法及装置
CN104348679B (zh) 一种分桶测试的方法、装置和系统
CN103530378B (zh) 数据分页查询与数据库的构建的方法与装置
CN103678408B (zh) 一种查询数据的方法及装置
CN106708996A (zh) 用于对关系数据库进行全文搜索的方法及系统
CN103440288A (zh) 一种大数据存储方法及装置
CN108804459B (zh) 数据查询方法及装置
CN103559300B (zh) 数据的查询方法和查询装置
CN101996067A (zh) 一种数据导出的方法和装置
CN105045932A (zh) 一种基于降序存储的数据分页查询方法
CN104063376A (zh) 多维度分组运算方法及系统
CN102915382A (zh) 一种基于索引的数据库的数据查询方法和装置
CN105760380A (zh) 数据库查询方法、装置及系统
CN104486777A (zh) 一种实现数据处理的方法及装置
CN105808773A (zh) 一种新闻推送方法及装置
CN103914456A (zh) 一种数据存储方法和系统
CN103853838A (zh) 一种数据处理方法和装置
CN106874326A (zh) 一种条目列表获取请求处理方法及装置
CN111460240B (zh) 一种跨地域多活微服务架构下翻页数据查询方法及装置
CN101430660A (zh) 一种软件性能测试时基于tps的压力模型分析方法

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant