掌桥专利:专业的专利平台
掌桥专利
首页

数据检索方法、装置、电子设备和存储介质

文献发布时间:2024-04-18 19:58:30


数据检索方法、装置、电子设备和存储介质

技术领域

本发明涉及数据处理技术领域,尤其涉及一种数据检索方法、装置、电子设备和存储介质。

背景技术

大的应用系统如医保、移动、银行等行业的应用系统,为提高数据共享度等方面的考虑,业务数据以省为单位集中,数据库中存放的数据量达到PB(Petabyte-level,千亿字节级)级别,实现全量索引和索引是否高效等就成为业务支撑的重要。

如图2所示,现有的数据检索方法在数据加工过程时往往采用弹性搜索(Elasticsearch,ES)配置或三方配置,实现离线日志增量同步和数据库通知增量同步等方式,缺点是配置稳定性运维故障率高,技术上解析日志复杂和通知版本不通用等客观问题。更重要的是数据同步实效性得不到保障,在海量关系数据的日常业务支撑中存在大量的数据变化过程。

综上可知,现有将数据库中的数据全部同步到搜索服务器的检索方法由于检索数据量大,数据库更新快,导致检索效率低。

发明内容

本发明提供一种数据检索方法、装置、电子设备和存储介质,用以解决现有的检索效率低的问题。

本发明提供一种数据检索方法,包括:

获取目标数据库的第一标识信息、表的第二标识信息以及所述表的目标字段,将所述第一标识信息、所述第二标识信息以及所述目标字段映射至搜索服务器中,以建立所述目标数据库与所述搜索服务器的映射关系模型;

基于所述映射关系模型,在所述搜索服务器中查询与检索内容匹配的目标文档;

基于所述目标文档从所述目标数据库中获取检索数据。

在一个实施例中,所述将所述第一标识信息、所述第二标识信息以及所述目标字段映射至搜索服务器中,包括:

将所述第一标识信息映射到所述搜索服务器的索引;

将同一所述索引对应的所述第二标识信息映射到所述搜索服务器的一个类型;

将同一所述类型对应的所述目标字段映射到所述搜索服务器的一个所述文档。

在一个实施例中,所述基于所述映射关系模型,在所述搜索服务器中查询与检索内容匹配的目标文档,包括:

确定与所述检索内容匹配的索引;

基于所述索引,确定与所述检索内容匹配的类型;

基于所述类型,确定与所述检索内容匹配的所述目标文档。

在一个实施例中,所述基于所述映射关系模型,在所述搜索服务器中查询与检索内容匹配的目标文档,还包括:

当在所述搜索服务器中搜索不到所述目标文档时,基于所述检索内容,更新所述映射关系模型;

基于更新后的所述映射关系模型,匹配所述目标文档。

在一个实施例中,所述基于所述检索内容,更新所述映射关系模型,包括:

基于所述检索内容,确定发生变更的所述第二标识信息;

将多个所述目标数据库中发生变更的所述第二标识信息组合成一个更新数据组;

配置所述更新数据组与所述搜索服务器之间的同步逻辑;

基于所述更新数据组和所述同步逻辑,更新所述搜索服务器中的所述类型。

在一个实施例中,所述基于所述检索内容,更新所述映射关系模型,还包括:

基于所述检索内容,监控所述目标数据库的变更,并生成变更记录表;

基于所述变更记录表,更新所述搜索服务器中的文档。

在一个实施例中,所述变更记录表包括待同步点表和最后同步点表,所述基于所述变更记录表,更新所述搜索服务器中的文档,包括:

基于所述最后同步表,获取所述目标字段的最后一次变更时间;

基于所述最后一次变更时间和所述待同步点表,获取所述目标字段对应的待变更数据;

基于所述待变更数据,更新所述文档。

本发明还提供一种数据检索装置,包括:

模型确定模块,用于获取目标数据库的第一标识信息、表的第二标识信息以及所述表的目标字段,将所述第一标识信息、所述第二标识信息以及所述目标字段映射至搜索服务器中,以建立所述目标数据库与所述搜索服务器的映射关系模型;

查询模块,用于基于所述映射关系模型,在所述搜索服务器中查询与检索内容匹配的目标文档;

获取模块,用于基于所述目标文档从所述目标数据库中获取检索数据。

本发明还提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如上述任一种所述数据检索方法。

本发明还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现如上述任一种所述数据检索方法。

本发明提供的数据检索方法、装置、电子设备和存储介质,通过获取目标数据库的第一标识信息、表的第二标识信息以及所述表的目标字段,将所述第一标识信息、所述第二标识信息以及所述目标字段映射至搜索服务器中,以建立所述目标数据库与所述搜索服务器的映射关系模型;基于所述映射关系模型,在所述搜索服务器中查询与检索内容匹配的目标文档;基于所述目标文档从所述目标数据库中获取检索数据。本发明根据目标数据库的部分信息建立映射关系模型,通过映射关系模型实现检索的快速初步定位以及详细定位,提高了检索的效率。

附图说明

为了更清楚地说明本发明或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1是本发明实施例提供的数据检索方法的流程示意图;

图2是现有技术的数据检索方法的流程示意图;

图3是本发明实施例提供映射关系模型的结构示意图;

图4是本发明实施例提供的业务增量同步的流程示意图;

图5是本发明实施例提供的触发器增量同步的流程示意图;

图6是本发明实施例提供的数据检索装置的结构示意图;

图7是本发明实施例提供的电子设备的结构示意图。

具体实施方式

为使本发明的目的、技术方案和优点更加清楚,下面将结合本发明中的附图,对本发明中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

下面结合图1-图7描述本发明实施例的数据检索方法、装置、电子设备和存储介质。

具体地,本发明实施例提供了一种数据检索方法,参照图1,图1是本发明实施例提供的数据检索方法的流程示意图。

本发明实施例提供的数据检索方法,包括:

S100,获取目标数据库的第一标识信息、表的第二标识信息以及表的目标字段,将第一标识信息、第二标识信息以及目标字段映射至搜索服务器中,以建立目标数据库与搜索服务器的映射关系模型;

目标数据库为待检索的数据库,目标数据库包括一个或多个,本发明实施例的目标数据库为Oracle数据库。第一标识信息是用于识别目标数据库的关键信息。第二标识信息是用于标识目标数据库中表的信息。目标字段是指表中的列,每个目标字段代表着表中存储的数据的不同属性,目标字段定义了表的结构和每条记录所包含的数据类型,目标字段包括通用字段和分析字段。搜索服务器是专门用于执行搜索操作的服务器,本发明实施例的搜索服务器为ES服务器。映射关系模型是基于检索的业务对象构建的检索模型。如图3所示,映射关系模型兼具文档结构检索能力和目标数据库的关系结构分析能力,能实现快速的检索和详细数据的定位。

提取目标数据库中的第一标识信息、第二标识信息以及目标字段,将第一标识信息、第二标识信息以及目标字段与搜索服务器中的索引、类型、文档进行一一对应,进而构建映射关系模型。

S200,基于映射关系模型,在搜索服务器中查询与检索内容匹配的目标文档;

映射关系模型基于检索内容,对搜索服务器中的索引、类型、文档进行全量检索,找到与检索内容匹配的目标文档。

S300,基于目标文档从目标数据库中获取检索数据。

检索数据为与检索内容对应的详细数据。目标文档包括通用字段和分析字段,通用字段常用于记录和管理数据的基本信息;分析字段用于记录与数据分析、统计和报告相关的数据,以支持业务决策和洞察力的提取。

映射关系模型基于索引、类型以及文档中的通用字段进行文档结构检索,进而对检索内容进行初步定位。映射关系模型基于文档中的分析字段对目标数据库的关系结构进行分析,进而获取检索数据在目标数据库中的详细定位。基于详细定位,从目标数据库中获取检索数据,并对检索数据进行详细分析。

例如,构建“设备厂家(类型)”模型,将Oracle中的“表”与ES中的“类型”进行映射。当检索到“设备厂家”列表清单的后,继续抽取“设备厂家”对应的属性(目标文档),例如,按服务专业、生产批号、设备场景等属性。若需要对设备厂家的属性进行详细分析,则继续基于属性,从Oracle数据库中抽取属性对应的详细信息(检索数据)。

本发明实施例通过获取目标数据库的第一标识信息、表的第二标识信息以及表的目标字段,将第一标识信息、第二标识信息以及目标字段映射至搜索服务器中,以建立目标数据库与搜索服务器的映射关系模型;基于映射关系模型,在搜索服务器中查询与检索内容匹配的目标文档;基于目标文档从目标数据库中获取检索数据。本发明实施例根据目标数据库的部分信息建立映射关系模型,通过映射关系模型实现检索的快速初步定位以及详细定位,提高了检索的效率。

基于上述实施例,将第一标识信息、第二标识信息以及目标字段映射至搜索服务器中,包括:

S110,将第一标识信息映射到搜索服务器的索引;

S120,将同一索引对应的第二标识信息映射到搜索服务器的一个类型;

S130,将同一类型对应的目标字段映射到搜索服务器的一个文档。

索引是搜索服务器中数据存储和管理的最高级别的容器,可以包含多个类型或文档,每个索引都有一个唯一的名称,类似于数据库的名称。类型定义了索引中文档的结构和属性。文档是索引中的最小单位,也是搜索服务器中的基本数据单元,每个文档在索引中都有一个唯一的身份标识(ID),以便对其进行检索和更新。

如图3所示,当第一标识信息有多个时,将多个Oracle库的第一标识信息汇总到ES的索引。将同一索引下的Oracle库中表的第二标识信息汇总到ES的一个类型。将同一类型下的Oracle库中目标字段汇总到ES的一个文档中。

进一步的,当Oracle库中的表和目标字段有变更时,通过代码开发嵌入,对ES中的类型和文档进行更新,进而实现Oracle库与ES的实时关系维护。

本发明实施例通过将第一标识信息与索引映射,将第二标识信息与类型映射,将目标字段与文档映射,实现了基于少量的检索内容,实现快速的定位的效果,有利于提高检索效率。

基于上述实施例,基于映射关系模型,在搜索服务器中查询与检索内容匹配的目标文档,包括:

S210,确定与检索内容匹配的索引;

S220,基于索引,确定与检索内容匹配的类型;

S230,基于类型,确定与检索内容匹配的目标文档。

根据索引内容的分类,确定与检索内容对应的索引;根据确定的索引,查询该索引下与检索类容对应的类型;根据确定的类型,查询该类型下与检索内容匹配的目标文档。其中,确定类型和目标文档时,可根据Oracle库中表和字段的更新情况,更新ES中的类型和文档。更新方法包括业务增量同步和触发器增量同步。

本发明实施例基于检索内容确定索引,然后确定类型,最后确定目标文档,实现了基于少量的检索内容,实现快速的定位的效果,有利于提高检索效率。同时本发明实施例基于检索,实时更新ES搜索服务器,有利于提高ES搜索服务器的检索效率。

进一步的,当对搜索服务器中的类型十分熟悉时,直接根据检索内容,确定与检索内容匹配的类型,进而根据类型确定与检索内容匹配的,目标文档。

进一步的,当对搜索服务器中的文档十分熟悉时,直接根据检索内容,确定与检索内容匹配的目标文档。

本发明实施例提供了适用于将海量关系型数据进行全局检索的数据分析结果加工过程。以映射关系模型为检索载体,兼容文档结构检索能力和关系数据库的分析能力。在行业应用中将结构化数据中的一部分信息提取出来,重新组织,使其变得有一定结构的文档型数据,实现高效的检索能力。同时保留结构化数据可以为用户提供丰富的分析素材,更适应企业海量数据突破生产指标分析,加强围绕生产质量的处理分析。

基于上述实施例,基于映射关系模型,在搜索服务器中查询与检索内容匹配的目标文档,还包括:

S240,当在搜索服务器中搜索不到目标文档时,基于检索内容,更新映射关系模型;

S250,基于更新后的映射关系模型,匹配目标文档。

在初次检索过程中,当查询不到与检索内容匹配的目标文档,包括检索的目标文档不全面、目标文档分散,例如一个目标文档不能涵盖全部检索内容,多个目标文档分别属于不同的类型时;基于检索内容对映射关系模型中的类型或者文档或者索引进行更新,例如合并、新增。

对更新后的映射关系模型,进行再次次检索,直至查询到与检索内容匹配的目标文档。

例如,映射关系模型中已有的映射关系为:

(1)资源入网(库/索引)—基站(表/类型)—基站厂商(目标字段/文档);

(2)业务计费(库/索引)—基站(表/类型)—基站流量(目标字段/文档);

(3)代维巡检(库/索引)—铁塔(表/类型)—所属基站、代维信息(目标字段/文档);

业务检索为:查询A厂商的基站流量。

针对“A厂商的基站流量”定位的初始索引为“资源入网”,针对基站流量定位的初始索引为“业务计费”,针对初始索引,定位的初始类型为“基站”,针对初始类型定位的初始目标文档为“基站产商”和“基站流量”,调取数据库中关于“基站产商”和“基站流量”的检索数据。进一步的,对数据库中“基站产商”和“基站流量”对应的检索数据进行合并,针对合并的检索数据,同步变更映射关系模型中的初始类型。例如,将“基站”类型合并,同时合并“基站”类型对应的文档“基站产商”和“基站流量”。对更新后的映射关系模型进行再次检索,得到“A厂商的基站流量”对应的目标文档。

例如,当业务检索为:查询A厂商的代维信息。

针对“A厂商的代维信息”无法汇聚得到检索结果。针对“A厂商的代维信息”定位的索引只有“代维巡检”。基于索引定位的类型为“铁塔”,基于类型定位的目标文档为“所述基站”、“代维信息”,获取“所述基站”对应的检索数据,并进行基站的匹配,对匹配上的基站新增“代维信息”,进而得到“A厂商的代维信息”对应的检索数据。通过触发器监控新增数据,并将新增数据同步到变更记录表里,基于变更记录表变更映射关系模型中的文档。对更新后的映射关系模型进行再次检索,得到“A厂商的基站流量”对应的目标文档。

进一步的,对映射关系模型的变更可以发生在检索前或者检索后的任一时间段内。

本申请实施例根据检索内容更新映射关系模型,提高了映射关系模型的实用性,有利于提高检索效率。

基于上述实施例,基于检索内容,更新映射关系模型,包括:

S241,基于检索内容,确定发生变更的第二标识信息;

S242,将多个目标数据库中发生变更的第二标识信息组合成一个更新数据组;

S243,配置更新数据组与搜索服务器之间的同步逻辑;

S244,基于更新数据组和同步逻辑,更新搜索服务器中的类型。

如图4所示,业务增量同步包括:对目标数据库中的表单进行ES同步逻辑的编制,同步逻辑包括新增、修改、接口。基于检索内容,确定发生变更的第二标识信息。通过接口将多个目标数据库中发生变更的第二标识信息进行封装(封装的Java数据)、组合,得到一个更新数据组。

基于同步逻辑和更新的数据组,对搜索服务器中的类型进行接口,并对搜索服务器中的类型进行新增和修改。

本发明实施例通过对搜索服务器中的类型进行同步更新,提高了搜索服务器的实用性,有利于提高搜索服务器的检索效率。

基于上述实施例,基于检索内容,更新映射关系模型,还包括:

S245,基于检索内容,监控目标数据库的变更,并生成变更记录表;

S246,基于变更记录表,更新搜索服务器中的文档。

如图5所示,触发器增量同步包括:在目标数据库中设置触发器,基于检索内容,监控目标数据库中数据的增加、修改、删除,然后把新增、修改、删除的数据备份一条数据到变更记录表里。本发明实施例的触发器为Java定时器,通过Java定时器的定时同步方式把变更的数据同步到ES的文档。

本发明实施例基于触发器和变更记录表变更搜索服务器的文档,不会造成目标数据库和ES数据不一致情况,有详细的同步记录,可避免重复同步,也可以根据同步时间点准确的筛查需增量的数据。

基于上述实施例,变更记录表包括待同步点表和最后同步点表,基于变更记录表,更新搜索服务器中的文档,包括:

S810,基于最后同步表,获取目标字段的最后一次变更时间;

S820,基于最后一次变更时间和待同步点表,获取目标字段对应的待变更数据;

S830,基于待变更数据,更新文档。

待同步记录表是指在数据同步过程中,用于记录待同步数据的一张表。当源数据库的数据发生变化时,这些变化需要被同步到目标数据库或其他系统中,为了保证同步的准确性和可靠性,将待同步的数据记录在待同步记录表中,以便后续进行同步操作。

最后同步点表是在数据同步过程中使用的表,用于记录数据同步的进度和状态,用于存储上一次成功完成数据同步的位置或点,以便下一次同步时能够从该点开始增量同步。

读取最后同步表中,变更数据(例如新增“代维信息”)的最后同步时间。在待同步记录表中查询最后同步时间之前对应的变更数据写入的等待序列,进而得到待变更数据。在待同步记录表中抽取待变更数据,并向最后同步点表反馈待变更数据的抽取时间。基于待变更数据,更新搜索服务器对应的文档。

本发明实施例通过待同步记录表和最后同步点表更新搜索服务器对应的文档,有利于提高搜索服务器的实用性。本发明实施例业务代码侵入性低,只对触发器产生的数据结果进行抽取同步队列操作,过程中只进行同步点的对比。同时,本发明实施例技术实现简单、数据一致性强,待同步记录表是实现全量数据增量的记录,最后同步点表是对数据一致性的控制记录。

图6是本发明提供的数据检索装置的结构示意图,参照图6,本发明的实施例提供了一种数据检索装置,包括:

模型确定模块601,用于获取目标数据库的第一标识信息、表的第二标识信息以及表的目标字段,将第一标识信息、第二标识信息以及目标字段映射至搜索服务器中,以建立目标数据库与搜索服务器的映射关系模型;

查询模块602,用于基于映射关系模型,在搜索服务器中查询与检索内容匹配的目标文档;

获取模块603,用于基于目标文档从目标数据库中获取检索数据。

本发明实施例提供的数据检索装置,通过获取目标数据库的第一标识信息、表的第二标识信息以及表的目标字段,将第一标识信息、第二标识信息以及目标字段映射至搜索服务器中,以建立目标数据库与搜索服务器的映射关系模型;基于映射关系模型,在搜索服务器中查询与检索内容匹配的目标文档;基于目标文档从目标数据库中获取检索数据。本发明实施例根据目标数据库的部分信息建立映射关系模型,通过映射关系模型实现检索的快速初步定位以及详细定位,提高了检索的效率。

在一个实施例中,模型确定模块601用于:将第一标识信息映射到搜索服务器的索引;将同一索引对应的第二标识信息映射到搜索服务器的一个类型;将同一类型对应的目标字段映射到搜索服务器的一个文档。

在一个实施例中,查询模块602用于:确定与检索内容匹配的索引;基于索引,确定与检索内容匹配的类型;基于类型,确定与检索内容匹配的目标文档。

在一个实施例中,查询模块602用于:当在搜索服务器中搜索不到目标文档时,基于检索内容,更新映射关系模型;基于更新后的映射关系模型,匹配目标文档。

在一个实施例中,查询模块602用于:基于检索内容,确定发生变更的第二标识信息;将多个目标数据库中发生变更的第二标识信息组合成一个更新数据组;配置更新数据组与搜索服务器之间的同步逻辑;基于更新数据组和同步逻辑,更新搜索服务器中的类型。

在一个实施例中,查询模块602用于:基于检索内容,监控目标数据库的变更,并生成变更记录表;基于变更记录表,更新搜索服务器中的文档。

在一个实施例中,查询模块602用于:基于最后同步表,获取目标字段的最后一次变更时间;基于最后一次变更时间和待同步点表,获取目标字段对应的待变更数据;基于待变更数据,更新文档。

图7示例了一种电子设备的实体结构示意图,如图7所示,该电子设备可以包括:处理器(processor)710、通信接口(CommunicationsInterface)720、存储器(memory)730和通信总线740,其中,处理器710,通信接口720,存储器730通过通信总线740完成相互间的通信。处理器710可以调用存储器730中的逻辑指令,以执行数据检索方法,该方法包括:

获取目标数据库的第一标识信息、表的第二标识信息以及表的目标字段,将第一标识信息、第二标识信息以及目标字段映射至搜索服务器中,以建立目标数据库与搜索服务器的映射关系模型;基于映射关系模型,在搜索服务器中查询与检索内容匹配的目标文档;基于目标文档从目标数据库中获取检索数据。

此外,上述的存储器730中的逻辑指令可以通过软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-OnlyMemory)、随机存取存储器(RAM,RandomAccessMemory)、磁碟或者光盘等各种可以存储程序代码的介质。

另一方面,本发明还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现以执行上述各方法提供的数据检索方法,该方法包括:

获取目标数据库的第一标识信息、表的第二标识信息以及表的目标字段,将第一标识信息、第二标识信息以及目标字段映射至搜索服务器中,以建立目标数据库与搜索服务器的映射关系模型;基于映射关系模型,在搜索服务器中查询与检索内容匹配的目标文档;基于目标文档从目标数据库中获取检索数据。

以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。

通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。

最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。

相关技术
  • 电子设备的显示控制方法、装置、电子设备和存储介质
  • 电子设备控制方法及装置、电子设备及存储介质
  • 数据检索方法、装置、服务器和存储介质
  • 数据分布存储方法、装置、存储介质及电子设备
  • 存储清理方法、装置、电子设备及存储介质
  • 数据检索方法、数据检索装置、存储介质及电子设备
  • 数据检索方法、数据检索装置、存储介质及电子设备
技术分类

06120116504332