CN112527824A - 分页查询方法、装置、电子设备和计算机可读存储介质 - Google Patents
分页查询方法、装置、电子设备和计算机可读存储介质 Download PDFInfo
- Publication number
- CN112527824A CN112527824A CN201910873707.6A CN201910873707A CN112527824A CN 112527824 A CN112527824 A CN 112527824A CN 201910873707 A CN201910873707 A CN 201910873707A CN 112527824 A CN112527824 A CN 112527824A
- Authority
- CN
- China
- Prior art keywords
- target data
- paging
- query
- data partition
- paging query
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
- G06F16/2453—Query optimisation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
- G06F16/2458—Special types of queries, e.g. statistical queries, fuzzy queries or distributed queries
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/248—Presentation of query results
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Databases & Information Systems (AREA)
- General Engineering & Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Computational Linguistics (AREA)
- Fuzzy Systems (AREA)
- Mathematical Physics (AREA)
- Probability & Statistics with Applications (AREA)
- Software Systems (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明提出一种分页查询方法、装置、电子设备和计算机可读存储介质,涉及数据处理技术领域。该方法及装置通过接收分页查询请求,并响应分页查询请求,并根据目标数据库包含的数据总量将目标数据库划分为多个数据分区,然后根据分页查询条件在每个数据分区中查询得到第一目标数据分区,最后将每个第一目标数据分区汇总得到第二目标数据分区,并在第二目标数据分区中查询得到满足分页查询条件的目标数据。由于是根据目标数据库包含的数据总量来自适应地划分数据分区,增加可并行查询的数据分区数量,提高了查询效率;同时由于在查询过程中无需使用窗口函数,且查询时直接获取数据而非数据的id,同样节省了查询时间,提高了查询效率。
Description
技术领域
本发明涉及数据处理技术领域,具体而言,涉及一种分页查询方法、装置、电子设备和计算机可读存储介质。
背景技术
现在大数据产业发展的如火如荼,国家也支持大数据产业的发展。而在大数据发展应用中,需要很多的技术来支持大量数据的处理,spark就是其中之一,而且是目前企业中应用最为广泛的一种技术。
Spark SQL是spark的一个模块,主要运用于结构化数据的处理,当查询后返回的数据量较多时,便需要分页操作,常见的分页方案有两种:
ROW_NUMBER法和query_then_fetch方式。这两种方案的主要缺点都是耗时过长,尤其是在数据量很大的时候,且构造的SQL查询语句繁琐。
发明内容
有鉴于此,本发明的目的在于提供一种分页查询方法、装置、电子设备和计算机可读存储介质,以解决上述问题。
为了实现上述目的,本发明实施例采用的技术方案如下:
第一方面,本发明实施例提供一种分页查询方法,所述分页查询方法包括:
接收分页查询请求,其中,所述分页查询请求包含目标数据库及分页查询条件;
响应所述分页查询请求,并根据所述目标数据库包含的数据总量将所述目标数据库划分为多个数据分区;
根据所述分页查询条件在每个所述数据分区中查询得到第一目标数据分区;
将每个所述第一目标数据分区汇总得到第二目标数据分区,并在所述第二目标数据分区中查询得到满足所述分页查询条件的目标数据。
第二方面,本发明实施例提供一种分页查询装置,所述分页查询装置包括:
请求接收模块,用于接收分页查询请求,其中,所述分页查询请求包含目标数据库及分页查询条件;
数据划分模块,用于响应所述分页查询请求,并根据所述目标数据库包含的数据总量将所述目标数据库划分为多个数据分区;
数据查询模块,用于根据所述分页查询条件在每个所述数据分区中查询得到第一目标数据分区;
所述数据查询模块还用于将每个所述第一目标数据分区汇总得到第二目标数据分区,并在所述第二目标数据分区中查询得到满足所述分页查询条件的目标数据。
第三方面,本发明实施例提供一种电子设备,包括处理器和存储器,所述存储器存储有能够被所述处理器执行的机器可执行指令,所述处理器可执行所述机器可执行指令以实现前述实施方式提供的分页查询方法。
第四方面,本发明实施例提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现如前述实施方式提供的分页查询方法。
本发明实施例提供的分页查询方法、装置、电子设备和计算机可读存储介质,通过接收分页查询请求,并响应分页查询请求,并根据目标数据库包含的数据总量将目标数据库划分为多个数据分区,然后根据分页查询条件在每个数据分区中查询得到第一目标数据分区,最后将每个第一目标数据分区汇总得到第二目标数据分区,并在第二目标数据分区中查询得到满足分页查询条件的目标数据。由于是根据目标数据库包含的数据总量来自适应地划分数据分区,增加可并行查询的数据分区数量,提高了查询效率;同时由于在查询过程中无需使用窗口函数,且查询时直接获取数据而非数据的id,同样节省了查询时间,提高了查询效率。
为使本发明的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本发明的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1示出了本发明实施例提供的电子设备的方框示意图。
图2示出了本发明实施例提供的分页查询方法的流程图。
图3示出了图2中S203的具体流程图。
图4示出了图2中S204的具体流程图。
图5示出了本发明实施例提供的分页查询装置的功能模块图。
图标:100-电子设备;110-存储器;120-处理器;130-通信单元;200-分页查询装置;210-请求接收模块;220-数据划分模块;230-数据查询模块。
具体实施方式
下面将结合本发明实施例中附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本发明实施例的组件可以以各种不同的配置来布置和设计。
因此,以下对在附图中提供的本发明的实施例的详细描述并非旨在限制要求保护的本发明的范围,而是仅仅表示本发明的选定实施例。基于本发明的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。
需要说明的是,术语“第一”和“第二”等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
现有技术中,通常使用ROW_NUMBER函数和query_then_fetch方式实现分页查询。其中,若采用ROW_NUMBER函数实现分页查询,在查询时需要利用窗口函数配合ROW_NUMBER函数,并对每条查询出来的记录进行顺序编号,然后对编号进行条件查询最终获得预想的目标记录。但该方法需要使用窗口函数,从而spark任务执行中必然会经历一次shuffle操作,整体耗时至少需要几十秒,导致检索效率低下,不能满足SQL检索的性能要求。
而query_then_fetch即为将单次查询分成两个部分执行:query阶段进行条件匹配,字段排序,汇总每个节点的Top N数据集的id字段和排序字段到结果收集端。fetch阶段则对汇总后的id重排序,直接得到目标id集,根据目标id集获取完整的结果集。而将分页查询分为两个步骤,同样比较耗时,导致检索效率低下,不能满足SQL检索的性能要求。
有鉴于此,本发明的目的在于提供一种分页查询方法、装置、电子设备和计算机可读存储介质,以解决上述问题。
请参照图1,是电子设备100的方框示意图。所述电子设备100包括存储器110、处理器120及通信单元130。所述存储器110、处理器120以及通信单元130各元件相互之间直接或间接地电性连接,以实现数据的传输或交互。例如,这些元件相互之间可通过一条或多条通讯总线或信号线实现电性连接。
其中,存储器110用于存储程序或者数据。所述存储器110可以是,但不限于,随机存取存储器(Random Access Memory,RAM),只读存储器(Read Only Memory,ROM),可编程只读存储器(Programmable Read-Only Memory,PROM),可擦除只读存储器(ErasableProgrammable Read-Only Memory,EPROM),电可擦除只读存储器(Electric ErasableProgrammable Read-Only Memory,EEPROM)等。
处理器120用于读/写存储器110中存储的数据或程序,并执行相应地功能。
通信单元130用于通过所述网络建立所述电子设备100与其它通信终端之间的通信连接,并用于通过所述网络收发数据。
需要说明的是,该电子设备100上搭建有数据库,以便用户对文件中的数据进行管理。
应当理解的是,图1所示的结构仅为电子设备100的结构示意图,所述电子设备100还可包括比图1中所示更多或者更少的组件,或者具有与图1所示不同的配置。图1中所示的各组件可以采用硬件、软件或其组合实现。
第一实施例
本发明提供了一种分页查询方法,应用于上述电子设备100。请参阅图2,为本发明提供的分页查询方法的流程图。该分页查询方法包括:
S201,接收分页查询请求。
其中,分页查询请求包含目标数据库及分页查询条件。目标数据库包含目标数据,且一旦确定目标数据库,则目标数据库包含的数据总量便能够确定。
在一种可选的实施方式中,分页查询条件包含筛选子条件、排序子条件、分页码以及分页查询条数。其中,筛选子条件用于从目标数据库中筛选数据;排序子条件用于对筛选出的数据进行排序;而分页码以及分页查询条数则用于从排序后的数据中得到目标数据。
优选地,采用唯一字段或者多字段构成唯一来作为排序子条件,以免排序结果随机混乱,导致分页查询没有实际意义。
S202,响应分页查询请求,并根据目标数据库包含的数据总量将目标数据库划分为多个数据分区。
通常地,目标数据库包含的数据总量越多,则划分得到的数据分区越多。在一种可选的实施方式中,可预先设定每个数据分区包含的数据量;从而在确定数据总量以及每个分区包含的数据量的前提下,便能确定可划分得到的数据分区的数量。
可以理解地,根据目标数据库包含的数据总量将目标数据库划分为多个数据分区,使得分页查询的并行度与数据总量自适应。具体地,数据总量越多,则数据分区越多,从而分页查询的并行度越高,查询效率越高。
S203,根据分页查询条件在每个数据分区中查询得到第一目标数据分区。
请参阅图3,为S203的具体流程图。该S203包括:
S2031,从每个数据分区中查询得到满足筛选子条件的数据。
其中,筛选子条件包含筛选字段,可根据筛选字段从每个数据分区中筛选出满足筛选子条件的数据。例如,筛选子条件为2019.8.20~2019.8.22这一时间范围,从而需要在每个数据分区中查询在2019.8.20~2019.8.22这一时间范围内的数据存储记录。
S2032,根据排序子条件对每个数据分区中满足筛选子条件的数据进行排序以得到过渡数据分区。
例如,对上述筛选出的数据按照时间进行排序,从而得到过渡数据分区。
S2033,提取每个过渡数据分区的前预设数量个数据,以生成第一目标数据分区。
其中,预设数量根据分页码以及分页查询条数确定;具体地,前预设数量=分页码+分页查询条数。例如,分页查询命令为limit k offset z(其含义为跳过前z条记录,而获取后面k条记录),则其中z为分页码,分页查询条数为k。从而,预设数量N=k+z。即,将过渡数据分区中的前N个数据提取出来,形成一个第一目标数据分区。
需要说明的是,数据分区的数量跟第一目标数据分区的数量相同。即会从每一个数据分区中均查询得到满足条件的TOP N个数据,形成第一目标数据分区。
S204,将每个第一目标数据分区汇总得到第二目标数据分区,并在第二目标数据分区中查询得到满足分页查询条件的目标数据。
其中,请参阅图4,在第二目标数据分区中查询得到目标数据的过程包括:
S2041,根据排序子条件对第二目标数据分区进行排序。
需要说明的是,S2041的排序过程与S2032的排序过程类似,在此不再赘述。
S2042,根据分页码以及分页查询条数从排序后的第二目标数据分区中查询得到目标数据。
具体地,若分页查询命令为limit k offset z,则跳过排序后的第二目标数据分区的前z条记录,而获取后面k条记录作为目标数据。
下面结合一个简单的,说明本发明提供的分页查询方法的实现过程。例如,目标数据库为1~20以内的数据,排序子条件为从小到大,分页码为2,分页查询条数为2。则在一种可选的实施方式中,可将20个数据划分为4个数据分区,且每个数据分区分别为[1,2,3,4,5],[6,7,8,9,10],[11、12、13,14,15],[16,17,18,19,20]。从而,从每个数据分区中得到的第一数据分区为[1,2,3,4],[6,7,8,9],[11、12、13,14],[16,17,18,19],汇总后得到的第二数据分区为[1,2,3,4,6,7,8,9,11、12、13,14,16,17,18,19]。从而最终得到的目标数据即为[3,4]。
另外,根据是否存在与分页查询请求关联的其他任务请求,本发明提供的分页查询方法还包括:
若不存在与分页查询请求关联的其他任务请求,则在结果收集端将每个第一目标数据分区汇总得到第二目标数据分区,并在第二目标数据分区中查询得到满足分页查询条件的目标数据。
若存在与分页查询请求关联的其他任务请求,则在任务执行端将每个第一目标数据分区汇总得到第二目标数据分区,并在第二目标数据分区中查询得到满足分页查询条件的目标数据,以基于目标数据执行其他任务请求。
其中,与分页查询请求关联的其他任务请求可指:执行时需要依赖于分页查询请求的结果的任务请求。也即,当还需要执行其他任务时,则直接在任务执行端上汇总第二目标数据分区,并得到目标数据,以便于继续执行其他任务;若不需执行其他任务请求,也即分页查询请求即为最后一个节点时,便在结果收集端汇总第二目标数据分区,并得到目标数据。
可以理解地,本发明提供的分页查询方法,根据目标数据库包含的数据总量来自适应地划分数据分区,增加可并行查询的数据分区数量,提高了查询效率。同时由于在查询过程中无需使用窗口函数,避免了shuffle操作,且查询时直接获取数据而非数据的id,也削减了fetch步骤,同样节省了查询时间,提高了查询效率。
为了执行上述实施例及各个可能的方式中的相应步骤,下面给出一种分页查询装置200的实现方式,可选地,该分页查询装置200可以采用上述图1所示的电子设备100的器件结构。进一步地,请参阅图5,图5为本发明实施例提供的一种分页查询装置200的功能模块图。需要说明的是,本实施例所提供的分页查询装置200,其基本原理及产生的技术效果和上述实施例相同,为简要描述,本实施例部分未提及之处,可参考上述的实施例中相应内容。该分页查询装置200包括:请求接收模块210、数据划分模块220以及数据查询模块230。
其中,请求接收模块210用于接收分页查询请求。
可以理解地,在一种可选的实施方式中,该请求接收模块210可用于执行S201。
数据划分模块220用于响应分页查询请求,并根据目标数据库包含的数据总量将目标数据库划分为多个数据分区。
可以理解地,在一种可选的实施方式中,该数据划分模块220可用于执行S202。
数据查询模块230用于根据分页查询条件在每个数据分区中查询得到第一目标数据分区。
具体地,数据查询模块230用于从每个数据分区中查询得到满足筛选子条件的数据,并根据排序子条件对每个数据分区中满足筛选子条件的数据进行排序以得到过渡数据分区,然后提取每个过渡数据分区的前预设数量个数据,以生成第一目标数据分区。
可以理解地,在一种可选的实施方式中,该数据查询模块230可用于执行S203、S2031、S2032以及S2033。
数据查询模块230还用于将每个第一目标数据分区汇总得到第二目标数据分区,并在第二目标数据分区中查询得到满足分页查询条件的目标数据。
具体地,数据查询模块230用于根据排序子条件对第二目标数据分区进行排序,并根据分页码以及分页查询条数从排序后的第二目标数据分区中查询得到目标数据。
可以理解地,在一种可选的实施方式中,该数据查询模块230可用于执行S203、S2041、S2042以及S2043。
可选地,上述模块可以软件或固件(Firmware)的形式存储于图1所示的存储器110中或固化于该电子设备100的操作***(Operating System,OS)中,并可由图1中的处理器120执行。同时,执行上述模块所需的数据、程序的代码等可以存储在存储器110中。
本发明实施例还提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器120执行时实现如前述实施方式提供的分页查询方法。
综上所述,本发明实施例提供的分页查询方法、装置、电子设备和计算机可读存储介质,通过接收分页查询请求,并响应分页查询请求,并根据目标数据库包含的数据总量将目标数据库划分为多个数据分区,然后根据分页查询条件在每个数据分区中查询得到第一目标数据分区,最后将每个第一目标数据分区汇总得到第二目标数据分区,并在第二目标数据分区中查询得到满足分页查询条件的目标数据。由于是根据目标数据库包含的数据总量来自适应地划分数据分区,增加可并行查询的数据分区数量,提高了查询效率;同时由于在查询过程中无需使用窗口函数,且查询时直接获取数据而非数据的id,同样节省了查询时间,提高了查询效率。
在本申请所提供的几个实施例中,应该理解到,所揭露的装置和方法,也可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,附图中的流程图和框图显示了根据本发明的多个实施例的装置、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现方式中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的***来实现,或者可以用专用硬件与计算机指令的组合来实现。
另外,在本发明各个实施例中的各功能模块可以集成在一起形成一个独立的部分,也可以是各个模块单独存在,也可以两个或两个以上模块集成形成一个独立的部分。
所述功能如果以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (10)
1.一种分页查询方法,其特征在于,所述分页查询方法包括:
接收分页查询请求,其中,所述分页查询请求包含目标数据库及分页查询条件;
响应所述分页查询请求,并根据所述目标数据库包含的数据总量将所述目标数据库划分为多个数据分区;
根据所述分页查询条件在每个所述数据分区中查询得到第一目标数据分区;
将每个所述第一目标数据分区汇总得到第二目标数据分区,并在所述第二目标数据分区中查询得到满足所述分页查询条件的目标数据。
2.根据权利要求1所述的分页查询方法,其特征在于,所述将每个所述第一目标数据分区汇总得到第二目标数据分区,并在所述第二目标数据分区中查询得到满足所述分页查询条件的目标数据的步骤包括:
若不存在与所述分页查询请求关联的其他任务请求,则在结果收集端将每个所述第一目标数据分区汇总得到第二目标数据分区,并在所述第二目标数据分区中查询得到满足所述分页查询条件的目标数据。
3.根据权利要求1所述的分页查询方法,其特征在于,所述将每个所述第一目标数据分区汇总得到第二目标数据分区,并在所述第二目标数据分区中查询得到满足所述分页查询条件的目标数据的步骤包括:
若存在与所述分页查询请求关联的其他任务请求,则在任务执行端将每个所述第一目标数据分区汇总得到第二目标数据分区,并在所述第二目标数据分区中查询得到满足所述分页查询条件的目标数据,以基于所述目标数据执行所述其他任务请求。
4.根据权利要求1-3中任意一项所述的分页查询方法,其特征在于,所述分页查询条件包含筛选子条件、排序子条件、分页码以及分页查询条数,所述根据所述分页查询条件在每个所述数据分区中查询得到第一目标数据分区的步骤包括:
从每个所述数据分区中查询得到满足所述筛选子条件的数据;
根据所述排序子条件对每个所述数据分区中满足所述筛选子条件的数据进行排序以得到过渡数据分区;
提取每个所述过渡数据分区的前预设数量个数据,以生成所述第一目标数据分区,其中,所述预设数量根据所述分页码以及所述分页查询条数确定。
5.根据权利要求4所述的分页查询方法,其特征在于,在所述第二目标数据分区中查询得到满足所述分页查询条件的目标数据的步骤包括:
根据所述排序子条件对所述第二目标数据分区进行排序;
根据所述分页码以及所述分页查询条数从排序后的所述第二目标数据分区中查询得到所述目标数据。
6.一种分页查询装置,其特征在于,所述分页查询装置包括:
请求接收模块,用于接收分页查询请求,其中,所述分页查询请求包含目标数据库及分页查询条件;
数据划分模块,用于响应所述分页查询请求,并根据所述目标数据库包含的数据总量将所述目标数据库划分为多个数据分区;
数据查询模块,用于根据所述分页查询条件在每个所述数据分区中查询得到第一目标数据分区;
所述数据查询模块还用于将每个所述第一目标数据分区汇总得到第二目标数据分区,并在所述第二目标数据分区中查询得到满足所述分页查询条件的目标数据。
7.根据权利要求6所述的分页查询装置,其特征在于,所述数据查询模块用于若不存在与所述分页查询请求关联的其他任务请求,则在结果收集端将每个所述第一目标数据分区汇总得到第二目标数据分区,并在所述第二目标数据分区中查询得到满足所述分页查询条件的目标数据。
8.根据权利要求6所述的分页查询装置,其特征在于,所述数据查询模块用于若存在与所述分页查询请求关联的其他任务请求,则在任务执行端将每个所述第一目标数据分区汇总得到第二目标数据分区,并在所述第二目标数据分区中查询得到满足所述分页查询条件的目标数据,以基于所述目标数据执行所述其他任务请求。
9.一种电子设备,其特征在于,包括处理器和存储器,所述存储器存储有能够被所述处理器执行的机器可执行指令,所述处理器可执行所述机器可执行指令以实现权利要求1-5任一所述的分页查询方法。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1-5中任一项所述的分页查询方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910873707.6A CN112527824B (zh) | 2019-09-17 | 2019-09-17 | 分页查询方法、装置、电子设备和计算机可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910873707.6A CN112527824B (zh) | 2019-09-17 | 2019-09-17 | 分页查询方法、装置、电子设备和计算机可读存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112527824A true CN112527824A (zh) | 2021-03-19 |
CN112527824B CN112527824B (zh) | 2023-04-18 |
Family
ID=74974386
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910873707.6A Active CN112527824B (zh) | 2019-09-17 | 2019-09-17 | 分页查询方法、装置、电子设备和计算机可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112527824B (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113946725A (zh) * | 2021-12-20 | 2022-01-18 | 飞狐信息技术(天津)有限公司 | 分页查询方法及装置、存储介质及电子设备 |
WO2024046352A3 (zh) * | 2022-09-02 | 2024-04-18 | 顺丰科技有限公司 | 数据查询方法、装置、计算机设备及存储介质 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20110093500A1 (en) * | 2009-01-21 | 2011-04-21 | Google Inc. | Query Optimization |
US20120039536A1 (en) * | 2010-08-10 | 2012-02-16 | Xerox Corporation | Optical character recognition with two-pass zoning |
CN103678408A (zh) * | 2012-09-21 | 2014-03-26 | 阿里巴巴集团控股有限公司 | 一种查询数据的方法及装置 |
CN107103032A (zh) * | 2017-03-21 | 2017-08-29 | 中国科学院计算机网络信息中心 | 一种分布式环境下避免全局排序的海量数据分页查询方法 |
CN107193822A (zh) * | 2016-03-14 | 2017-09-22 | 阿里巴巴集团控股有限公司 | 用于分页查询的方法、装置及设备 |
CN108647347A (zh) * | 2018-05-14 | 2018-10-12 | 中国平安财产保险股份有限公司 | 分页显示方法、用户设备、存储介质及装置 |
CN109359060A (zh) * | 2018-10-24 | 2019-02-19 | 北京奇虎科技有限公司 | 数据抽取方法、装置、计算设备及计算机存储介质 |
-
2019
- 2019-09-17 CN CN201910873707.6A patent/CN112527824B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20110093500A1 (en) * | 2009-01-21 | 2011-04-21 | Google Inc. | Query Optimization |
US20120039536A1 (en) * | 2010-08-10 | 2012-02-16 | Xerox Corporation | Optical character recognition with two-pass zoning |
CN103678408A (zh) * | 2012-09-21 | 2014-03-26 | 阿里巴巴集团控股有限公司 | 一种查询数据的方法及装置 |
CN107193822A (zh) * | 2016-03-14 | 2017-09-22 | 阿里巴巴集团控股有限公司 | 用于分页查询的方法、装置及设备 |
CN107103032A (zh) * | 2017-03-21 | 2017-08-29 | 中国科学院计算机网络信息中心 | 一种分布式环境下避免全局排序的海量数据分页查询方法 |
CN108647347A (zh) * | 2018-05-14 | 2018-10-12 | 中国平安财产保险股份有限公司 | 分页显示方法、用户设备、存储介质及装置 |
CN109359060A (zh) * | 2018-10-24 | 2019-02-19 | 北京奇虎科技有限公司 | 数据抽取方法、装置、计算设备及计算机存储介质 |
Non-Patent Citations (3)
Title |
---|
戴草帽的路飞: "java用多线程批次查询大量数据(Callable返回数据)方式", 《HTTPS://BLOG.CSDN.NET》 * |
曹红兵: "基于多线程和分页技术的数据库查询", 《科技信息(科学教研)》 * |
李爱武: "《融会贯通 从Oracle 12c到SQL Server 2016》", 31 December 2016, 北京邮电大学出版 * |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113946725A (zh) * | 2021-12-20 | 2022-01-18 | 飞狐信息技术(天津)有限公司 | 分页查询方法及装置、存储介质及电子设备 |
CN113946725B (zh) * | 2021-12-20 | 2022-03-01 | 飞狐信息技术(天津)有限公司 | 分页查询方法及装置、存储介质及电子设备 |
WO2024046352A3 (zh) * | 2022-09-02 | 2024-04-18 | 顺丰科技有限公司 | 数据查询方法、装置、计算机设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN112527824B (zh) | 2023-04-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110321344B (zh) | 关联数据的信息查询方法、装置、计算机设备及存储介质 | |
CN111046034B (zh) | 管理内存数据及在内存中维护数据的方法和*** | |
US8108411B2 (en) | Methods and systems for merging data sets | |
US7644107B2 (en) | System and method for batched indexing of network documents | |
EP2812815B1 (en) | Web page retrieval method and device | |
AU2017243870B2 (en) | "Methods and systems for database optimisation" | |
US7895171B2 (en) | Compressibility estimation of non-unique indexes in a database management system | |
CN103207919A (zh) | 一种MongoDB集群快速查询计算的方法及装置 | |
CN108228799B (zh) | 对象索引信息的存储方法及装置 | |
CN112612827B (zh) | 数据库分页查询方法、装置、计算机设备及存储介质 | |
US7519636B2 (en) | Key sequenced clustered I/O in a database management system | |
CN112527824B (zh) | 分页查询方法、装置、电子设备和计算机可读存储介质 | |
CN114116762A (zh) | 一种离线数据模糊搜索方法、装置、设备和介质 | |
CN106649385B (zh) | 基于HBase数据库的数据排序方法和装置 | |
CN112445833B (zh) | 一种分布式数据库的数据分页查询方法、装置和*** | |
CN111858607A (zh) | 数据处理方法、装置、电子设备和计算机可读介质 | |
CN111258819A (zh) | MySQL数据库备份文件的数据获取方法、装置和*** | |
CN113849499A (zh) | 数据的查询方法、装置、存储介质及电子装置 | |
CN111797095A (zh) | 索引构建方法和json数据查询方法 | |
CN109101595B (zh) | 一种信息查询方法、装置、设备及计算机可读存储介质 | |
CN116132448A (zh) | 基于人工智能的数据分流方法及相关设备 | |
US20100268723A1 (en) | Method of partitioning a search query to gather results beyond a search limit | |
CN113656438B (zh) | 数据树的数据查询方法及装置 | |
CN111143340B (zh) | 一种数据处理方法、装置及服务器、客户端 | |
CN114416741A (zh) | 基于多级索引的kv数据写入读取方法、装置及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |