CN117520373A - 数据检索方法、装置、设备及存储介质 - Google Patents

数据检索方法、装置、设备及存储介质 Download PDF

Info

Publication number
CN117520373A
CN117520373A CN202311778596.3A CN202311778596A CN117520373A CN 117520373 A CN117520373 A CN 117520373A CN 202311778596 A CN202311778596 A CN 202311778596A CN 117520373 A CN117520373 A CN 117520373A
Authority
CN
China
Prior art keywords
candidate
time
data
storage unit
determining
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
CN202311778596.3A
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.)
Neusoft Corp
Original Assignee
Neusoft Corp
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 Neusoft Corp filed Critical Neusoft Corp
Priority to CN202311778596.3A priority Critical patent/CN117520373A/zh
Publication of CN117520373A publication Critical patent/CN117520373A/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/242Query formulation
    • 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/22Indexing; Data structures therefor; Storage structures
    • 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/2474Sequence data queries, e.g. querying versioned data
    • 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
    • YGENERAL 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
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE 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/00Energy 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)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Computational Linguistics (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Fuzzy Systems (AREA)
  • Probability & Statistics with Applications (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本申请提供了一种数据检索方法、装置、设备及存储介质,包括:根据多个候选数据的采集时间,将多个候选数据存储至多个存储单元;获取分页检索请求,分页检索请求包括目标检索时间,分页检索请求用于请求获取待显示数据;响应于分页检索请求,根据目标检索时间和多个采集时间,确定多个存储单元中的至少一个候选存储单元;在至少一个候选存储单元中进行数据检索,得到待显示数据。以减少数据检索时长,提高数据检索效率。

Description

数据检索方法、装置、设备及存储介质
技术领域
本申请实施例涉及计算机技术领域,尤其涉及一种数据检索方法、装置、设备及存储介质。
背景技术
随着信息化的飞速发展,软件系统需要处理海量数据,例如,需要将海量数据呈现给系统使用者。由于软件系统的显示界面有限,因此,软件系统会将海量数据在有限的界面中进行分页显示。在显示当前页面时,软件系统需要先对当前页面需要显示的数据进行检索,即进行分页检索,也称为分页查询。
目前,常基于数据库中的limit机制实现分页检索。具体的,软件系统先基于limit,根据当前页面的页数从数据库的全部数据中进行检索,然后通过排序从上述检索出的数据中确定需要显示在当前页面的数据。例如,假设当前页面所在页数需显示的是数据库中第10000行至第10030行的数据,那么在显示当前页面之前,软件系统需要从数据库的全部数据中检索出前10030行的数据,将该前10030行数据中最后的30行数据返回至当前页面,从而显示当前页面。
然而,当需要显示的数据量较大时,分页显示的页数会较多,那么就会导致需要检索的数据量变多,从而导致检索时间变长,使得检索效率降低。
发明内容
本申请提供一种数据检索方法、装置、设备及存储介质,以减少数据检索时长,提高数据检索效率。
第一方面,提供一种数据检索方法,包括:根据多个候选数据的采集时间,将多个候选数据存储至多个存储单元;获取分页检索请求,分页检索请求包括目标检索时间,分页检索请求用于请求获取待显示数据;响应于分页检索请求,根据目标检索时间和多个采集时间,确定多个存储单元中的至少一个候选存储单元;在至少一个候选存储单元中进行数据检索,得到待显示数据。
第二方面,提供一种数据检索装置,包括:存储模块,用于根据多个候选数据的采集时间,将多个候选数据存储至多个存储单元;获取模块,用于获取分页检索请求,分页检索请求包括目标检索时间,分页检索请求用于请求获取待显示数据;确定模块,用于响应于分页检索请求,根据目标检索时间和多个采集时间,确定多个存储单元中的至少一个候选存储单元;检索模块,用于在至少一个候选存储单元中进行数据检索,得到待显示数据。
第三方面,提供一种电子设备,包括:处理器和存储器,该存储器用于存储计算机程序,该处理器用于调用并运行该存储器中存储的计算机程序,执行如第一方面或其各实现方式中的方法。
第四方面,提供一种计算机可读存储介质,用于存储计算机程序,计算机程序使得计算机执行如第一方面或其各实现方式中的方法。
第五方面,提供一种计算机程序产品,包括计算机程序指令,该计算机程序指令使得计算机执行如第一方面或其各实现方式中的方法。
第六方面,提供一种计算机程序,计算机程序使得计算机执行如第一方面或其各实现方式中的方法。
通过本申请提供的技术方案,电子设备可以根据多个候选数据的采集时间,将多个候选数据存储至多个存储单元,之后,电子设备可以获取包括目标检索时间的分页检索请求,该分页检索请求用于请求获取待显示数据,接着,可以响应于分页检索请求,根据目标检索时间和多个采集时间,确定多个存储单元中的至少一个候选存储单元,并在至少一个候选存储单元中进行数据检索,得到待显示数据。在上述过程中,电子设备可以根据候选数据的采集数据存储在多个存储单元中,并根据分页检索请求中的检索时间从多个存储单元中选择部分存储单元,即至少一个候选存储单元,从而可以只在部分存储单元中进行检索,达到减少需要检索的数据数量,即缩小检索范围的技术效果,从而可以减少检索时间、提高检索效率。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例提供的一种应用场景图;
图2为本申请实施例提供的一种数据检索方法的流程图;
图3为本申请实施例提供的一种数据检索方法的示意图;
图4为本申请实施例提供的另一种数据检索方法的示意图;
图5为本申请实施例提供的另一种数据检索方法的流程图;
图6为本申请实施例提供的再一种数据检索方法的示意图;
图7为本申请实施例提供的又一种数据检索方法的示意图;
图8为本申请实施例提供的再一种数据检索方法的流程图;
图9为本申请实施例提供的又一种数据检索方法的示意图;
图10为本申请实施例提供的又一种数据检索方法的流程图;
图11为本申请实施例提供的又一种数据检索方法的示意图;
图12为本申请实施例提供的又一种数据检索方法的示意图;
图13为本申请实施例提供的又一种数据检索方法的示意图;
图14为本申请实施例提供的一种数据检索装置1400的示意图;
图15是本申请实施例提供的一种电子设备1500的示意性框图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本申请保护的范围。
需要说明的是,本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本申请的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或服务器不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
如上所述,在现有技术中,当需要检索的数据量较大时,存在检索时间较长、检索效率较低的问题。
为了解决上述技术问题,本申请的发明构思是:根据候选数据的采集时间将候选数据存储在多个存储单元中,根据分页检索请求中的检索时间以及采集时间从多个存储单元中选择候选存储单元,在候选存储单元中进行数据检索,进而减少需要检索的数据数量,即缩小检索范围,从而可以减少检索时间、提高检索效率。
应理解的是,本申请技术方案可以应用于如下场景,但不限于:
在一些可实现方式中,本申请技术方案可以应用于数据检索场景中,具体的,可以应用于分页检索场景中,但不限于此。
在一些可实现方式中,图1为本申请实施例提供的一种应用场景图,如图1所示,该应用场景中可以包括电子设备120和终端设备110。电子设备120可以通过有线网络或者无线网络与终端设备110建立连接。
示例性的,终端设备110可以是手机、平板电脑、桌面型、膝上型、手持计算机、笔记本电脑、车载设备、超级移动个人计算机(ultra-mobile personal computer,UMPC)、上网本,以及蜂窝电话、个人数字助理(personal digital assistant,PDA)、增强现实(augmented reality,AR)\虚拟现实(virtual reality,VR)设备等,但不限于此。电子设备120可以是一台服务器,也可以是由多台服务器组成的服务器集群,还可以是云平台控制中心,本申请对此不做限制。
在本申请的一种实施例中,电子设备120可以根据多个候选数据的采集时间将多个候选数据存储至多个存储单元,之后,终端设备110可以向电子设备120发送分页检索请求,分页检索请求可以用于请求获取待显示数据,电子设备120可以接收分页检索请求,以响应于分页检索请求,确定多个存储单元中的至少一个候选存储单元,并在至少一个候选存储单元中进行数据检索得到待显示数据,将待显示数据发送至终端设备110中,接着,终端设备110可以显示待显示数据。
此外,图1示例性地给出了一个电子设备和一个终端设备,实际上可以包括其他数量的电子设备和终端设备,本申请对此不作限制。
在另一些可实现方式中,本申请技术方案也可以由上述电子设备120执行,或者,本申请技术方案还可以由上述终端设备110执行,本申请对此不做限制。
在介绍了本申请实施例的应用场景之后,下面将对本申请技术方案进行详细阐述:
图2为本申请实施例提供的一种数据检索方法的流程图,该方法可以由如图1所示的电子设备120执行,但不限于此。如图2所示,该方法可以包括如下步骤:
S210:根据多个候选数据的采集时间,将多个候选数据存储至多个存储单元;
S220:获取分页检索请求,分页检索请求包括目标检索时间,分页检索请求用于请求获取待显示数据;
S230:响应于分页检索请求,根据目标检索时间和多个采集时间,确定多个存储单元中的至少一个候选存储单元;
S240:在至少一个候选存储单元中进行数据检索,得到待显示数据。
在一些可实现方式中,在执行S210之前,电子设备可以先根据需进行分页显示的内容确定需要采集的候选数据,并采集多个候选数据,确定多个候选数据的采集时间。其中,候选数据的采集时间可以是电子设备采集到候选数据时电子设备的系统时间,例如,当电子设备是服务器时,候选数据的采集时间可以是服务器采集到候选数据时的服务器时间。
示例性的,假设需要对医疗设备数据进行分页显示,那么电子设备可以确定需要采集的候选数据为医疗设备数据,并采集多个医疗设备数据,记录采集到该多个医疗设备数据时的系统时间,得到多个医疗设备数据的采集时间。
在一些可实现方式中,多个存储单元可以是同一数据库中连续的存储单元,以便于电子设备在存储单元中进行数据检索时,可以对存储单元进行连续的扫描,减少确定、跳转存储单元的时间,从而可以进一步提高数据检索效率。
示例性的,多个存储单元可以是同一数据库中连续的多个数据表。
在一些可实现方式中,上述根据多个候选数据的采集时间,将多个候选数据存储至多个存储单元,包括:按照多个采集时间的时间顺序,将多个候选数据连续存储至多个存储单元。
其中,多个采集时间的时间顺序可以是多个采集时间由早至晚的顺序,也可以是多个采集时间由晚至早的顺序,本申请对此不做限制。另外,本申请将在实施例中,以多个采集时间的时间顺序是多个采集时间由早至晚的顺序为例对本申请技术方案进行介绍,当多个采集时间的时间顺序是其他时间顺序时,其对应的内容和效果和此处类似,为避免重复,本申请在此不做赘述。
示例性的,假设多个存储单元为:存储单元1和存储单元2,存储单元1和存储单元2均可最多存储3个候选数据,多个候选数据按照采集时间由早至晚的顺序依次是:候选数据1、候选数据2、候选数据3、候选数据4、候选数据5、候选数据6。如图3中的(a)所示,电子设备可以按照采集时间由早至晚的顺序将上述6个候选数据连续存储至上述2个存储单元:将候选数据1、候选数据2、候选数据3依次存储至存储单元1中,接着,将候选数据4、候选数据5、候选数据6依次存储至存储单元2中。
或者,电子设备还可以按照上述时间顺序,将多个候选数据循环存储至多个存储单元中,例如,结合上述实施例,如图3中的(b)所示,电子设备可以将候选数据1和候选数据2依次存储至存储单元1和存储单元2中,接着,将候选数据3和候选数据4依次存储至存储单元1和存储单元2中,最后,将候选数据5和候选数据6依次存储至存储单元1和存储单元2中。
需要说明的是,本申请对电子设备将多个候选数据存储至多个存储单元的存储方式不做限制。其中,按照采集时间的时间顺序将候选数据连续存储至存储单元中,可以保证在根据目标检索时间在存储单元中进行检索时,检索得到的数据在采集时间上是符合与目标检索时间相关的检索条件的,例如,可以保证检索出的待显示数据在采集时间上是早于或者晚于目标检索时间的,从而可以保证分页显示的内容在显示页面上是按照连续时间进行显示的,确保数据显示的时序性和不重复性,提高数据显示效果。
在一些可实现方式中,在进行数据检索之前,电子设备还可以按照多个采集时间的时间顺序对多个候选数据进行排序,确定多个候选数据各自的序号,多个序号不重复。从而使得电子设备在存储单元中进行检索时,可以根据候选数据的序号确定一个检索条件,以确保检索得到的待显示数据不仅是不同于已经检索出的历史数据,即确保每次检索结果的不重复性,还可以保证检索结果的采集时间是早于或者晚于目标检索时间的,即可以确保数据显示的时序性,提高数据显示效果。
需要说明的是,本申请将在后续实施例中,对上述根据候选数据的序号确定一个检索条件对应的具体内容进行介绍,此处先不做赘述。
示例性的,如图4所示,假设电子设备是服务器,服务器可以将采集到候选数据时的服务器时间确定为候选数据的采集时间,并按照多个采集时间由早至晚的顺序,基于分布式雪花算法对采集的多个候选数据进行排序,确定多个候选数据对应的单向递增的唯一身份标识(IDentity,ID),将多个ID对应确定为多个候选数据各自的序号。之后,电子设备可以根据候选数据的ID以及采集时间对候选数据进行处理,例如,可以根据候选数据的ID以及采集时间将候选数据存储至存储单元,并对其进行检索。
具体的,电子设备可以确定采集周期,根据采集周期和采集时间将多个候选数据存储至多个存储单元中,多个存储单元分别存储一个采集周期的候选数据,其中,采集周期可以是小时、天、月或者年,本申请对此不做限制。例如,电子设备可以根据候选数据的数据总量确定采集周期,首先,电子设备可以设置多个数量区间和多个采集周期,多个数量区间与多个采集周期一一对应,将包括上述数据总量的目标数量区间对应的目标采集周期确定为该数据总量的采集周期。如此一来,可以确保每个存储单元存储的候选数据的数据量是较为合适的,从而进一步提高数据检索效率。
例如,假设候选数据的采集周期是一天,则电子设备可以将数据库划分为多个数据分区,每个数据分区对应一个存储单元,多个数据分区分别用于存储采集时间属于同一天的候选数据。
需要说明的是,本申请对候选数据的排序方式不做限制。
在一些可实现方式中,用户可以基于终端设备,对终端设备上安装的客户端中显示的显示按钮进行触发操作,从而终端设备可以获取并响应于该触发操作,向电子设备发送分页检索请求,以请求获取待显示数据,将待显示数据显示在当前分页页面中,从而电子设备可以获取分页检索请求。
其中,分页检索请求可以包括目标检索时间,目标检索时间可以是终端设备随机生成的一个时间;也可以是在用户进行上述触发操作之前,终端设备获取的用户输入或者选择的时间;还可以是终端设备的前一个分页页面中显示的最后一个待显示数据的采集时间,本申请对此不做限制。
在一些可实现方式中,图5为本申请实施例提供的另一种数据检索方法的流程图。基于图2,如图5所示,上述S230,包括:
S510:确定由多个采集时间中的最早采集时间与最晚采集时间组成的第一时间区间,确定由目标检索时间与,最晚采集时间或最早采集时间组成的第二时间区间;
S520:确定第一时间区间与第二时间区间的时间交集;
S530:将多个存储单元中,存储有采集时间属于时间交集的候选数据的存储单元确定为至少一个候选存储单元。
示例性的,多个存储单元分别存储一个采集周期的候选数据,上述S530,可以包括:根据采集周期,和多个存储单元各自存储的候选数据的采集时间,确定多个存储单元各自的周期标识,根据采集周期和时间交集,确定时间交集的目标周期标识;将多个存储单元各自的周期标识与目标周期标识进行对比,将周期标识为目标周期标识的存储单元确定为至少一个候选存储单元。
例如,针对多个存储单元中的任一存储单元,电子设备可以将该存储单元中所存储的候选数据的采集时间中采集周期对应的数字确定为该存储单元的周期标识。例如,假设采集周期是天,存储单元1存储的是采集时间为2023年09月01日的候选数据,则电子设备可以确定采集周期“天”对应的数字是20230901、0901或则01,从而电子设备可以确定存储单元1的周期标识为:20230901、0901或者01。
例如,上述根据采集周期和时间交集确定时间交集的目标周期标识,可以包括:将时间交集中采集周期对应的数字确定为目标周期标识。例如,假设采集周期是天,时间交集是[2023年09月01日,2023年09月03日],则电子设备可以确定目标周期标识为20230901、20230902和20230903。
示例性的,如图6所示,电子设备在将多个存储单元各自的周期标识与目标周期标识进行对比之前,可以创建非空数据分区标识,非空数据分区标识可以是基于Set数据结构的存储方式,可以包括多个非空数据分区,每个非空数据分区存储一个存储单元的周期标识。之后,电子设备可以基于非空数据分区标识,对多个存储单元的周期标识与目标周期标识进行对比,从而确定候选存储单元。
另外,电子设备还可以确定每个存储单元各自所存储的候选数据的采集时间中的最早采集时间和最晚采集时间,并确定每个存储单元各自对应的时间分片系数(即时间划分间隔),并将上述最早采集时间、最晚采集时间以及时间分片系数与非空数据分区标识中的非空数据分区进行对应关联,以用于后续的数据检索,本申请将在后续实施例中对此处进行介绍,在此先不做赘述。
在一些可实现方式中,如图7所示,结合上述实施例,电子设备可以根据候选数据的采集时间和采集周期,将同一数据库划分为多个数据分区,每个数据分区对应一个数据分区文件,例如,对应一个数据存储表,多个数据分区文件分别用于存储一个采集周期的候选数据。同时,电子设备可以根据每个候选数据的序号,例如,候选数据的ID,创建ID索引文件,以用于后续的数据检索。在将候选数据落盘存储至数据库时,电子设备可以确定非空数据分区标识,并将每个存储单元各自所存储的候选数据的采集时间中的最早采集时间和最晚采集时间、时间划分间隔、以及非空数据分区标识中的非空数据分区进行对应关联。
在一些可实现方式中,分页检索请求还包括目标序号,结合上述实施例,上述在至少一个候选存储单元中进行数据检索,得到待显示数据,包括:对至少一个候选存储单元中序号小于或者大于目标序号的候选数据进行检索,得到待显示数据。
其中,目标序号可以是终端设备随机生成的一个序号;也可以是在用户进行上述触发操作之前,终端设备获取的用户输入或者选择的序号;还可以是终端设备的前一个分页页面中显示的最后一个待显示数据的序号,本申请对此不做限制。
示例性的,电子设备可以根据待显示数据在分页页面中的显示顺序,以及存储单元中存储候选数据时的采集时间的时间顺序,确定对至少一个候选存储单元中序号小于目标序号的候选数据进行检索,或者对至少一个候选存储单元中序号大于目标序号的候选数据进行检索。例如,假设待显示数据在分页页面中是按照采集时间由晚至早的顺序显示的,电子设备是按照采集时间由早至晚的顺序将候选数据存储至存储单元中的,候选数据的序号是随着候选数据的采集时间单向递增的,那么电子设备在候选存储单元中进行数据检索时,可以对候选存储单元中序号小于目标序号的候选数据进行检索,得到待显示数据,从而保证待显示数据在分页页面中是按照采集时间由晚至早的顺序显示的,而且还可以保证待显示数据不会重复出现在分页页面中。
在一些可实现方式中,图8为本申请实施例提供的再一种数据检索方法的流程图。基于图2,如图8所示,分页检索请求还包括目标序号,上述S240,包括:
S810:对至少一个候选存储单元进行排序,得到排序结果;
S820:在排序结果的第一个候选存储单元中进行检索;
S830:判断第一个候选存储单元中是否存储有目标数量个符合检索条件的候选数据,若第一个候选存储单元中存储有目标数量个符合检索条件的候选数据,则执行S840;若第一个候选存储单元中没有存储目标数量个符合检索条件的候选数据,则执行S850;
S840:将目标数量个符合检索条件的候选数据确定为待显示数据;
S850:确定第一个候选存储单元中存储符合检索条件的候选数据的已有数量,使用目标数量与已有数量之差更新目标数量,从排序结果中去除第一个候选存储单元,得到更新后的排序结果,并继续执行S820,直到第一个候选存储单元中存储有目标数量个符合检索条件的候选数据为止。
其中,目标数量为当前分页页面需要显示的待显示数据的数量。例如,目标数量可以是终端设备随机生成的一个数量;也可以是在用户进行上述触发操作之前,终端设备获取的用户输入或者选择的数量;还可以是终端设备的前一个分页页面中显示待显示数据的数量,本申请对此不做限制。
示例性的,结合上述实施例,如图9所示,假设电子设备确定出30个候选存储单元,该30个候选存储单元的周期标识分别是:20230901、20230902、……、20230930,该30个候选存储单元可以是同一数据库中连续的存储单元,电子设备可以基于游标依次对该30个候选存储单元进行检索,以确定目标数量个待显示数据。具体的,电子设备可以先确定游标索引值为0,以在该30个候选存储单元中的第一个候选存储单元,即周期标识20230901对应的候选存储单元中进行检索,并判断在当前候选存储单元被检索完时,是否已检索出目标数量个符合检索条件的候选数据,若判断已经检索出目标数量个符合检索条件的候选数据,即确定当前候选存储单元存储有目标数量个符合检索条件的候选数据,则可以直接将该目标数量个符合检索条件的候选数据确定为待显示数据;若判断未检索出目标数量个符合检索条件的候选数据,即确定当前候选存储单元未存储有目标数量个符合检索条件的候选数据,则使用目标数量,与该候选存储单元中符合检索条件的候选数据的已有数量之差更新目标数量,并对游标索引值增加1,即确定游标索引值为1,以移动游标,对周期标识20230902对应的候选存储单元,即更新后的第一个候选存储单元进行检索,并执行与上述过程类似的步骤,直到电子设备确定在当前候选存储单元被检索完时,已检索出目标数量个符合检索条件的候选数据为止。
其中,若电子设备确定被检索的当前候选数据的采集时间与当前候选存储单元对应的最晚采集时间一致,则电子设备可以确定当前候选存储单元被检索完。或者,若电子设备确定当前候选存储单元中被检索的最后一个子存储单元对应的最晚采集时间与当前候选存储单元对应的最晚采集时间一致,则电子设备可以确定当前候选存储单元被检索完。子存储单元对应的内容将在后续实施例中进行介绍,本申请在此先不做赘述。
上述检索条件可以包括序号小于目标序号。例如,结合上述实施例,电子设备可以先根据除序号小于目标序号这一检索条件之外的其他检索条件对候选数据进行检索,确定初始候选数据,接着,电子设备可以根据ID索引文件,从初始候选数据中确定序号小于目标序号的候选数据,以将其确定为待显示数据。或者,电子设备可以直接根据ID索引文件,从多个候选数据中确定序号小于目标序号的候选数据,以将其确定为待显示数据。
在对第一个候选存储单元进行检索时,电子设备可以将已经检索出的符合检索条件的候选数据进行倒序排列,并记录排序中候选数据的数量,得到已有数量,由于此时检索出的数据量较小,因此排序的速度较快。若在当前候选存储单元被检索完之前,电子设备确定已有数量等于目标数量,则可以确定第一个候选存储单元中存储有目标数量个符合检索条件的候选数据;若在当前候选存储单元被检索完后,已有数量小于目标数量,则电子设备可以确定当前候选存储单元中没有存储目标数量个符合检索条件的候选数据。
在一些可实现方式中,图10为本申请实施例提供的又一种数据检索方法的流程图。基于图8,如图10所示,上述S820,包括:
S1010:确定第一个候选存储单元的时间划分间隔;
S1020:根据时间划分间隔,对第一个候选存储单元中候选数据的采集时间进行划分,得到多个时间组;
S1030:确定第一个候选存储单元中多个时间组各自对应的子存储单元;
S1040:从多个子存储单元中,确定存储有采集时间为最接近目标检索时间的候选数据的第一子存储单元;
S1050:在第一子存储单元,以及多个子存储单元中对应时间晚于或者早于第一子存储单元的第二子存储单元中进行检索。
其中,子存储单元对应的时间可以是子存储单元所存储的候选数据的采集时间中的最早时间或者最晚时间。
示例性的,假设时间划分间隔为1小时,第一个候选存储单元存储有候选数据1、候选数据2和候选数据3,其中,候选数据1、候选数据2和候选数据3的采集时间分别为:09:10、09:20、10:30,则电子设备可以对该3个采集时间进行划分,得到2个时间组:09:10和09:20为第一个时间组、10:30为第二个时间组,这2个时间组分别对应子存储单元1和子存储单元2,其中,子存储单元1存储有候选数据1、候选数据2,子存储单元2存储有候选数据3。
可以理解的是,若候选存储单元中存储有较多的候选数据,则电子设备在候选存储单元中检索时,需要检索的数据量是较多的,而通过对候选存储单元进行划分,在对应时间最接近目标检索时间的第一子存储单元和对应时间晚于或者早于第一子存储单元的第二子存储单元中进行检索,可以减少需要检索的数据量,缩小检索范围,从而可以更快地确定出符合与目标检索时间相关的条件的候选数据,从而进一步提高数据检索效率。
在一些可实现方式中,上述确定第一个候选存储单元的时间划分间隔,包括:确定去除排序结果中第一个候选存储单元的去除次数;确定采集多个候选数据的采集速率;根据去除次数和采集速率,确定时间划分间隔。
示例性的,电子设备可以先根据采集速率,计算基础时间划分间隔,并判断去除次数是否大于次数阈值,去除次数为电子设备从排序结果中去除第一个候选存储单元的次数。若去除次数小于次数阈值,则可以将基础时间划分间隔确定为时间划分间隔;若去除次数大于或者等于次数阈值,则可以根据基础时间划分间隔和去除次数计算更新时间划分间隔,并将更新时间划分间隔确定为时间划分间隔。
示例性的,电子设备可以计算采集速率的双曲余弦值,并根据双曲余弦值确定基础时间划分间隔。具体的,电子设备可以确定最小时间划分间隔,将最小时间划分间隔与双曲余弦值中的最大值,确定为基础时间划分间隔。其中,最小的时间划分间隔可以保证确定的基础时间划分间隔不会过大,从而避免由于每个子存储单元存储的数据量过多而导致的检索范围增加,以保证检索范围的合理性,保证检索效率。
例如,假设采集速率为v,表示每秒采集的候选数据的数量,最小时间划分间隔为60秒,基础时间划分间隔为k,单位为毫秒,则电子设备可以根据公式(1)确定基础时间划分间隔。
k=max(cothv,60)*1000公式(1)
示例性的,电子设备可以确定目标多项式,将去除次数输入至目标多项式中,得到时间增益,计算时间增益与基础时间划分间隔的乘积,得到更新时间划分间隔。
例如,假设去除次数为r,更新时间划分间隔为x,则电子设备可以根据公式(2)确定更新时间划分间隔。
可以理解的是,当采集速率较大时,电子设备在单位时间内采集到的候选数据会较多,那么,电子设备可以使用较小的时间划分间隔来对候选存储单元进行划分,以确保每个子存储单元存储有的候选数据的数量不会过多,从而可以保证上述第一子存储单元与第二子存储单元存储的候选数据的数量不会过多,避免由于待检索数据量较大、待检索范围较大导致的检索效率较低;当采集速率较小时,电子设备在单位时间内采集到的候选数据会较少,那么,电子设备可以使用较大的时间划分间隔来对候选存储单元进行划分,以确保每个子存储单元存储有的候选数据的数量不会过少,从而可以保证上述第一子存储单元与第二子存储单元存储的候选数据的数量不会过少,以避免由于子存储单元中存储的数据量较少而导致的需要较长时间才能够确定出目标数量个符合检索条件的候选数据,也就是说,通过上述实施例,可以确保搜索范围的合理性,保证检索效率。
另外,若经过在多个候选存储单元中进行检索都未能确定出目标数量个符合检索条件的候选数据,则表明候选存储单元中存储的候选数据是较为稀疏的,即候选存储单元中存储的数据量较少,若继续使用基础时间划分间隔对后续的候选存储单元进行划分,则会导致划分出较多子存储单元,从而导致需要检索的子存储单元变多,那么反而会降低检索的效率。因此,当去除次数大于或者等于次数阈值时,电子设备可以调整时间划分间隔,可以使用根据去除次数确定出的时间增益,增大时间划分间隔,以减少后续子存储单元的数量,从而减少循环检索的次数,最终到达提高检索效率的目的。
示例性的,如图11所示,电子设备可以设置循环检索计数器,使用循环检索计数器记录去除次数。若循环检索计数器中记录的去除次数为0,则电子设备可以确定对当前候选存储单元(即第一个候选存储单元)的检索为首次检索,则可以使用基础时间划分间隔确定时间划分范围,并对当前候选存储单元进行划分。若在当前候选存储单元中没有检索出目标数量个符合检索条件的候选数据,则电子设备可以更新排序结果,确定新的第一个候选存储单元为当前候选存储单元,同时控制循环检索计数器自增1,并判断循环检索计数器记录的去除数量是否触发了确定更新时间划分间隔的阈值,即判断去除次数是否大于次数阈值。若去除数量没有触发确定更新时间划分间隔的阈值,即去除次数小于或者等于次数阈值,则电子设备可以继续使用基础时间划分间隔确定时间划分范围,并对当前候选存储单元进行划分。若去除数量触发确定更新时间划分间隔的阈值,即去除次数大于次数阈值,则电子设备可以根据上述实施例中的方法确定更新时间划分间隔,并使用更新时间划分间隔确定时间划分范围,对当前候选存储单元进行划分,在当前候选存储单元进行检索,直到确定出目标数量个符合检索条件的候选数据为止。
下面通过示意图对本申请技术方案进行再次介绍:
在一些可实现方式中,结合上述实施例,如图12所示,电子设备在获取到终端设备发送的分页检索请求之后,可以根据多个存储单元的最早采集时间和最晚采集时间,以及分页检索请求中的检索时间,确定时间交集,并根据时间交集从多个存储单元中确定出至少一个候选存储单元。接着,针对第一个候选存储单元,电子设备可以使用基础时间划分间隔对其进行划分,确定多个子存储单元,并根据ID索引文件以及分页检索请求中的ID,确定符合条件的数据,并对其进行排序,以判断其数量即已有数量是否达到分页检索请求中的目标数量。若判断达到分页检索请求中的目标数量,则电子设备可以响应分页检索请求,将上述符合条件的数据返回至终端设备。若判断没有达到分页检索请求中的目标数量,则电子设备可以根据已有数据更新目标数量,并记录轮询检索次数即去除次数,根据去除次数是否达到次数阈值确定针对下一个候选存储单元的时间划分间隔,并基于游标确定下一个候选存储单元,并执行与上述针对第一个候选存储单元的操作类似的操作,直至已有数量达到目标数量,此时,电子设备可以将已检索出的全部符合检索条件的候选数据确定为待显示数据,并返回至终端设备。
在一些可实现方式中,结合上述实施例,如图13所示,电子设备可以基于采集到候选数据时的服务器时间,使用分布式雪花算法生成采集的候选数据各自的单向自增的唯一ID,并创建ID索引文件,根据服务器时间为候选数据打上时间标签,根据时间标签确定数据库中的多个数据分区文件即存储单元,将候选数据对应存储至存储单元中。当获取到终端设备发起的分页检索请求时,可以根据分页检索请求中的目标ID、目标数量和目标检索时间进行数据检索,并确定待显示数据。具体的,可以根据目标检索时间对多个数据分区文件即存储单元进行定位,确定候选存储单元,并根据时间划分检索对候选存储单元对应的采集时间进行切分,以确定候选存储单元中的多个子存储单元,并从多个子存储单元中确定第一子存储单元以及第二子存储单元,从而可以减少检索范围,接着,可以通过ID索引文件以及目标ID,确定出目标数量个符合检索条件的数据,对其排序,并返回至终端设备。
下面通过实验数据对本申请提供的技术方案进行说明:
在一些可实现方式中,电子设备可以在如表1所示的测试环境指标下,基于三种方案,分别对不同分页深度、不同候选数据的数量量下的检索响应时长进行测试,分页深度为需要进行分页显示的页数。其中,三种方案分别为现有技术中的基于limit分页的方案、现有技术中的基于数据库索引的方案、本申请技术方案。检索响应时长可以是指从电子设备获取分页检索请求到电子设备确定出待显示数据之间的时长。
表1
硬件 指标
服务器数量 3
CPU 40核Intel(R)Xeon(R)Silver4114CPU@2.20GHz
内存 128GB
磁盘 12T HDD
操作系统 CentOS Linux 7(Core)
当分页深度为1时,针对各方案响应时长的测试结果如表2所示。
表2
当分页深度为500时,针对各方案响应时长的测试结果如表3所示。
表3
结合上述测试结果以及上述实施例可知,通过本申请技术方案,可以智能化、自动化地确定采集周期以及时间划分间隔,进而更合理地确定候选存储单元以及子存储单元,从而更合理地缩小需要检索基础数据量,即缩小检索范围,实现针对海量数据的较低资源占用以及毫秒级检索响应,可以显著提升分页检索的响应效率,保证分页检索的稳定性。
以上结合附图详细描述了本申请的优选实施方式,但是,本申请并不限于上述实施方式中的具体细节,在本申请的技术构思范围内,可以对本申请的技术方案进行多种简单变型,这些简单变型均属于本申请的保护范围。例如,在上述具体实施方式中所描述的各个具体技术特征,在不矛盾的情况下,可以通过任何合适的方式进行组合,为了避免不必要的重复,本申请对各种可能的组合方式不再另行说明。又例如,本申请的各种不同的实施方式之间也可以进行任意组合,只要其不违背本申请的思想,其同样应当视为本申请所公开的内容。
图14本申请实施例提供的一种数据检索装置1400的示意图。如图14所示,该装置1400包括:
存储模块1401,用于根据多个候选数据的采集时间,将多个候选数据存储至多个存储单元;
获取模块1402,用于获取分页检索请求,分页检索请求包括目标检索时间,分页检索请求用于请求获取待显示数据;
确定模块1403,用于响应于分页检索请求,根据目标检索时间和多个采集时间,确定多个存储单元中的至少一个候选存储单元;
检索模块1404,用于在至少一个候选存储单元中进行数据检索,得到待显示数据。
在一些可实现方式中,分页检索请求还包括目标数量;检索模块1404,具体用于:对至少一个候选存储单元进行排序,得到排序结果;在排序结果的第一个候选存储单元中进行检索;判断第一个候选存储单元中是否存储有目标数量个符合检索条件的候选数据;若第一个候选存储单元中存储有目标数量个符合检索条件的候选数据,则将目标数量个符合检索条件的候选数据确定为待显示数据;若第一个候选存储单元中没有存储目标数量个符合检索条件的候选数据,则确定第一个候选存储单元中存储符合检索条件的候选数据的已有数量,使用目标数量与已有数量之差更新目标数量,从排序结果中去除第一个候选存储单元,得到更新后的排序结果,并继续执行在排序结果的第一个候选存储单元中进行检索,直到第一个候选存储单元中存储有目标数量个符合检索条件的候选数据为止。
在一些可实现方式中,检索模块1404,具体用于:确定第一个候选存储单元的时间划分间隔;根据时间划分间隔,对第一个候选存储单元中候选数据的采集时间进行划分,得到多个时间组;确定第一个候选存储单元中多个时间组各自对应的子存储单元;从多个子存储单元中,确定存储有采集时间为最接近目标检索时间的候选数据的第一子存储单元;在第一子存储单元,以及多个子存储单元中对应时间晚于或者早于第一子存储单元的第二子存储单元中进行检索。
在一些可实现方式中,检索模块1404,具体用于:确定去除排序结果中第一个候选存储单元的去除次数;确定采集多个候选数据的采集速率;根据去除次数和采集速率,确定时间划分间隔。
在一些可实现方式中,检索模块1404,具体用于:根据采集速率,计算基础时间划分间隔;判断去除次数是否大于次数阈值;若去除次数小于次数阈值,则将基础时间划分间隔确定为时间划分间隔;若去除次数大于或者等于次数阈值,则根据基础时间划分间隔和去除次数计算更新时间划分间隔,并将更新时间划分间隔确定为时间划分间隔。
在一些可实现方式中,检索模块1404,具体用于:计算采集速率的双曲余弦值;根据双曲余弦值确定基础时间划分间隔。
在一些可实现方式中,检索模块1404,具体用于:确定最小时间划分间隔;将最小时间划分间隔与双曲余弦值中的最大值,确定为基础时间划分间隔。
在一些可实现方式中,检索模块1404,具体用于:确定目标多项式;将去除次数输入至目标多项式中,得到时间增益;计算时间增益与基础时间划分间隔的乘积,得到更新时间划分间隔。
在一些可实现方式中,存储模块1401,具体用于:按照多个采集时间的时间顺序,将多个候选数据连续存储至多个存储单元;确定模块1403,具体用于:确定由多个采集时间中的最早采集时间与最晚采集时间组成的第一时间区间,确定由目标检索时间与,最晚采集时间或最早采集时间组成的第二时间区间;确定第一时间区间与第二时间区间的时间交集;将多个存储单元中,存储有采集时间属于时间交集的候选数据的存储单元确定为至少一个候选存储单元。
在一些可实现方式中,多个存储单元分别存储一个采集周期的候选数据;确定模块1403,具体用于:根据采集周期,和多个存储单元各自存储的候选数据的采集时间,确定多个存储单元各自的周期标识,根据采集周期和时间交集,确定时间交集的目标周期标识;将多个存储单元各自的周期标识与目标周期标识进行对比,将周期标识为目标周期标识的存储单元确定为至少一个候选存储单元。
在一些可实现方式中,装置1400,还包括:排序模块1405,用于:按照多个采集时间的时间顺序对多个候选数据进行排序,确定多个候选数据各自的序号,多个序号不重复;检索模块1404,具体用于对至少一个候选存储单元中序号小于或者大于目标序号的候选数据进行检索,得到待显示数据。
在一些可实现方式中,多个存储单元为同一数据库中连续的存储单元。
应理解的是,装置实施例与方法实施例可以相互对应,类似的描述可以参照方法实施例。为避免重复,此处不再赘述。具体地,图14所示的装置1400可以执行上述方法实施例,并且装置1400中的各个模块的前述和其它操作和/或功能分别为了实现上述方法中的相应流程,为了简洁,在此不再赘述。
上文中结合附图从功能模块的角度描述了本申请实施例的装置1400。应理解,该功能模块可以通过硬件形式实现,也可以通过软件形式的指令实现,还可以通过硬件和软件模块组合实现。具体地,本申请实施例中的方法实施例的各步骤可以通过处理器中的硬件的集成逻辑电路和/或软件形式的指令完成,结合本申请实施例公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。可选地,软件模块可以位于随机存储器,闪存、只读存储器、可编程只读存储器、电可擦写可编程存储器、寄存器等本领域的成熟的存储介质中。该存储介质位于存储器,处理器读取存储器中的信息,结合其硬件完成上述方法实施例中的步骤。
图15是本申请实施例提供的一种电子设备1500的示意性框图。
如图15所示,该电子设备1500可包括:
存储器1510和处理器1520,该存储器1510用于存储计算机程序,并将该程序代码传输给该处理器1520。换言之,该处理器1520可以从存储器1510中调用并运行计算机程序,以实现本申请实施例中的方法。
例如,该处理器1520可用于根据该计算机程序中的指令执行上述方法实施例。
在本申请的一些实施例中,该处理器1520可以包括但不限于:
通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(FieldProgrammable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等等。
在本申请的一些实施例中,该存储器1510包括但不限于:
易失性存储器和/或非易失性存储器。其中,非易失性存储器可以是只读存储器(Read-Only Memory,ROM)、可编程只读存储器(Programmable ROM,PROM)、可擦除可编程只读存储器(Erasable PROM,EPROM)、电可擦除可编程只读存储器(Electrically EPROM,EEPROM)或闪存。易失性存储器可以是随机存取存储器(Random Access Memory,RAM),其用作外部高速缓存。通过示例性但不是限制性说明,许多形式的RAM可用,例如静态随机存取存储器(Static RAM,SRAM)、动态随机存取存储器(Dynamic RAM,DRAM)、同步动态随机存取存储器(Synchronous DRAM,SDRAM)、双倍数据速率同步动态随机存取存储器(Double DataRate SDRAM,DDR SDRAM)、增强型同步动态随机存取存储器(Enhanced SDRAM,ESDRAM)、同步连接动态随机存取存储器(synch link DRAM,SLDRAM)和直接内存总线随机存取存储器(Direct Rambus RAM,DR RAM)。
在本申请的一些实施例中,该计算机程序可以被分割成一个或多个模块,该一个或者多个模块被存储在该存储器1510中,并由该处理器1520执行,以完成本申请提供的方法。该一个或多个模块可以是能够完成特定功能的一系列计算机程序指令段,该指令段用于描述该计算机程序在该电子设备中的执行过程。
如图15所示,该电子设备还可包括:
收发器1530,该收发器1530可连接至该处理器1520或存储器1510。
其中,处理器1520可以控制该收发器1530与其他设备进行通信,具体地,可以向其他设备发送信息或数据,或接收其他设备发送的信息或数据。收发器1530可以包括发射机和接收机。收发器1530还可以进一步包括天线,天线的数量可以为一个或多个。
应当理解,该电子设备中的各个组件通过总线系统相连,其中,总线系统除包括数据总线之外,还包括电源总线、控制总线和状态信号总线。
本申请还提供了一种计算机存储介质,其上存储有计算机程序,该计算机程序被计算机执行时使得该计算机能够执行上述方法实施例的方法。或者说,本申请实施例还提供一种包含指令的计算机程序产品,该指令被计算机执行时使得计算机执行上述方法实施例的方法。
当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。该计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行该计算机程序指令时,可使计算机全部或部分地执行本申请实施例中各方法中的相应流程、产生本申请实施例中各方法可实现的功能。该计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,该计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(DigitalSubscriber Line,DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。该计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。该可用介质可以是磁性介质(例如,软盘、硬盘、磁带)、光介质(例如,数字视频光盘(Digital VideoDisc,DVD))、或者半导体介质(例如,固态硬盘(Solid State Disk,SSD))等。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的模块及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,该模块的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个模块或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或模块的间接耦合或通信连接,可以是电性,机械或其它的形式。
作为分离部件说明的模块可以是或者也可以不是物理上分开的,作为模块显示的部件可以是或者也可以不是物理模块,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。例如,在本申请各个实施例中的各功能模块可以集成在一个处理模块中,也可以是各个模块单独物理存在,也可以两个或两个以上模块集成在一个模块中。
以上仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以该权利要求的保护范围为准。

Claims (12)

1.一种数据检索方法,其特征在于,包括:
根据多个候选数据的采集时间,将所述多个候选数据存储至多个存储单元;
获取分页检索请求,所述分页检索请求包括目标检索时间,所述分页检索请求用于请求获取待显示数据;
响应于所述分页检索请求,根据所述目标检索时间和多个所述采集时间,确定所述多个存储单元中的至少一个候选存储单元;
在所述至少一个候选存储单元中进行数据检索,得到所述待显示数据。
2.根据权利要求1所述的方法,其特征在于,所述分页检索请求还包括目标数量;所述在所述至少一个候选存储单元中进行数据检索,得到所述待显示数据,包括:
对所述至少一个候选存储单元进行排序,得到排序结果;
在所述排序结果的第一个候选存储单元中进行检索;
判断所述第一个候选存储单元中是否存储有所述目标数量个符合检索条件的候选数据;
若所述第一个候选存储单元中存储有所述目标数量个符合检索条件的候选数据,则将所述目标数量个符合检索条件的候选数据确定为所述待显示数据;
若所述第一个候选存储单元中没有存储所述目标数量个符合检索条件的候选数据,则确定所述第一个候选存储单元中存储符合所述检索条件的候选数据的已有数量,使用所述目标数量与所述已有数量之差更新所述目标数量,从所述排序结果中去除所述第一个候选存储单元,得到更新后的排序结果,并继续执行所述在所述排序结果的第一个候选存储单元中进行检索,直到所述第一个候选存储单元中存储有所述目标数量个符合检索条件的候选数据为止。
3.根据权利要求2所述的方法,其特征在于,所述在所述排序结果的第一个候选存储单元中进行检索,包括:
确定所述第一个候选存储单元的时间划分间隔;
根据所述时间划分间隔,对所述第一个候选存储单元中候选数据的采集时间进行划分,得到多个时间组;
确定所述第一个候选存储单元中所述多个时间组各自对应的子存储单元;
从多个所述子存储单元中,确定存储有采集时间为最接近所述目标检索时间的候选数据的第一子存储单元;
在所述第一子存储单元,以及多个所述子存储单元中对应时间晚于或者早于所述第一子存储单元的第二子存储单元中进行检索。
4.根据权利要求3所述的方法,其特征在于,所述确定所述第一个候选存储单元的时间划分间隔,包括:
确定去除所述排序结果中第一个候选存储单元的去除次数;
确定采集所述多个候选数据的采集速率;
根据所述去除次数和所述采集速率,确定所述时间划分间隔。
5.根据权利要求4所述的方法,其特征在于,所述根据所述去除次数和所述采集速率,确定所述时间划分间隔,包括:
根据所述采集速率,计算基础时间划分间隔;
判断所述去除次数是否大于次数阈值;
若所述去除次数小于所述次数阈值,则将所述基础时间划分间隔确定为所述时间划分间隔;
若所述去除次数大于或者等于所述次数阈值,则根据所述基础时间划分间隔和所述去除次数计算更新时间划分间隔,并将所述更新时间划分间隔确定为所述时间划分间隔。
6.根据权利要求5所述的方法,其特征在于,所述根据所述采集速率,计算基础时间划分间隔,包括:
计算所述采集速率的双曲余弦值;
确定最小时间划分间隔;
将所述最小时间划分间隔与所述双曲余弦值中的最大值,确定为所述基础时间划分间隔。
7.根据权利要求5所述的方法,其特征在于,所述根据所述基础时间划分间隔和所述去除次数计算更新时间划分间隔,包括:
确定目标多项式;
将所述去除次数输入至所述目标多项式中,得到时间增益;
计算所述时间增益与所述基础时间划分间隔的乘积,得到所述更新时间划分间隔。
8.根据权利要求1-7任一项所述的方法,其特征在于,所述根据多个候选数据的采集时间,将所述多个候选数据存储至多个存储单元,包括:
按照多个所述采集时间的时间顺序,将所述多个候选数据连续存储至多个存储单元;
所述根据所述目标检索时间和多个所述采集时间,确定所述多个存储单元中的至少一个候选存储单元,包括:
确定由多个所述采集时间中的最早采集时间与最晚采集时间组成的第一时间区间,确定由所述目标检索时间与,所述最晚采集时间或者所述最早采集时间组成的第二时间区间;
确定所述第一时间区间与所述第二时间区间的时间交集;
将所述多个存储单元中,存储有采集时间属于所述时间交集的候选数据的存储单元确定为所述至少一个候选存储单元。
9.根据权利要求8所述的方法,其特征在于,所述多个存储单元分别存储一个采集周期的候选数据;所述将所述多个存储单元中,存储有采集时间属于所述时间交集的候选数据的存储单元确定为所述至少一个候选存储单元,包括:
根据所述采集周期,和所述多个存储单元各自存储的候选数据的采集时间,确定所述多个存储单元各自的周期标识,根据所述采集周期和所述时间交集,确定所述时间交集的目标周期标识;
将所述多个存储单元各自的周期标识与所述目标周期标识进行对比,将周期标识为所述目标周期标识的存储单元确定为所述至少一个候选存储单元。
10.一种数据检索装置,其特征在于,包括:
存储模块,用于根据多个候选数据的采集时间,将所述多个候选数据存储至多个存储单元;
获取模块,用于获取分页检索请求,所述分页检索请求包括目标检索时间,所述分页检索请求用于请求获取待显示数据;
确定模块,用于响应于所述分页检索请求,根据所述目标检索时间和多个所述采集时间,确定所述多个存储单元中的至少一个候选存储单元;
检索模块,用于在所述至少一个候选存储单元中进行数据检索,得到所述待显示数据。
11.一种电子设备,其特征在于,包括:
处理器和存储器,所述存储器用于存储计算机程序,所述处理器用于调用并运行所述存储器中存储的计算机程序,以执行权利要求1-9中任一项所述的方法。
12.一种计算机可读存储介质,其特征在于,用于存储计算机程序,所述计算机程序使得计算机执行如权利要求1-9中任一项所述的方法。
CN202311778596.3A 2023-12-21 2023-12-21 数据检索方法、装置、设备及存储介质 Pending CN117520373A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202311778596.3A CN117520373A (zh) 2023-12-21 2023-12-21 数据检索方法、装置、设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202311778596.3A CN117520373A (zh) 2023-12-21 2023-12-21 数据检索方法、装置、设备及存储介质

Publications (1)

Publication Number Publication Date
CN117520373A true CN117520373A (zh) 2024-02-06

Family

ID=89762862

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202311778596.3A Pending CN117520373A (zh) 2023-12-21 2023-12-21 数据检索方法、装置、设备及存储介质

Country Status (1)

Country Link
CN (1) CN117520373A (zh)

Similar Documents

Publication Publication Date Title
US11580168B2 (en) Method and system for providing context based query suggestions
US8417683B2 (en) System and method for presenting geolocated relevance-based content
CN107885873B (zh) 用于输出信息的方法和装置
KR101847360B1 (ko) 위치 기반 서비스들을 구현하는 방법, 장치 및 시스템
PH12014501098B1 (en) Method and server for searching for nearby user in social networking services
WO2014169672A1 (en) Method, apparatus and system for pushing micro-blogs
CN110674247A (zh) 弹幕信息的拦截方法、装置、存储介质及设备
US20150234883A1 (en) Method and system for retrieving real-time information
CN106874402A (zh) 搜索方法和装置
CN110704677A (zh) 一种节目推荐方法、装置、可读存储介质及终端设备
CN108154024B (zh) 一种数据检索方法、装置及电子设备
WO2013182736A1 (en) Determination of context-aware user preferences
CN112463859A (zh) 基于大数据和业务分析的用户数据处理方法及大数据平台
CN110909266A (zh) 深度分页的方法、装置及服务器
CN111125158B (zh) 数据表处理方法、装置、介质及电子设备
CN117520373A (zh) 数据检索方法、装置、设备及存储介质
CN110334073A (zh) 一种元数据预取方法、装置、终端、服务器及存储介质
CN115964395A (zh) 一种数据读取方法、装置及电子设备
CN113868533A (zh) 应用搜索方法、装置、电子设备及存储介质
CN114648010A (zh) 数据表标准化方法、装置、设备及计算机存储介质
CN113868373A (zh) 一种词云生成方法、装置、电子设备及存储介质
US9071573B2 (en) Method and system for providing article information
CN106709353B (zh) 搜索引擎的安全性检测方法及装置
CN110866144B (zh) 歌曲检索方法及装置
CN112445833B (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