CN110569255A - 数据库分库分表的分页查询方法、装置和计算机设备 - Google Patents

数据库分库分表的分页查询方法、装置和计算机设备 Download PDF

Info

Publication number
CN110569255A
CN110569255A CN201910759047.9A CN201910759047A CN110569255A CN 110569255 A CN110569255 A CN 110569255A CN 201910759047 A CN201910759047 A CN 201910759047A CN 110569255 A CN110569255 A CN 110569255A
Authority
CN
China
Prior art keywords
paging
data
query
inquiry
current
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.)
Pending
Application number
CN201910759047.9A
Other languages
English (en)
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.)
Suning Cloud Computing Co Ltd
Original Assignee
Suning Cloud Computing 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 Suning Cloud Computing Co Ltd filed Critical Suning Cloud Computing Co Ltd
Priority to CN201910759047.9A priority Critical patent/CN110569255A/zh
Publication of CN110569255A publication Critical patent/CN110569255A/zh
Priority to CA3151383A priority patent/CA3151383A1/en
Priority to PCT/CN2020/097830 priority patent/WO2021031687A1/zh
Pending legal-status Critical Current

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/2453Query optimisation
    • 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/248Presentation of query results
    • 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/28Databases characterised by their database models, e.g. relational or object models
    • G06F16/284Relational databases

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computational Linguistics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本申请涉及一种数据库分库分表的分页查询方法、装置和计算机设备。所述方法包括:获取本次分页查询数据条数、本次分页查询起始行号以及本次分页查询的分页数据条数,本次分页查询数据条数是指本次分页查询时在当前分表中查询到的数据条数;根据本次分页查询数据条数、本次分页查询起始行号和本次分页查询的分页数据条数,确定下次分页查询起始行号和下次分页查询的分页数据条数;根据下次分页查询起始行号和下次分页查询的分页数据条数,在下一分表中进行下次分页查询。采用本方法能够节约内存开销,还能够提升查询效率。

Description

数据库分库分表的分页查询方法、装置和计算机设备
技术领域
本申请涉及数据库技术领域,特别是涉及一种数据库分库分表的分页查询方法、装置、计算机设备和存储介质。
背景技术
随着业务数据量的增大,传统的关系型数据库(例如MySQL数据库)的单表处理效率达到瓶颈。但是由于业务需要,此类数据仍需存储在关系型数据库中。为了提高效率,可以把数据按一定规则分类,如图1所示,分别存入table_001、table_002、…、table_(n)等n张表中,n的大小由数据量决定。这n张表按一定规则分类,分别由DB_01、DB_01、DB_(m)等m个数据库管理。
基于上述分库分表方案,把一张表拆分成了n张表,并且n张表分布在不同的m个数据库中,那么由此引发出了一个问题:传统的分页查询已经不再适用。以MySQL数据库为例,分页查询依托于LIMIT关键字,其所需参数为起始行号和分页大小两个参数。而由于分库分表,可能存在某一页的数据被存储在多张表中的情况,在这种情况之下,仅仅依赖于前端传递来的这两个参数无法实现分页查询。传统的解决方案是,把所有分表符合条件的数据都查询出来,把所有数据汇总之后,再做分页查询,这种方式内存开销较大,且查询效率较低。
发明内容
基于此,有必要针对上述技术问题,提供一种能够节约内存开销、提升查询效率的分页查询的方法、装置、计算机设备和存储介质。
一种数据库分库分表的分页查询方法,该方法包括:
获取本次分页查询数据条数、本次分页查询起始行号以及本次分页查询的分页数据条数,本次分页查询数据条数是指本次分页查询时在当前分表中查询到的数据条数;
根据本次分页查询数据条数、本次分页查询起始行号和本次分页查询的分页数据条数,确定下次分页查询起始行号和下次分页查询的分页数据条数;
根据下次分页查询起始行号和下次分页查询的分页数据条数,在下一分表中进行下次分页查询。
在其中一个实施例中,上述的根据本次分页查询数据条数、本次分页查询起始行号和本次分页查询的分页数据条数,确定下次分页查询起始行号和下次分页查询的分页数据条数,包括:
在本次分页查询数据条数大于零且小于本次分页查询的分页数据条数时,将下一分表的起始行行号确定为下次分页查询起始行号,将本次分页查询的分页数据条数和本次分页查询数据条数的差值确定为下次分页查询的分页数据条数。
在其中一个实施例中,上述的根据本次分页查询数据条数、本次分页查询起始行号和本次分页查询的分页数据条数,确定下次分页查询起始行号和下次分页查询的分页数据条数,包括:
在本次分页查询数据条数大于零且小于本次分页查询的分页数据条数时,获取前端分页数据条数以及当前查询结果集中的数据条数;
将下一分表的起始行行号确定为下次分页查询起始行号,将前端分页数据条数和当前查询结果集中的数据条数的差值确定为下次分页查询的分页数据条数。
在其中一个实施例中,上述的根据本次分页查询数据条数、本次分页查询起始行号和本次分页查询的分页数据条数,确定下次分页查询起始行号和下次分页查询的分页数据条数,包括:
在本次分页查询数据条数为零时,将本次分页查询起始行号与当前分表的数据条数的差值确定为下次分页查询起始行号,将本次分页查询的分页数据条数确定为下次分页查询的分页数据条数。
在其中一个实施例中,在进行下次分页查询的条件被满足时,根据下次分页查询起始行号和下次分页查询的分页数据条数,在下一分表中进行下次分页查询;
进行下次分页查询的条件包括:尚未查询完最后一张分表、下次分页查询起始行号不小于下一分表的起始行行号、下次分页查询的分页数据条数大于零、以及当前查询结果集中的数据条数尚未满足前端分页数据条数。
在其中一个实施例中,上述的方法还包括;
对当前查询结果集中的数据进行临时存储;
在临时存储的数据条数满足前端分页数据条数时,将临时存储的数据作为下次分页查询结果返回;
或者,在已查询完最后一张分表时,将临时存储的数据作为下次分页查询结果返回。
在其中一个实施例中,将上述当前查询结果集中的数据临时存储到内存。
一种数据库分库分表的分页查询装置,该装置包括:
获取模块,用于获取本次分页查询数据条数、本次分页查询起始行号以及本次分页查询的分页数据条数,本次分页查询数据条数是指本次分页查询时在当前分表中查询到的数据条数;
处理模块,用于根据本次分页查询数据条数、本次分页查询起始行号和本次分页查询的分页数据条数,确定下次分页查询起始行号和下次分页查询的分页数据条数;
查询模块,用于根据下次分页查询起始行号和下次分页查询的分页数据条数,在下一分表中进行下次分页查询。
一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现以下步骤:
获取本次分页查询数据条数、本次分页查询起始行号以及本次分页查询的分页数据条数,本次分页查询数据条数是指本次分页查询时在当前分表中查询到的数据条数;
根据本次分页查询数据条数、本次分页查询起始行号和本次分页查询的分页数据条数,确定下次分页查询起始行号和下次分页查询的分页数据条数;
根据下次分页查询起始行号和下次分页查询的分页数据条数,在下一分表中进行下次分页查询。
一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现以下步骤:
获取本次分页查询数据条数、本次分页查询起始行号以及本次分页查询的分页数据条数,本次分页查询数据条数是指本次分页查询时在当前分表中查询到的数据条数;
根据本次分页查询数据条数、本次分页查询起始行号和本次分页查询的分页数据条数,确定下次分页查询起始行号和下次分页查询的分页数据条数;
根据下次分页查询起始行号和下次分页查询的分页数据条数,在下一分表中进行下次分页查询。
上述数据库分库分表的分页查询方法、装置、计算机设备和存储介质,是获取本次分页查询数据条数、本次分页查询起始行号以及本次分页查询的分页数据条数,根据该本次分页查询数据条数、本次分页查询起始行号和本次分页查询的分页数据条数,确定下次分页查询起始行号和下次分页查询的分页数据条数,根据下次分页查询起始行号和下次分页查询的分页数据条数,在下一分表中进行下次分页查询。本申请实施例方案中,在分页查询中,可以动态计算分页查询所需的两个参数(分页查询起始行号和分页查询的分页数据条数),使得在分库分表情况下,可以像单张数据表一样进行分页查询,如此,即便某一页的数据被存储在多张表中也能实现跨数据表的分页查询,由于两个参数是动态计算的,每查询到前端指定页所需的数据即可返回结果,而不用把所有分表符合条件的数据都查询出来,可以节约内存,且可以减少查询操作,提高查询效率。
附图说明
图1为分库分表示意架构图;
图2为一个实施例中数据库分库分表的分页查询方法的应用环境图;
图3为一个实施例中数据库分库分表的分页查询方法的流程示意图;
图4为一个实施例中确定下次分页查询起始行号和下次分页查询的分页数据条数步骤的流程示意图;
图5为一个实施例中单表拆成三张分表的示意图;
图6为一个实施例中的逻辑总表示意图;
图7为一个实施例中的逻辑总表的分页查询示意图;
图8为一个实施例中数据库分库分表的分页查询装置的结构框图;
图9为一个实施例中计算机设备的内部结构图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
本申请提供的数据库分库分表的分页查询方法,可以应用于如图2所示的应用环境中。其中,终端202、服务器204以及数据存储设备206通过网络进行通信。
终端202可以但不限于是各种个人计算机、笔记本电脑、智能手机、平板电脑和便携式可穿戴设备(例如智能眼镜、智能手表等)。在运行过程中,终端202可以运行某一应用程序,从而向服务器204发送分页查询请求,该分页查询请求可以携带有分页查询起始行号的初始值以及分页查询的分页数据条数的初始值,并接收服务器204返回的分页查询结果。
服务器204可以用独立的服务器或者是多个服务器组成的服务器集群来实现,其中,服务器204作为数据处理设备。在运行过程中,服务器204可以在接收到终端202发送的分页查询请求,该分页查询请求携带有分页查询起始行号的初始值以及分页查询的分页数据条数的初始值,可以在执行完本次分页查询之后,获取本次分页查询数据条数、本次分页查询起始行号以及本次分页查询的分页数据条数,所述本次分页查询数据条数是指本次分页查询时在当前分表中查询到的数据条数,根据所述本次分页查询数据条数、所述本次分页查询起始行号和所述本次分页查询的分页数据条数,确定下次分页查询起始行号和下次分页查询的分页数据条数,根据所述下次分页查询起始行号和所述下次分页查询的分页数据条数,在下一分表中进行下次分页查询,如此可以实现跨数据表的分页查询。
数据存储设备206可以包括一台或者多台数据库设备,每台数据库设备一般存储有多张数据表,根据需要,多台数据库设备中的一台或者多台也可以是分别存储一张数据表。服务器204在执行分页查询时,从该数据存储设备206查询数据。根据实际需要服务器204和数据存储设备206也可以是单一计算机设备,例如,带数据库的服务器。
在一个实施例中,如图3所示,提供了一种数据库分库分表的分页查询方法,以该方法应用于图2中的服务器为例进行说明,包括以下步骤:
步骤302,获取本次分页查询数据条数、本次分页查询起始行号以及本次分页查询的分页数据条数,本次分页查询数据条数是指本次分页查询时在当前分表中查询到的数据条数;
其中,分页查询起始行号和分页查询的分页数据条数为分页查询所需的两个参数,分页查询起始行号表征从哪一行开始查询数据,分页查询的分页数据条数表征分页查询的分页大小,这两个参数的初始值一般是前端(即终端)传递过来的。本申请实施例中,是以这两个参数执行一次数据查询作为一次分页查询。本次分页查询指是已执行完成的最后一次分页查询。本次分页查询起始行号以及本次分页查询的分页数据条数是本次分页查询所需的两个参数。
具体地,服务器可以记录本次分页查询起始行号以及本次分页查询的分页数据条数,并在本次分页查询执行完成时,确定本次分页查询数据条数并记录,在进行下次分页查询前从记录数据中获取本次分页查询数据条数、本次分页查询起始行号以及本次分页查询的分页数据条数。但本领域技术人员应该可以理解,获取本次分页查询数据条数、本次分页查询起始行号以及本次分页查询的分页数据条数的方式不限于此。
步骤304,根据本次分页查询数据条数、本次分页查询起始行号和本次分页查询的分页数据条数,确定下次分页查询起始行号和下次分页查询的分页数据条数;
这里,下次分页查询起始行号和下次分页查询的分页数据条数为下次分页查询所需的两个参数。下次分页查询一般指本次分页查询之后紧接的一次分页查询。
本实施例方案中,下次分页查询起始行号和下次分页查询的分页数据条数由本次分页查询数据条数、本次分页查询起始行号和本次分页查询的分页数据条数动态确定,实现了对分页查询所需的两个参数的动态调整。
同理,本次分页查询起始行号以及本次分页查询的分页数据条数可以是根据上次分页查询数据条数、上次分页查询起始行号和上次分页查询的分页数据条数确定。本次分页查询起始行号也可以是等于分页查询起始行号的初始值,本次分页查询的分页数据条数也可以是等于分页查询的分页数据条数的初始值。
步骤306,根据下次分页查询起始行号和下次分页查询的分页数据条数,在下一分表中进行下次分页查询。
这里,下一分表是当前分表紧邻的分表。本实施例中的当前分表和下一分表可以是同一分库中紧邻的两张分表,也可以是不同分库中紧邻的两张分表,例如,当前分表是当前分库中的最后一张分表,下一分表是下一分库的第一张分表。本领域技术人员应该可以理解,这里的紧邻是指分表或者分库的排布顺序上紧邻。
上述数据库分库分表的分页查询方法中,是获取本次分页查询数据条数、本次分页查询起始行号以及本次分页查询的分页数据条数,根据本次分页查询数据条数、本次分页查询起始行号和本次分页查询的分页数据条数,确定下次分页查询起始行号和下次分页查询的分页数据条数,根据下次分页查询起始行号和下次分页查询的分页数据条数,在下一分表中进行下次分页查询。通过该方式,可以动态计算分页查询所需的两个参数(分页查询起始行号和分页查询的分页数据条数),使得在分库分表情况下,可以像单张数据表一样进行分页查询,如此,即便某一页的数据被存储在多张表中也能实现跨数据表的分页查询,由于两个参数是动态计算的,每查询到前端指定页所需的数据即可返回结果,而不用把所有分表符合条件的数据都查询出来,可以节约内存,且可以减少查询操作,提高查询效率。
需要说明的是,上述的“本次”和“下次”是用于描述具有相对关系且紧邻的前后两次分页查询,但不限于具体的哪两次分页查询,只要能表征这种前后相邻关系的描述都可以认为是与“本次”和“下次”等同的概念,例如,上述的“本次”用“上次”代替,上述的“下次”用“本次”代替。
另外,需要说明的是,本实施例方案中,仅是涉及与本申请方案相关的步骤,即与跨数据表的分页查询相关的步骤,对于整个分页查询过程中,可以包括某一个或者多个分页的数据不需要跨数据表的分页查询,即在一张数据表中查询到的数据已经能够满足一个分页大小,这种时候可以根据单表的分页查询方式处理。同时,本申请实施例中,以分页查询起始行号和分页查询的分页数据条数为分页查询所需的两个参数执行一次数据查询作为一次分页查询。
在其中一个实施例中,上述的步骤304可以包括步骤:根据本次分页查询数据条数判断本次分页查询是否查询到数据,获得判断结果,根据该判断结果以及预设的分页查询参数调整策略确定下次分页查询起始行号和下次分页查询的分页数据条数。
其中,分页查询参数调整策略可以包括:下次分页查询的分页数据条数为满足前端分页数据条数的尚缺条数,还包括:在该判断结果为查询到数据时,下次分页查询起始行号为下一分表的起始行行号,一般地,该起始行行号为0或者1,例如,对于MySQL数据库,行号下标从0开始计数,所以该起始行行号为0;在该判断结果为未查询到数据时,下次分页查询起始行号为本次分页查询起始行号与当前分表中的数据条数的差值,本领域技术人员应该可以理解,若有数据查询条件,该当前分表中的数据条数为当前分表中满足数据查询条件的数据条数。
在其中一个实施例中,上述步骤304可以包括步骤:在本次分页查询数据条数大于零且小于本次分页查询的分页数据条数时,将下一分表的起始行行号确定为下次分页查询起始行号,将本次分页查询的分页数据条数和本次分页查询数据条数的差值确定为下次分页查询的分页数据条数。
本实施例中,通过本次分页查询数据条数、本次分页查询起始行号和本次分页查询的分页数据条数,就可以确定下次分页查询所需的两个参数,实现成本低。
在其中一个实施例中,如图4所示,上述步骤304可以包括步骤::
步骤402:在本次分页查询数据条数大于零且小于本次分页查询的分页数据条数时,获取前端分页数据条数以及当前查询结果集中的数据条数;
这里,前端分页数据条数指前端一个分页所容纳的数据条数。
步骤404:将下一分表的起始行行号确定为下次分页查询起始行号,将前端分页数据条数和当前查询结果集中的数据条数的差值确定为下次分页查询的分页数据条数。
这里,当前查询结果集存储的是当前已经查询到且未返回前端(即终端)的数据。
例如,前端分页数据条数为10,当前查询结果集中的数据条数为6,则下次分页查询的分页数据条数为4。
本实施例中确定下次分页查询所需的两个参数的实现成本也较低。
在其中一个实施例中,上述步骤304可以包括步骤:在本次分页查询数据条数为零时,将本次分页查询起始行号与当前分表的数据条数的差值确定为下次分页查询起始行号,将本次分页查询的分页数据条数确定为下次分页查询的分页数据条数。本领域技术人员应该可以理解,若有数据查询条件,该当前分表中的数据条数为当前分表中满足数据查询条件的数据条数。
本实施例中,通过本次分页查询数据条数、当前分表的数据条数和本次分页查询的分页数据条数,就可以确定下次分页查询所需的两个参数,实现成本低。
需要说明的是,由于本次分页查询数据条数是不大于本次分页查询的分页数据条数的,因此上述实施例方案中并不涉及本次分页查询数据条数大于本次分页查询的分页数据条数的情况。此外,各分表中的一行记录一条数据。
在其中一个实施例中,在进行下次分页查询的条件被满足时,根据下次分页查询起始行号和下次分页查询的分页数据条数,在下一分表中进行下次分页查询;进行下次分页查询的条件包括:尚未查询完最后一张分表、下次分页查询起始行号不小于下一分表的起始行行号、下次分页查询的分页数据条数大于零、以及当前查询结果集中的数据条数尚未满足前端分页数据条数。
其中,在下一分表的起始行行号为0时,下次分页查询起始行号大于或者等于0。根据需要,还可以设置更多或者更少的下次分页查询的条件。
在其中一个实施例中,本申请的数据库分库分表的分页查询方法,还可以包括步骤,在本次分页查询之后,检测当前查询结果集中的数据条数是否满足前端分页数据条数,即是否等于前端分页数据条数,若否,则进入上述的步骤302,若是,则将当前查询结果集中的数据返回给终端。
在其中一个实施例中,本申请的数据库分库分表的分页查询方法,还可以包括步骤:在下次分页查询之后,检测当前查询结果集中的数据条数是否满足前端分页数据条数,即是否等于前端分页数据条数,若否,则将该下次分页查询时在该下一分表中查询到的数据条数作为新的本次分页查询数据条数,将该下次分页查询起始行号作为新的本次分页查询起始行号,将该下次分页查询的分页数据条数作为新的本次分页查询的分页数据条数,将该下一分表作为新的当前分表,返回步骤304,若是,则将当前查询结果集中的数据返回给终端。
上述两个实施例方案,在当前查询结果集中满足前端分页数据条数即可将当前查询结果集中的数据返回给终端,而不用查询到所有符合查询条件的数据再向前端返回,可以减少内存开销,也可以提升查询效率。
在其中一个实施例中,本申请的数据库分库分表的分页查询方法还可以包括步骤:对当前查询结果集中的数据进行临时存储;在临时存储的数据条数满足前端分页数据条数时,将临时存储的数据作为下次分页查询结果返回;或者,在已查询完最后一张分表时,将临时存储的数据作为下次分页查询结果返回。
其中,优选地,将当前查询结果集中的数据临时存储到内存。
本实施例的方案中,临时存储的数据条数小于或者等于前端分页数据条数,而不是所有符合查询条件的数据,可以减少内存开销。
上述实施例方案,对于有数据查询条件和无数据查询条件的情况都适用,在无数据查询条件时,根据各个分表的原始行号进行分页查询,在无数据查询条件时,根据各个分表的满足数据查询条件的行号按照先后顺序重新确定的行号进行分页查询。例如,Table_002分表中有0、1、2….、11行等12行数据,而符合条件的是3、8、9和10等4行数据,则这4行数据按照先后顺序重新确定的行号为0、1、2、3。
上述的分页查询起始行号的初始值以及分页查询的分页数据条数的初始值可以根据前端分页数据条数和目标分页的分页号确定。其中,目标分页的分页号是指前端待显示的分页号。
具体地,可以根据F=(t-1)*p确定分页查询起始行号的初始值,其中,F表示分页查询起始行号的初始值,p表示前端分页数据条数,t表示目标分页的分页号,将前端分页数据条数确定为分页查询的分页数据条数的初始值。服务器可以在接收到终端的分页查询请求时,根据该分页查询请求携带的前端分页数据条数和目标分页的分页号确定上述的分页查询起始行号的初始值以及分页查询的分页数据条数的初始值。一般地,在接收到分页查询请求时,从第一张分表开始查询数据。
为了便于理解本发明的方案,以下以一个具体实施例对本发明方案进行说明。如图5所示,假设我们把单表分成了3张分表,并且取名为表001,表002,表003,在这三张表中,分别存储了一些数据,我们把这些数据进行编号,一共十条数据,其中表001存储了7条数据,表002存储了2条数据,表003存储了1条数据。在以下说明中是以LIMIT关键字作为MySQL数据库的分页查询语句,且各个分表的起始行号是0为例,但这些并不构成对本发明方案的限定。
本申请实施例的数据库分库分表的分页查询方法的核心是无论分了多少张表,都把它们看作是一张逻辑总表,这张表由所有分表首尾相连。如图6所示。现在假设前端用户需要分页查询,从第1页开始查,每一页显示3条数据,直到查询完所有数据。那么转换为分页查询就如图7所示。分页查询依托于LIMIT关键字,其所需参数为①起始行号②分页大小。基于逻辑总表的分页查询,可以得到表1中的对应关系:
表1
Sql语句 页码 涉及的表 查询的数据
LIMIT(0,3) 1 表001 1,2,3
LIMIT(3,3) 2 表001 4,5,6
LIMIT(6,3) 3 表001,表002 7,……,8,9
LIMIT(9,3) 4 表001,表002,表003 ……,10
以下对于四条分页查询(SQL)语句逐一分析:
LIMIT(0,3):
表001作为起始表,对其执行LIMIT(0,3)可返回1,2,3这3条数据到当前查询结果集,此时,当前查询结果集的数据满足前端分页大小(相当于上述的前端分页数据条数),即可向前端(即终端)返回查询结果:1,2,3。在将当前查询结果集中的数据返回前端时,当前查询结果集中的数据一般也相应被删除,以减少对内存的占用。
LIMIT(3,3):
表001作为起始表,对其执行LIMIT(3,3)可返回4,5,6这3条数据到当前查询结果集,此时,当前查询结果集的数据满足前端分页大小,即可向前端返回查询结果:4,5,6。
至此的查询只涉及表001。而由于分库分表,可能存在某一页的数据被存储在多张表中的情况,以下就这种情况的分页查询进行阐述。
LIMIT(6,3):
表001作为起始表,对其执行LIMIT(6,3)可返回7这1条数据,还需2条;由于对表001的查询有满足的数据,所以对表002执行LIMIT(0,2)。这里的“0”是因为对表001的查询有满足的数据,所以对表002只需从第一条数据开始查询即可,表002第一条数据的行号为0。这次“2”是因为此次查询还需要2条数据即可向前端返回。这种确定(0,2)的方式可以称为分页查询参数调整策略1。对表002执行完LIMIT(0,2)可返回8,9这2条数据到当前查询结果集,此时,当前查询结果集的数据满足前端分页大小,即可向前端返回查询结果:7,8,9。
LIMIT(9,3):
表001作为起始表,对其执行LIMIT(9,3)无数据返回;由于对表001的查询无数据返回,所以对表002执行LIMIT(2,3)。这里“2”是因为对表001的查询无数据返回,所以对表002的起始位置计算公式为:9-count(表001)=2,其中,count(表001)是对表001的数据进行计数操作。“3”是因为还需要3条数据即可返回。这种确定(2,3)的方式可以称为分页查询参数调整策略2。
对表002执行LIMIT(2,3)后仍无数据返回。那么同理,继续对表003执行LIMIT(0,3)可返回10这1条数据。若还有表004,则可以按照分页查询参数调整策略1计算下去。但是由于已经遍历完了全部3张分表,此次查询返回结果:10。
用本申请实施例的数据库分库分表的分页查询方法与传统方法进行比对的结果如表2所示,该对比的测试用1000万的数据总量,分表数为1000张。单条数据占用内存约1KB,单次分页大小P(即前端分页数据条数)为10。符合查询条件的数据总量有1024条。
表2
应该理解的是,虽然图3-4的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,图3-4中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些子步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
在一个实施例中,如图8所示,提供了一种数据库分库分表的分页查询装置,包括:获取模块802、处理模块804和查询模块806,其中:
获取模块802,用于获取本次分页查询数据条数、本次分页查询起始行号以及本次分页查询的分页数据条数,本次分页查询数据条数是指本次分页查询时在当前分表中查询到的数据条数;
处理模块804,用于根据本次分页查询数据条数、本次分页查询起始行号和本次分页查询的分页数据条数,确定下次分页查询起始行号和下次分页查询的分页数据条数;
查询模块806,用于根据下次分页查询起始行号和下次分页查询的分页数据条数,在下一分表中进行下次分页查询。
在其中一个实施例中,处理模块804可以在本次分页查询数据条数大于零且小于本次分页查询的分页数据条数时,将下一分表的起始行行号确定为下次分页查询起始行号,将本次分页查询的分页数据条数和本次分页查询数据条数的差值确定为下次分页查询的分页数据条数。
在其中一个实施例中,处理模块804可以在本次分页查询数据条数大于零且小于本次分页查询的分页数据条数时,获取前端分页数据条数以及当前查询结果集中的数据条数,将下一分表的起始行行号确定为下次分页查询起始行号,将前端分页数据条数和当前查询结果集中的数据条数的差值确定为下次分页查询的分页数据条数。
在其中一个实施例中,处理模块804可以在本次分页查询数据条数为零时,将本次分页查询起始行号与当前分表的数据条数的差值确定为下次分页查询起始行号,将本次分页查询的分页数据条数确定为下次分页查询的分页数据条数。
在其中一个实施例中,查询模块806可以在进行下次分页查询的条件被满足时,根据下次分页查询起始行号和下次分页查询的分页数据条数,在下一分表中进行下次分页查询;进行下次分页查询的条件包括:尚未查询完最后一张分表、下次分页查询起始行号不小于下一分表的起始行行号、下次分页查询的分页数据条数大于零、以及当前查询结果集中的数据条数尚未满足前端分页数据条数。
在其中一个实施例中,查询模块806还可以用于对当前查询结果集中的数据进行临时存储,在临时存储的数据条数满足前端分页数据条数时,将临时存储的数据作为下次分页查询结果返回;或者,在已查询完最后一张分表时,将临时存储的数据作为下次分页查询结果返回。其中,较佳地,将当前查询结果集中的数据临时存储到内存。
关于数据库分库分表的分页查询装置的具体限定可以参见上文中对于数据库分库分表的分页查询方法的限定,在此不再赘述。上述数据库分库分表的分页查询装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
在一个实施例中,提供了一种计算机设备,该计算机设备可以是服务器,其内部结构图可以如图9所示。该计算机设备包括通过系统总线连接的处理器、存储器、网络接口和数据库。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的数据库采用分库分表的方式进行数据存储。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种数据库分库分表的分页查询方法。
本领域技术人员可以理解,图9中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施例中,提供了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行计算机程序时实现以下步骤:
获取本次分页查询数据条数、本次分页查询起始行号以及本次分页查询的分页数据条数,本次分页查询数据条数是指本次分页查询时在当前分表中查询到的数据条数;
根据本次分页查询数据条数、本次分页查询起始行号和本次分页查询的分页数据条数,确定下次分页查询起始行号和下次分页查询的分页数据条数;
根据下次分页查询起始行号和下次分页查询的分页数据条数,在下一分表中进行下次分页查询。
在其中一个实施例中,处理器执行计算机程序实现上述的根据本次分页查询数据条数、本次分页查询起始行号和本次分页查询的分页数据条数,确定下次分页查询起始行号和下次分页查询的分页数据条数的步骤时,具体实现以下步骤:在本次分页查询数据条数大于零且小于本次分页查询的分页数据条数时,将下一分表的起始行行号确定为下次分页查询起始行号,将本次分页查询的分页数据条数和本次分页查询数据条数的差值确定为下次分页查询的分页数据条数。
在其中一个实施例中,处理器执行计算机程序实现上述的根据本次分页查询数据条数、本次分页查询起始行号和本次分页查询的分页数据条数,确定下次分页查询起始行号和下次分页查询的分页数据条数的步骤时,具体实现以下步骤:
在本次分页查询数据条数大于零且小于本次分页查询的分页数据条数时,获取前端分页数据条数以及当前查询结果集中的数据条数;
将下一分表的起始行行号确定为下次分页查询起始行号,将前端分页数据条数和当前查询结果集中的数据条数的差值确定为下次分页查询的分页数据条数。
在其中一个实施例中,处理器执行计算机程序实现上述的根据本次分页查询数据条数、本次分页查询起始行号和本次分页查询的分页数据条数,确定下次分页查询起始行号和下次分页查询的分页数据条数的步骤时,具体实现以下步骤:在本次分页查询数据条数为零时,将本次分页查询起始行号与当前分表的数据条数的差值确定为下次分页查询起始行号,将本次分页查询的分页数据条数确定为下次分页查询的分页数据条数。
在其中一个实施例中,处理器执行计算机程序实现上述的根据下次分页查询起始行号和下次分页查询的分页数据条数,在下一分表中进行下次分页查询的步骤时,具体实现以下步骤:在进行下次分页查询的条件被满足时,根据下次分页查询起始行号和下次分页查询的分页数据条数,在下一分表中进行下次分页查询;进行下次分页查询的条件包括:尚未查询完最后一张分表、下次分页查询起始行号不小于下一分表的起始行行号、下次分页查询的分页数据条数大于零、以及当前查询结果集中的数据条数尚未满足前端分页数据条数。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:对当前查询结果集中的数据进行临时存储;在临时存储的数据条数满足前端分页数据条数时,将临时存储的数据作为下次分页查询结果返回;或者,在已查询完最后一张分表时,将临时存储的数据作为下次分页查询结果返回。较佳地,将当前查询结果集中的数据临时存储到内存。
在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现以下步骤:
获取本次分页查询数据条数、本次分页查询起始行号以及本次分页查询的分页数据条数,本次分页查询数据条数是指本次分页查询时在当前分表中查询到的数据条数;
根据本次分页查询数据条数、本次分页查询起始行号和本次分页查询的分页数据条数,确定下次分页查询起始行号和下次分页查询的分页数据条数;
根据下次分页查询起始行号和下次分页查询的分页数据条数,在下一分表中进行下次分页查询。
在其中一个实施例中,计算机程序被处理器执行实现上述的根据本次分页查询数据条数、本次分页查询起始行号和本次分页查询的分页数据条数,确定下次分页查询起始行号和下次分页查询的分页数据条数的步骤时,具体实现以下步骤:在本次分页查询数据条数大于零且小于本次分页查询的分页数据条数时,将下一分表的起始行行号确定为下次分页查询起始行号,将本次分页查询的分页数据条数和本次分页查询数据条数的差值确定为下次分页查询的分页数据条数。
在其中一个实施例中,计算机程序被处理器执行实现上述的根据本次分页查询数据条数、本次分页查询起始行号和本次分页查询的分页数据条数,确定下次分页查询起始行号和下次分页查询的分页数据条数的步骤时,具体实现以下步骤:
在本次分页查询数据条数大于零且小于本次分页查询的分页数据条数时,获取前端分页数据条数以及当前查询结果集中的数据条数;
将下一分表的起始行行号确定为下次分页查询起始行号,将前端分页数据条数和当前查询结果集中的数据条数的差值确定为下次分页查询的分页数据条数。
在其中一个实施例中,计算机程序被处理器执行实现上述的根据本次分页查询数据条数、本次分页查询起始行号和本次分页查询的分页数据条数,确定下次分页查询起始行号和下次分页查询的分页数据条数的步骤时,具体实现以下步骤:在本次分页查询数据条数为零时,将本次分页查询起始行号与当前分表的数据条数的差值确定为下次分页查询起始行号,将本次分页查询的分页数据条数确定为下次分页查询的分页数据条数。
在其中一个实施例中,计算机程序被处理器执行实现上述的根据下次分页查询起始行号和下次分页查询的分页数据条数,在下一分表中进行下次分页查询的步骤时,具体实现以下步骤:在进行下次分页查询的条件被满足时,根据下次分页查询起始行号和下次分页查询的分页数据条数,在下一分表中进行下次分页查询;进行下次分页查询的条件包括:尚未查询完最后一张分表、下次分页查询起始行号不小于下一分表的起始行行号、下次分页查询的分页数据条数大于零、以及当前查询结果集中的数据条数尚未满足前端分页数据条数。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:对当前查询结果集中的数据进行临时存储;在临时存储的数据条数满足前端分页数据条数时,将临时存储的数据作为下次分页查询结果返回;或者,在已查询完最后一张分表时,将临时存储的数据作为下次分页查询结果返回。较佳地,将当前查询结果集中的数据临时存储到内存。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据率SDRAM(DDRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink)DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。

Claims (10)

1.一种数据库分库分表的分页查询方法,所述方法包括:
获取本次分页查询数据条数、本次分页查询起始行号以及本次分页查询的分页数据条数,所述本次分页查询数据条数是指本次分页查询时在当前分表中查询到的数据条数;
根据所述本次分页查询数据条数、所述本次分页查询起始行号和所述本次分页查询的分页数据条数,确定下次分页查询起始行号和下次分页查询的分页数据条数;
根据所述下次分页查询起始行号和所述下次分页查询的分页数据条数,在下一分表中进行下次分页查询。
2.根据权利要求1所述的方法,其特征在于,所述根据所述本次分页查询数据条数、所述本次分页查询起始行号和所述本次分页查询的分页数据条数,确定下次分页查询起始行号和下次分页查询的分页数据条数,包括:
在所述本次分页查询数据条数大于零且小于所述本次分页查询的分页数据条数时,将所述下一分表的起始行行号确定为所述下次分页查询起始行号,将所述本次分页查询的分页数据条数和所述本次分页查询数据条数的差值确定为所述下次分页查询的分页数据条数。
3.根据权利要求1所述的方法,其特征在于,所述根据所述本次分页查询数据条数、所述本次分页查询起始行号和所述本次分页查询的分页数据条数,确定下次分页查询起始行号和下次分页查询的分页数据条数,包括:
在所述本次分页查询数据条数大于零且小于所述本次分页查询的分页数据条数时,获取前端分页数据条数以及当前查询结果集中的数据条数;
将所述下一分表的起始行行号确定为所述下次分页查询起始行号,将所述前端分页数据条数和所述当前查询结果集中的数据条数的差值确定为所述下次分页查询的分页数据条数。
4.根据权利要求1至3任意一项所述的方法,其特征在于,所述根据所述本次分页查询数据条数、所述本次分页查询起始行号和所述本次分页查询的分页数据条数,确定下次分页查询起始行号和下次分页查询的分页数据条数,包括:
在所述本次分页查询数据条数为零时,将所述本次分页查询起始行号与所述当前分表的数据条数的差值确定为所述下次分页查询起始行号,将所述本次分页查询的分页数据条数确定为所述下次分页查询的分页数据条数。
5.根据权利要求4所述的方法,其特征在于,在进行下次分页查询的条件被满足时,根据所述下次分页查询起始行号和所述下次分页查询的分页数据条数,在下一分表中进行下次分页查询;
所述进行下次分页查询的条件包括:尚未查询完最后一张分表、下次分页查询起始行号不小于下一分表的起始行行号、下次分页查询的分页数据条数大于零、以及当前查询结果集中的数据条数尚未满足前端分页数据条数。
6.根据权利要求5所述的方法,其特征在于,所述方法还包括;
对所述当前查询结果集中的数据进行临时存储;
在临时存储的数据条数满足所述前端分页数据条数时,将临时存储的数据作为下次分页查询结果返回;
或者,在已查询完最后一张分表时,将临时存储的数据作为下次分页查询结果返回。
7.根据权利要求6所述的方法,其特征在于,将所述当前查询结果集中的数据临时存储到内存。
8.一种数据库分库分表的分页查询装置,其特征在于,所述装置包括:
获取模块,用于获取本次分页查询数据条数、本次分页查询起始行号以及本次分页查询的分页数据条数,所述本次分页查询数据条数是指本次分页查询时在当前分表中查询到的数据条数;
处理模块,用于根据所述本次分页查询数据条数、所述本次分页查询起始行号和所述本次分页查询的分页数据条数,确定下次分页查询起始行号和下次分页查询的分页数据条数;
查询模块,用于根据所述下次分页查询起始行号和所述下次分页查询的分页数据条数,在下一分表中进行下次分页查询。
9.一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至7中任一项所述方法的步骤。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至7中任一项所述的方法的步骤。
CN201910759047.9A 2019-08-16 2019-08-16 数据库分库分表的分页查询方法、装置和计算机设备 Pending CN110569255A (zh)

Priority Applications (3)

Application Number Priority Date Filing Date Title
CN201910759047.9A CN110569255A (zh) 2019-08-16 2019-08-16 数据库分库分表的分页查询方法、装置和计算机设备
CA3151383A CA3151383A1 (en) 2019-08-16 2020-06-24 Method of and device for enquiring, by pagination, sub-tables divided from database, and computer equipment
PCT/CN2020/097830 WO2021031687A1 (zh) 2019-08-16 2020-06-24 数据库分库分表的分页查询方法、装置和计算机设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910759047.9A CN110569255A (zh) 2019-08-16 2019-08-16 数据库分库分表的分页查询方法、装置和计算机设备

Publications (1)

Publication Number Publication Date
CN110569255A true CN110569255A (zh) 2019-12-13

Family

ID=68775666

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910759047.9A Pending CN110569255A (zh) 2019-08-16 2019-08-16 数据库分库分表的分页查询方法、装置和计算机设备

Country Status (3)

Country Link
CN (1) CN110569255A (zh)
CA (1) CA3151383A1 (zh)
WO (1) WO2021031687A1 (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111611282A (zh) * 2020-05-25 2020-09-01 北京同邦卓益科技有限公司 用于查询数据的方法和装置
CN112231597A (zh) * 2020-09-28 2021-01-15 北京金山云网络技术有限公司 一种分页数据的查询方法、装置及电子设备
WO2021031687A1 (zh) * 2019-08-16 2021-02-25 苏宁云计算有限公司 数据库分库分表的分页查询方法、装置和计算机设备
WO2023093607A1 (zh) * 2021-11-23 2023-06-01 天翼数字生活科技有限公司 一种离线数据模糊搜索方法、装置、设备和介质

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113590623B (zh) * 2021-07-28 2024-08-06 上海万物新生环保科技集团有限公司 一种用于数据深分页查询的方法、装置及设备
CN116383449B (zh) * 2023-04-13 2024-05-24 江西数字网联信息安全技术有限公司 基于链表的crud数据顺序的实现方法、系统及设备

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20130173655A1 (en) * 2012-01-04 2013-07-04 International Business Machines Corporation Selective fetching of search results
CN104123340A (zh) * 2014-06-25 2014-10-29 世纪禾光科技发展(北京)有限公司 一种数据库分表分页查询方法及系统
CN107193822A (zh) * 2016-03-14 2017-09-22 阿里巴巴集团控股有限公司 用于分页查询的方法、装置及设备
CN109344197A (zh) * 2018-09-13 2019-02-15 广州帷策智能科技有限公司 基于大数据的分页下载方法和装置

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7698252B2 (en) * 2006-10-27 2010-04-13 Cerner Innovation, Inc. Query restriction for timely and efficient paging
CN105354256A (zh) * 2015-10-22 2016-02-24 浪潮电子信息产业股份有限公司 一种数据分页查询的方法及装置
CN108090086B (zh) * 2016-11-21 2022-02-22 迈普通信技术股份有限公司 分页查询方法及装置
CN110569255A (zh) * 2019-08-16 2019-12-13 苏宁云计算有限公司 数据库分库分表的分页查询方法、装置和计算机设备

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20130173655A1 (en) * 2012-01-04 2013-07-04 International Business Machines Corporation Selective fetching of search results
CN104123340A (zh) * 2014-06-25 2014-10-29 世纪禾光科技发展(北京)有限公司 一种数据库分表分页查询方法及系统
CN107193822A (zh) * 2016-03-14 2017-09-22 阿里巴巴集团控股有限公司 用于分页查询的方法、装置及设备
CN109344197A (zh) * 2018-09-13 2019-02-15 广州帷策智能科技有限公司 基于大数据的分页下载方法和装置

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2021031687A1 (zh) * 2019-08-16 2021-02-25 苏宁云计算有限公司 数据库分库分表的分页查询方法、装置和计算机设备
CN111611282A (zh) * 2020-05-25 2020-09-01 北京同邦卓益科技有限公司 用于查询数据的方法和装置
CN112231597A (zh) * 2020-09-28 2021-01-15 北京金山云网络技术有限公司 一种分页数据的查询方法、装置及电子设备
WO2023093607A1 (zh) * 2021-11-23 2023-06-01 天翼数字生活科技有限公司 一种离线数据模糊搜索方法、装置、设备和介质

Also Published As

Publication number Publication date
CA3151383A1 (en) 2020-06-24
WO2021031687A1 (zh) 2021-02-25

Similar Documents

Publication Publication Date Title
CN110569255A (zh) 数据库分库分表的分页查询方法、装置和计算机设备
CN109558404B (zh) 数据存储方法、装置、计算机设备和存储介质
CN107491523B (zh) 存储数据对象的方法及装置
RU2663358C2 (ru) Устройство и способ кластерного хранения
CN108255958A (zh) 数据查询方法、装置和存储介质
CN110597855A (zh) 一种数据存储方法、终端设备及计算机可读存储介质
CN112015820A (zh) 分布式图数据库实现的方法、系统、电子装置和存储介质
US9330159B2 (en) Techniques for finding a column with column partitioning
CN114398371B (zh) 数据库集群系统多副本分片方法、装置、设备及存储介质
CN110378723B (zh) 产品组合关系确定方法、装置、计算机设备和存储介质
US11200204B2 (en) Method, device and computer program product for searching a file
CN110162540B (zh) 区块链账本数据的查询方法、电子装置及存储介质
US20190163795A1 (en) Data allocating system and data allocating method
CN111914020A (zh) 数据同步方法及装置、数据查询方法及装置
CN113392089B (zh) 一种数据库索引优化方法及可读存储介质
KR102071072B1 (ko) 데이터 저장장치의 주소 맵핑 테이블 운용 방법
CN112783866B (zh) 数据读取方法、装置、计算机设备和存储介质
CN106776702B (zh) 一种处理主从式数据库系统中的索引的方法和装置
CN115840539B (zh) 数据处理方法、装置、电子设备及存储介质
CN110825953B (zh) 数据查询方法、装置和设备
US20200364226A1 (en) Methods and devices for dynamic filter pushdown for massive parallel processing databases on cloud
CN116431660A (zh) 数据处理方法、装置、系统、电子设备及存储介质
CN111913959B (zh) 一种数据查询方法、装置、终端和存储介质
CN114328738A (zh) 数据处理方法、装置、电子设备及可读存储介质
CN113961730A (zh) 图数据查询方法、系统、计算机设备和可读存储介质

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
RJ01 Rejection of invention patent application after publication

Application publication date: 20191213

RJ01 Rejection of invention patent application after publication