CN115438032A - 一种基于云计算的数据检索方法、装置及系统 - Google Patents
一种基于云计算的数据检索方法、装置及系统 Download PDFInfo
- Publication number
- CN115438032A CN115438032A CN202211013674.6A CN202211013674A CN115438032A CN 115438032 A CN115438032 A CN 115438032A CN 202211013674 A CN202211013674 A CN 202211013674A CN 115438032 A CN115438032 A CN 115438032A
- Authority
- CN
- China
- Prior art keywords
- data
- retrieval
- level cache
- request field
- request
- 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
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/21—Design, administration or maintenance of databases
- G06F16/215—Improving data quality; Data cleansing, e.g. de-duplication, removing invalid entries or correcting typographical errors
-
- 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/22—Indexing; Data structures therefor; Storage structures
-
- 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
- G06F16/24534—Query rewriting; Transformation
- G06F16/24539—Query rewriting; Transformation using cached or materialised query results
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Databases & Information Systems (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Quality & Reliability (AREA)
- Software Systems (AREA)
- Computational Linguistics (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种基于云计算的数据检索方法、装置及系统,包括:获取检索请求;其中,检索请求包括第一请求字段;根据第一请求字段,生成满足检索条件的第二请求字段;其中,第一请求字段与第二请求字段不相同;检索条件是基于云数据库中数据的字段生成的,表示云数据库中允许索引数据的字段;根据第二请求字段从云数据库中检索数据,得到第一检索结果。因为第二请求字段满足检索条件,因此根据第二请求字段从云数据库中检索数据可以保证检索数据的准确性。且不需要在各检索引擎设置检索服务,避免业务逻辑开发,降低业务逻辑开发、维护成本。
Description
技术领域
本发明涉及数据处理技术领域,尤其涉及一种基于云计算的数据检索方法、装置及系统。
背景技术
随着网络信息资源的激增,资源种类的丰富,需要存储的数据越来越多。在云计算的概念提出之后,线下存储的数据逐渐转移至线上存储。也就是将数据存储至云数据库。
为了防止用户在检索数据时出现数据孤岛,需要从各云数据库中进行数据检索,进而实现数据整合。目前,从各云数据库从进行数据检索方法一般是将检索请求直接发送至各检索引擎;其中,各检索引擎对接不同的云数据库,且各检索引擎加载有统一化的检索服务。用户在进行数据检索时,在各检索引擎中调用统一化的检索服务从各云数据库检索出数据结果,然后将数据结果进行整合。
然而,因为各企业对数据的管理方式不同,因此对应的各云数据库的数据格式也存在差异,在检索数据时所使用的检索条件也有所差异。若将各云数据源的数据检索方式统一化,则检索数据时所使用的检索条件一致,会导致检索数据时出现错误。且加载统一化的检索服务存在着业务逻辑开发的问题,即业务逻辑开发难度大、维护成本高等问题。
发明内容
本发明实施例提供一种基于云计算的数据检索方法、装置及系统,用于自适应的从各云数据库检索出数据结果,提升检索数据的准确性,且避免业务逻辑再开发,降低业务逻辑开发难度和维护成本。
第一方面,本发明实施例提供一种基于云计算的数据检索方法,包括:
获取检索请求;所述检索请求包括第一请求字段;
根据所述第一请求字段,生成满足检索条件的第二请求字段;所述第一请求字段与所述第二请求字段不相同;所述检索条件是基于云数据库中数据的字段生成的,表示所述云数据库中允许索引数据的字段;
根据所述第二请求字段从云数据库中检索数据,得到第一检索结果。
上述技术方案中,基于云计算的数据检索方法应用于数据检索系统,该系统包括调度服务和多个检索引擎;其中,多个检索引擎的检索条件不相同;针对任一检索引擎,检索引擎的检索条件是基于与检索引擎对接的云数据库中数据的字段生成的,表示云数据库中允许索引数据的字段。调度服务用于获取用户发送的检索请求,并在获取检索请求之后,将检索请求发送至各检索引擎,由各检索引擎从对应的云数据库中检索数据。
针对任一检索引擎,该检索引擎预设有检索条件。该检索引擎会根据对应的检索条件,基于第一请求字段生成第二请求字段,第二请求字段满足检索条件,进而根据第二请求字段在云数据库中检索数据时,保证检索数据的准确性。且不需要在各检索引擎设置检索服务,避免业务逻辑的再开发,降低业务逻辑开发难度和维护成本。
可选的,得到第一检索结果之后,还包括:
根据云原生流量转移记录,查询出所述第一检索结果中的同质数据;
将所述第一检索结果中的同质数据去重后,将去重后的第一检索结果缓存至一级缓存空间,得到一级缓存数据;所述一级缓存空间包括第一条件序列表;所述第一条件序列表中记录有第一请求字段与一级索引的映射关系;所述一级索引用于索引所述一级缓存数据。
上述技术方案中,通过对同质数据的去重,避免检索结果中存在相同的数据,提升数据检索的准确性。
可选的,将去重后的第一检索结果缓存至一级缓存空间,得到一级缓存数据,包括:
计算缓存所述一级缓存数据的容量;
对所述第一请求字段中的各字段进行排序和分组;
根据所述各字段的排序和分组对去重后的第一检索结果进行排序;
基于缓存所述一级缓存数据的容量,将排序后的第一检索结果缓存至一级缓存空间。
可选的,计算缓存所述一级缓存数据的容量,包括:
查询所述一级缓存空间的容量和所述第一检索结果的容量;
根据所述一级缓存空间的容量和所述第一检索结果的容量计算缓存所述一级缓存数据的容量;所述一级缓存数据的容量与所述一级缓存空间的容量成正比;所述一级缓存数据的容量与所述第一检索结果的容量成反比。
上述技术方案中,实时的、自适应的调整一级缓存数据的容量,避免计算机资源的浪费,提高数据检索效率。
可选的,得到一级缓存数据之后,还包括:
根据所述第一请求字段从所述一级缓存数据中检索数据,得到第二检索结果;
将所述第二检索结果缓存至二级缓存空间,得到二级缓存数据;所述二级缓存空间包括第二条件序列表;所述第二条件序列表中记录有第一请求字段与二级索引的映射关系;所述二级索引用于索引所述二级缓存数据;
反馈所述二级缓存数据。
可选的,所述方法还包括:
接收针对一级缓存数据的淘汰指令;所述淘汰指令是所述一级缓存数据发生修改后发送的;
将所述淘汰指令对应的第二缓存数据从二级缓存空间删除;
将预设周期内未命中的第一缓存数据从一级缓存空间删除。
上述技术方案中,实时的调整二级缓存数据,保证一级缓存数据和二级缓存数据的一致性。通过将预设周期内未命中的第一缓存数据从一级缓存空间删除,来避免计算机资源的浪费。
第二方面,本发明实施例提供一种基于云计算的数据检索装置,包括:
获取模块,用于获取检索请求;所述检索请求包括第一请求字段;
处理模块,用于根据所述第一请求字段,生成满足检索条件的第二请求字段;所述第一请求字段与所述第二请求字段不相同;所述检索条件是基于云数据库中数据的字段生成的,表示所述云数据库中允许索引数据的字段;
根据所述第二请求字段从云数据库中检索数据,得到第一检索结果。
第三方面,本发明实施例提供一种基于云计算的数据检索系统,调度服务和多个检索引擎;所述多个检索引擎的检索条件不相同;针对任一检索引擎,所述检索引擎的所述检索条件是基于与所述检索引擎对接的云数据库中数据的字段生成的,表示所述云数据库中允许索引数据的字段;
所述调度服务用于获取检索请求,将所述检索请求发送至检索引擎;所述检索请求包括第一请求字段;
针对任一检索引擎,所述检索引擎用于根据所述第一请求字段,生成满足所述检索引擎的检索条件的第二请求字段;所述第一请求字段与所述第二请求字段不相同;
所述检索引擎根据所述第二请求字段从云数据库中检索数据,得到第一检索结果。
第四方面,本发明实施例还提供一种计算机设备,包括:
存储器,用于存储程序指令;
处理器,用于调用所述存储器中存储的程序指令,按照获得的程序执行上述基于云计算的数据检索方法。
第五方面,本发明实施例还提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机可执行指令,所述计算机可执行指令用于使计算机执行上述基于云计算的数据检索方法。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简要介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域的普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的一种基于云计算的数据检索系统的架构示意图;
图2为本发明实施例提供的一种基于云计算的数据检索方法的流程示意图;
图3为本发明实施例提供的一种检索引擎的结构示意图;
图4为本发明实施例提供的一种基于云计算的数据检索装置的结构示意图。
具体实施方式
为了使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明作进一步地详细描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。
图1示例性的示出了本发明实施例所适用的一种基于云计算的数据检索系统的架构示意图,该系统架构包括调度服务110和检索引擎120。
其中,调度服务110,用于获取检索请求,将所述检索请求发送至检索引擎120;其中,检索请求包括第一请求字段。如调度服务通过API(Application ProgrammingInterface,应用程序编程接口)获取用户发送检索请求。请求字段表示需要进行检索的字段,如身高、体重、订单号等字段。请求字段可以包括多个字段,如包括a、b、c三个字段。
检索引擎120包括多个检索引擎;如包括检索引擎j1、检索引擎j2、……、检索引擎jn;其中,n表示检索引擎的数量。检索引擎与云数据库对接,用于从云数据库中检索数据。对应的,云数据库与检索引擎是相对应的,如云数据库s1与检索引擎j1对接;但是云数据库s1可以包括多个数据库,在此不进行限定。
针对任一检索引擎,设置有检索条件。因此该检索引擎得到第一请求字段之后,先判断第一请求字段是否满足检索条件,若不满足,则基于第一请求字段,生成满足检索条件的第二请求字段。例如,第一请求字段a、b、c三个字段;其中检索引擎对接的云数据库中的数据不具备c字段,因此表示c字段不满足检索引擎的检索条件。然后将基于第一请求字段,生成满足检索条件的第二请求字段;第二请求字段仅包括a、b两个字段。
检索引擎在生成第二请求字段之后,根据第二请求字段从云数据库中检索数据,得到第一检索结果。
检索引擎用于在检索引擎检索出第一检索结果之后,对各检索引擎检索出的第一检索结果进行整合,得到缓存数据。缓存数据用于供用户进行二次检索。
需要说明的是,上述图1所示的结构仅是一种示例,本发明实施例对此不做限定。
基于上述描述,图2示例性的示出了本发明实施例提供的一种基于云计算的数据检索方法的流程示意图,该流程可由基于云计算的数据检索装置执行。
如图2所示,该流程具体包括:
步骤210,获取检索请求。
其中,检索请求包括第一请求字段。检索请求是用户发送的,由调度服务接收检索请求,并将检索请求发送至各检索引擎。例如,用户通过UI(User Interface,用户界面)或CLI(command-line interface,指命令行界面)向调度服务发送检索请求。其中,检索请求的第一请求字段可以包括多个字段;如包括a、b、c、d四个字段,分别为省地区字段、市地区字段、县地区字段和镇地区字段。检索请求表示检索a省份b市c县d镇的人口数量。
步骤220,根据所述第一请求字段,生成满足检索条件的第二请求字段。
其中,第一请求字段与第二请求字段不相同;检索条件是基于云数据库中数据的字段生成的,表示云数据库中允许索引数据的字段。例如,云数据库s1以“key-value”形式存储数据,主键“key”包括a、b、c三个字段。则表示云数据库s1允许索引数据的字段为a、b、c三个字段。换句话说,检索引擎j1的检索条件是:请求字段在a、b、c三个字段的范围内。
在一些可实施的方式中,各检索引擎的检索条件不同,且第一请求字段不满足各检索引擎的检索条件。例如,检索引擎j1对接云数据库s1;云数据库s1的数据记录有a省份b市c县的人口数量,不包括c县下的各镇地区的人口数量。
也就是说,检索引擎j1的检索条件只能查询a、b、c三个字段。因此,检索引擎j1基于第一请求字段,根据检索条件生成满足所述检索引擎的检索条件的第二请求字段,即第二请求字段包括a、b、c三个字段。
在一些可实施的方式中,第一请求字段满足各检索引擎的检索条件,则直接将第一请求字段作为第二请求字段。
步骤230,根据所述第二请求字段从云数据库中检索数据,得到第一检索结果。
图3为本申请示例性示出的一种检索引擎的结构示意图,如图3所示,检索引擎包括检索派发模块、检索管理模块、缓存管理模块、缓存检索模块;其中,检索派发模块用于基于第一请求字段,根据检索条件生成满足所述检索引擎的检索条件的第二请求字段;检索管理模块用于根据第二请求字段从云数据库中检索数据,并将第一检索结果加入一级缓存空间;缓存检索模块用于根据第一请求字段从一级缓存数据中检索数据,将第二检索结果缓存至二级缓存空间;缓存管理模块用于反馈二级缓存数据,以及实时调整第一缓存数据和第二缓存数据。
具体的,检索引擎将第一检索结果缓存至一级缓存空间,得到一级缓存数据;其中,一级缓存空间包括第一条件序列表;第一条件序列表中记录有第一请求字段与一级索引的映射关系;一级索引用于索引一级缓存数据。
如下述表1所示的第一条件序列表:
表1
第一请求字段 | 第一索引 |
cond_1 | index_1 |
cond_2 | index_2 |
…… | …… |
cond_m | index_m |
一级索引索引一级缓存数据如下述表2所示:
表2
第一索引 | 一级缓存数据 |
index_1 | data_1 |
index_2 | data_2 |
…… | …… |
index_m | data_m |
其中,第一请求字段以要素字段为基础组织形成的有序字段序列。其中条件要素的核心属性即要素字段的唯一ID,类型,和支持的运算符。组装过程以要素字段唯一ID的取值大小排序后拼接各条件字段。每一个字段与第一索引的映射关系存入一级缓存空间中。
在一些可实施的方式中,第一请求字段包括多个字段;检索引擎还用于对多个字段进行排序和分组;根据多个字段的排序和分组对第一检索结果进行排序。
也就是说,检索引擎还用于对第一请求字段进行条件清洗。其中,条件清洗指的是将复杂的各类形式的自然语言检索字段转换为检索引擎的标准检索字段;例如,自然语言检索字段为“体型消瘦”,转换为检索引擎的标准检索字段为“重量、BMI指数”等字段。
清洗过程包括对字段编码、字段排序、字段分组;其中,条件编码是指通过将用户输入的请求字段与标准字段中要素字段唯一ID匹配实现,每一个条件字段将匹配到唯一的要素字段。
字段排序是指依照要素字段的定义,按要素字段ID的数值顺序从小到大排序。
字段分组是指将标准的检索字段按照业务域规划纳入不同的内存组,以实现对一级缓存数据分组。
在一些实施例中,所述检索引擎还用于查询一级缓存空间的容量和第一检索结果的容量;根据一级缓存空间的容量和第一检索结果的容量计算缓存一级缓存数据的容量;一级缓存数据的容量与一级缓存空间的容量成正比;一级缓存数据的容量与第一检索结果的容量成反比。
通过上述技术方案,自适应的实现对缓存膨胀率指数控制,实现对缓存空间的管理。在一些实施例中,可以通过将暂时不使用的一级缓存数据放入高速磁盘阵列作为临时交换空间,具体在此不做限定。
例如,将检索条件中对结果集的限定结合缓存余量放大5-10倍后将检索指令派发给检索引擎。具体的放大比例采用余量占总容量的比例,线性放大,最大为10倍或其他倍数,在此不作具体限定。
在查询出一级缓存数据之后,检索引擎会根据第一请求字段从一级缓存数据中检索数据,得到第二检索结果;将第二检索结果缓存至二级缓存空间,得到二级缓存数据;其中,二级缓存空间包括第二条件序列表;第二条件序列表中记录有第一请求字段与二级索引的映射关系;二级索引用于索引二级缓存数据。最后反馈二级缓存数据,供用户查看。
如下述表3所示的第二条件序列表:
表3
二级索引索引二级缓存数据如下述表2所示:
表4
第一索引 | 一级缓存数据 |
rsindex_1 | r_data_1 |
rsindex_2 | r_data_2 |
…… | …… |
rsindex_m | r_data_m |
其中,主键与一级缓存数据是标准的字段序列,与一级缓存的区别是其对应的值则是第一检索结果的索引值。索引用于在第一检索结果中查询真实的数据。
在本发明实施例中,二级缓存数据支持两类检索,分别是:常规哈希检索和模糊匹配、排序、分组的检索。对于常规哈希检索直接在哈希表通过两次计算获取。对于包含模糊匹配、排序、分组的检索,通过在检索引擎中扩展特殊检索实现逻辑的方式对一级缓存数据按相应的处理要求处理后获取。
在一些实施例中,检索引擎还用于接收针对一级缓存数据的淘汰指令;其中,淘汰指令是一级缓存数据发生修改后发送的;
检索引擎将淘汰指令对应的第二缓存数据从二级缓存空间删除。
也就是说,针对二级缓存数据,本发明实施例提供了双向反馈的机制;双向反馈是指二级缓存数据一方面接收一级缓存数据关于缓存数据淘汰的要求,一方面将自身命中率情况反馈给一级缓存数据。以此保证一级缓存数据和二级缓存数据的一致性。其中,命中率表示用户查看二级缓存数据的命中率。
由于一级缓存数据在命中率响应上相比二级缓存数据存在逻辑上的延迟。因此在二级缓存数据未命中数据时主动探测一级缓存的数据可用性,提升的查询数据的准确性。例如,一级缓存数据中某一数据参数由“1”变为了“2”,因为二级缓存数据是从一级缓存数据中检索得到的,假设该数据为二级缓存数据,此时二级缓存数据与一级缓存数据不再一致。因此,为了保证数据一致性,将对二级缓存数据做强制失效处理。
另外,二级缓存数据的失效处理粒度可通过装置设定,可区分表级、记录级、字段及的更新,当满足条件的数据发生更新时,淘汰对应的二级缓存数据。
在一些实施例中,将预设周期内未命中的第一缓存数据从一级缓存空间删除。也就是释放一级缓存空间,从而减少计算资源的消耗。
例如,在3s(预设周期内)用户并未查看某一部分的第一缓存数据,则将该部分的第一缓存数据从一级缓存空间删除。
在一些可实施的方式中,检索引擎还根据云原生流量转移记录,查询出多个检索引擎的第一检索结果中的同质数据;然后将多个检索引擎的第一检索结果中的同质数据去重后缓存至一级缓存空间。
其中,同质数据表示完全相同的数据。因为云环境一体化架构带来了同质数据问题,最典型的灾备系统数据和主中心数据是完全相同的。此外,不同的下游应用节点(非源头节点)可能存储了本质相同的数据内容。具体的,将灾备节点流量全部转移到主中心节点。下游应用节点流量全部转移到上游应用节点(源头节点)中。
因此,可以通过流量转移记录查询出来自上游应用节点和下游节点的同质数据,将下游节点的同质数据删除,以此实现去重的效果。
基于相同的技术构思,图4示例性的示出了本发明实施例提供的一种基于云计算的数据检索装置的结构示意图,该装置可以执行基于云计算的数据检索方法的流程。
如图4所示,该装置具体包括:
获取模块410,用于获取检索请求;所述检索请求包括第一请求字段;
处理模块420,用于根据所述第一请求字段,生成满足检索条件的第二请求字段;所述第一请求字段与所述第二请求字段不相同;所述检索条件是基于云数据库中数据的字段生成的,表示所述云数据库中允许索引数据的字段;
根据所述第二请求字段从云数据库中检索数据,得到第一检索结果。
可选的,所述处理模块420还用于:
得到第一检索结果之后,根据云原生流量转移记录,查询出所述第一检索结果中的同质数据;
将所述第一检索结果中的同质数据去重后,将去重后的第一检索结果缓存至一级缓存空间,得到一级缓存数据;所述一级缓存空间包括第一条件序列表;所述第一条件序列表中记录有第一请求字段与一级索引的映射关系;所述一级索引用于索引所述一级缓存数据。
可选的,所述第一请求字段包括多个字段;
所述处理模块420具体用于:
计算缓存所述一级缓存数据的容量;
对所述第一请求字段中的各字段进行排序和分组;
根据所述各字段的排序和分组对去重后的第一检索结果进行排序;
基于缓存所述一级缓存数据的容量,将排序后的第一检索结果缓存至一级缓存空间。
可选的,所述处理模块420具体用于:
查询所述一级缓存空间的容量和所述第一检索结果的容量;
根据所述一级缓存空间的容量和所述第一检索结果的容量计算缓存所述一级缓存数据的容量;所述一级缓存数据的容量与所述一级缓存空间的容量成正比;所述一级缓存数据的容量与所述第一检索结果的容量成反比。
可选的,所述处理模块420还用于:
得到一级缓存数据之后,根据所述第一请求字段从所述一级缓存数据中检索数据,得到第二检索结果;
将所述第二检索结果缓存至二级缓存空间,得到二级缓存数据;所述二级缓存空间包括第二条件序列表;所述第二条件序列表中记录有第一请求字段与二级索引的映射关系;所述二级索引用于索引所述二级缓存数据;
反馈所述二级缓存数据。
可选的,所述处理模块420还用于:
接收针对所述一级缓存数据的淘汰指令;所述淘汰指令是所述一级缓存数据发生修改后发送的;
将所述淘汰指令对应的第二缓存数据从所述二级缓存空间删除;
将预设周期内未命中的第一缓存数据从一级缓存空间删除。
基于相同的技术构思,本发明实施例还提供一种计算机设备,包括:
存储器,用于存储程序指令;
处理器,用于调用所述存储器中存储的程序指令,按照获得的程序执行上述基于云计算的数据检索方法。
基于相同的技术构思,本发明实施例还提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机可执行指令,所述计算机可执行指令用于使计算机执行上述基于云计算的数据检索方法。
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请是参照根据本申请的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
显然,本领域的技术人员可以对本申请进行各种改动和变型而不脱离本申请的精神和范围。这样,倘若本申请的这些修改和变型属于本申请权利要求及其等同技术的范围之内,则本申请也意图包含这些改动和变型在内。
Claims (10)
1.一种基于云计算的数据检索方法,其特征在于,包括:
获取检索请求;所述检索请求包括第一请求字段;
根据所述第一请求字段,生成满足检索条件的第二请求字段;所述第一请求字段与所述第二请求字段不相同;所述检索条件是基于云数据库中数据的字段生成的,表示所述云数据库中允许索引数据的字段;
根据所述第二请求字段从云数据库中检索数据,得到第一检索结果。
2.如权利要求1所述的方法,其特征在于,得到第一检索结果之后,还包括:
根据云原生流量转移记录,查询出所述第一检索结果中的同质数据;
将所述第一检索结果中的同质数据去重后,将去重后的第一检索结果缓存至一级缓存空间,得到一级缓存数据;所述一级缓存空间包括第一条件序列表;所述第一条件序列表中记录有第一请求字段与一级索引的映射关系;所述一级索引用于索引所述一级缓存数据。
3.如权利要求2所述的方法,其特征在于,将去重后的第一检索结果缓存至一级缓存空间,得到一级缓存数据,包括:
计算缓存所述一级缓存数据的容量;
对所述第一请求字段中的各字段进行排序和分组;
根据所述各字段的排序和分组对去重后的第一检索结果进行排序;
基于缓存所述一级缓存数据的容量,将排序后的第一检索结果缓存至一级缓存空间。
4.如权利要求3所述的方法,其特征在于,计算缓存所述一级缓存数据的容量,包括:
查询所述一级缓存空间的容量和所述第一检索结果的容量;
根据所述一级缓存空间的容量和所述第一检索结果的容量计算缓存所述一级缓存数据的容量;所述一级缓存数据的容量与所述一级缓存空间的容量成正比;所述一级缓存数据的容量与所述第一检索结果的容量成反比。
5.如权利要求3所述的方法,其特征在于,得到一级缓存数据之后,还包括:
根据所述第一请求字段从所述一级缓存数据中检索数据,得到第二检索结果;
将所述第二检索结果缓存至二级缓存空间,得到二级缓存数据;所述二级缓存空间包括第二条件序列表;所述第二条件序列表中记录有第一请求字段与二级索引的映射关系;所述二级索引用于索引所述二级缓存数据;
反馈所述二级缓存数据。
6.如权利要求1至5任一项所述的方法,其特征在于,所述方法还包括:
接收针对一级缓存数据的淘汰指令;所述淘汰指令是所述一级缓存数据发生修改后发送的;
将所述淘汰指令对应的第二缓存数据从二级缓存空间删除;
将预设周期内未命中的第一缓存数据从一级缓存空间删除。
7.一种基于云计算的数据检索装置,其特征在于,包括:
获取模块,用于获取检索请求;所述检索请求包括第一请求字段;
处理模块,用于根据所述第一请求字段,生成满足检索条件的第二请求字段;所述第一请求字段与所述第二请求字段不相同;所述检索条件是基于云数据库中数据的字段生成的,表示所述云数据库中允许索引数据的字段;
根据所述第二请求字段从云数据库中检索数据,得到第一检索结果。
8.一种基于云计算的数据检索系统,其特征在于,包括:调度服务和多个检索引擎;所述多个检索引擎的检索条件不相同;针对任一检索引擎,所述检索引擎的所述检索条件是基于与所述检索引擎对接的云数据库中数据的字段生成的,表示所述云数据库中允许索引数据的字段;
所述调度服务用于获取检索请求,将所述检索请求发送至检索引擎;所述检索请求包括第一请求字段;
针对任一检索引擎,所述检索引擎用于根据所述第一请求字段,生成满足所述检索引擎的检索条件的第二请求字段;所述第一请求字段与所述第二请求字段不相同;
所述检索引擎根据所述第二请求字段从云数据库中检索数据,得到第一检索结果。
9.一种计算机设备,其特征在于,包括:
存储器,用于存储程序指令;
处理器,用于调用所述存储器中存储的程序指令,按照获得的程序执行权利要求1至6任一项所述的方法。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机可执行指令,所述计算机可执行指令用于使计算机执行权利要求1至6任一项所述的方法。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211013674.6A CN115438032A (zh) | 2022-08-23 | 2022-08-23 | 一种基于云计算的数据检索方法、装置及系统 |
PCT/CN2022/135924 WO2024040784A1 (zh) | 2022-08-23 | 2022-12-01 | 一种基于云计算的数据检索方法、装置及系统 |
TW112109751A TW202409853A (zh) | 2022-08-23 | 2023-03-16 | 一種基於雲計算的資料檢索方法、裝置及系統 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211013674.6A CN115438032A (zh) | 2022-08-23 | 2022-08-23 | 一种基于云计算的数据检索方法、装置及系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115438032A true CN115438032A (zh) | 2022-12-06 |
Family
ID=84244164
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211013674.6A Pending CN115438032A (zh) | 2022-08-23 | 2022-08-23 | 一种基于云计算的数据检索方法、装置及系统 |
Country Status (3)
Country | Link |
---|---|
CN (1) | CN115438032A (zh) |
TW (1) | TW202409853A (zh) |
WO (1) | WO2024040784A1 (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN118132598B (zh) * | 2024-05-07 | 2024-07-26 | 深圳九有数据库有限公司 | 基于多级缓存的数据库数据处理方法及设备 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10838964B2 (en) * | 2018-03-30 | 2020-11-17 | International Business Machines Corporation | Supporting a join operation against multiple NoSQL databases |
US10990573B2 (en) * | 2019-01-16 | 2021-04-27 | Syscom Computer Engineering Co. | Fast index creation system for cloud big data database |
CN111309760A (zh) * | 2020-02-10 | 2020-06-19 | 江苏满运软件科技有限公司 | 数据检索方法、系统、设备及存储介质 |
CN114625798B (zh) * | 2020-12-14 | 2023-03-24 | 金篆信科有限责任公司 | 数据检索方法、装置、电子设备及存储介质 |
-
2022
- 2022-08-23 CN CN202211013674.6A patent/CN115438032A/zh active Pending
- 2022-12-01 WO PCT/CN2022/135924 patent/WO2024040784A1/zh unknown
-
2023
- 2023-03-16 TW TW112109751A patent/TW202409853A/zh unknown
Also Published As
Publication number | Publication date |
---|---|
WO2024040784A1 (zh) | 2024-02-29 |
TW202409853A (zh) | 2024-03-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11816126B2 (en) | Large scale unstructured database systems | |
AU2016359060B2 (en) | Storing and retrieving data of a data cube | |
US7523130B1 (en) | Storing and retrieving objects on a computer network in a distributed database | |
US9081826B2 (en) | System and method for distributed database query engines | |
CA2841084C (en) | Managing storage of data for range-based searching | |
US20170155707A1 (en) | Multi-level data staging for low latency data access | |
CN111506621B (zh) | 一种数据统计方法及装置 | |
CN111767303A (zh) | 一种数据查询方法、装置、服务器及可读存储介质 | |
US20140229521A1 (en) | Storing and retrieving objects on a computer network in a distributed database | |
US20140019454A1 (en) | Systems and Methods for Caching Data Object Identifiers | |
CN106161193B (zh) | 一种邮件处理方法、装置和系统 | |
CN111917834A (zh) | 一种数据同步方法、装置、存储介质及计算机设备 | |
Yassien et al. | RDBMS, NoSQL, Hadoop: a performance-based empirical analysis | |
KR101955376B1 (ko) | 비공유 아키텍처 기반의 분산 스트림 처리 엔진에서 관계형 질의를 처리하는 방법, 이를 수행하기 위한 기록 매체 및 장치 | |
CN115438032A (zh) | 一种基于云计算的数据检索方法、装置及系统 | |
Agrawal et al. | Survey on Mongodb: an open-source document database | |
WO2016100737A1 (en) | Method and system to search logs that contain a massive number of entries | |
US8688695B2 (en) | Computerized searchable document repository using separate metadata and content stores and full text indexes | |
CN116450637A (zh) | 一种数据管理方法、装置、电子设备以及存储介质 | |
CN110678854B (zh) | 数据查询的方法和装置 | |
CN115455031B (zh) | 一种Doris的数据查询方法、装置、存储介质及设备 | |
JPH0822410A (ja) | 分散ディレクトリシステムを実現する情報処理装置及び方法 | |
CN117216075A (zh) | 一种快递订单的父子文档构建方法、装置及电子设备 | |
CN114328537A (zh) | 一种宽表查询设计器的构建方法 | |
CN116225822A (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 | ||
REG | Reference to a national code |
Ref country code: HK Ref legal event code: DE Ref document number: 40077130 Country of ref document: HK |