CN115309954A - 一种数据检索方法、装置、设备以及存储介质 - Google Patents
一种数据检索方法、装置、设备以及存储介质 Download PDFInfo
- Publication number
- CN115309954A CN115309954A CN202211055306.8A CN202211055306A CN115309954A CN 115309954 A CN115309954 A CN 115309954A CN 202211055306 A CN202211055306 A CN 202211055306A CN 115309954 A CN115309954 A CN 115309954A
- Authority
- CN
- China
- Prior art keywords
- resource
- retrieval
- field
- target
- statement
- 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/90—Details of database functions independent of the retrieved data types
- G06F16/903—Querying
- G06F16/90335—Query processing
- G06F16/90344—Query processing by using string matching techniques
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/903—Querying
- G06F16/9035—Filtering based on additional data, e.g. user or group profiles
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/903—Querying
- G06F16/9038—Presentation of query results
Landscapes
- Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Theoretical Computer Science (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明实施例提供了一种数据检索方法、装置、设备以及存储介质,涉及信息处理技术领域。具体实现方案为:响应于接收到针对指定资源类型的检索请求,确定所述检索请求所指示的目标检索词;获取预先构建的检索语句模板;利用预先构建的检索语句模板,生成以所述目标检索词作为所述待检索词的第一检索语句;从所述资源库中的所述指定资源类型的待检索资源中,检索所对应第一字段的字段值匹配所述第一检索语句的各个目标资源;基于所述各个目标资源,输出所述检索请求对应的检索结果。可见,通过本方案,可以在不依赖于更改ES引擎的配置文件的前提下,实现同时支持精准查询和模糊查询。
Description
技术领域
本发明涉及信息处理技术领域,特别是涉及一种数据检索方法、装置、设备以及存储介质。
背景技术
在大数据日益发展的趋势下,针对大数据的检索场景越来越多,ES(Elasticsearch,弹性搜索)引擎作为一种分布式、高扩展、高实时的搜索与数据分析引擎,广泛应用于各种大数据检索场景。
相关技术中,ES引擎的常用查询机制只支持精准查询或模糊查询,若需要利用ES引擎同时支持精准查询和模糊查询,需要修改ES引擎的配置文件中的mapping设置,将待检索的检索词同时映射成text(文本)或keyword(关键词)类型,实现同时支持精准查询和模糊查询。但是,这种方式需要开发人员充分掌握ES引擎的底层配置原理,对开发人员的要求较高,导致开发人员需要耗费大量的学习成本。
因此,亟需一种应用于ES引擎的数据检索方法,以在不依赖于更改ES引擎的配置文件的前提下,实现同时支持精准查询和模糊查询,成为亟需解决的技术问题。
发明内容
本发明实施例的目的在于提供一种数据检索方法、装置、设备以及存储介质,以实现在不依赖于更改ES引擎的配置文件的前提下,实现同时支持精准查询和模糊查询。具体技术方案如下:
第一方面,本发明实施例提供了一种数据检索方法,应用于弹性搜索ES引擎,所述ES引擎所操作的资源库中包括多种资源类型的资源,同一资源类型下的各个资源对应有相同的第一字段,每一资源对应的第一字段为用于描述该资源的字段;所述方法包括:
响应于接收到针对指定资源类型的检索请求,确定所述检索请求所指示的目标检索词;
获取预先构建的检索语句模板;其中,所述检索语句模板中至少包括以或的方式组合的第一匹配模式以及第二匹配模式;所述第一匹配模式为表征与待检索词的分词匹配的检索模式,所述第二匹配模式为表征至少与所述待检索词匹配的检索模式;
利用预先构建的检索语句模板,生成以所述目标检索词作为所述待检索词的第一检索语句;
从所述资源库中的所述指定资源类型的待检索资源中,检索所对应第一字段的字段值匹配所述第一检索语句的各个目标资源;
基于所述各个目标资源,输出所述检索请求对应的检索结果。
可选地,每一资源类型下的各个资源还对应至少一第二字段;其中,每一资源对应的第二字段为表征该资源的资源内容所属的内容类别的字段;所述检索语句模板中还包括表征与待筛选项精准匹配的第三匹配模式;
在所述响应于接收到针对指定资源类型的检索请求,确定所述检索请求所指示的目标检索词之后,所述方法还包括:
识别所述检索请求中是否携带有目标筛选项;其中,所述目标筛选项为一第二字段的字段值;
所述利用预先构建的检索语句模板,生成以所述目标检索词作为所述待检索词的第一检索语句,包括:
若所述检测请求中携带有目标筛选项,利用预先构建的检索语句模板中所包含的所述第一匹配模式以及所述第二匹配模式,生成以所述目标检索词作为所述待检索词的第一检索语句,以及,利用所述第三匹配模式,生成以所述目标筛选项作为所述待筛选项的第二检索语句;
相应的,所述从所述资源库中的所述指定资源类型的待检索资源中,检索所对应第一字段的字段值匹配所述第一检索语句的各个目标资源,包括:
从所述资源库中的指定资源类型的待检索资源中,检索所对应第二字段的字段值匹配所述第二检索语句的各个待利用资源;
从所述各个待利用资源中,检索所对应第一字段的字段值匹配所述第一检索语句的各个目标资源。
可选地,所述基于所述各个目标资源,输出所述检索请求对应的检索结果,包括:
针对所述各个目标资源中的每一资源,基于该资源对应的第一字段的字段值对应的命中程度,对该资源进行打分,得到打分分值;其中,每一字段值对应的命中程度表征该字段值命中所述目标检索词的字符数;
按照所述各个目标资源的打分分值的降序排序的方式,对所述各个目标资源进行排序;
将排序后的各个目标资源进行输出。
可选地,所述基于该资源对应的第一字段的字段值对应的命中程度,对该资源进行打分,得到打分分值,包括:
基于该资源对应的第一字段的字段值对应的命中程度,以及该资源的热度,对该资源进行打分,得到打分分值;其中,每一资源的热度表征该资源的使用价值。
可选地,所述第一字段为多个,每一第一字段对应有第一权重值;所述热度对应有第二权重值;
所述基于该资源对应的第一字段的字段值对应的命中程度,以及该资源的热度,对该资源进行打分,得到打分分值,包括:
基于该资源对应的每一第一字段的字段值对应的命中程度,分别对该资源进行打分,得到多个第一分值;
根据该资源的热度对该资源进行打分,得到第二分值;
基于各个第一字段对应的第一权重值以及所述热度对应的第二权重值,对所述第一分值和第二分值进行加权求和,得到该资源的打分分值。
第二方面,本发明实施例提供了一种数据检索装置,应用于弹性搜索ES引擎,所述ES引擎所操作的资源库中包括多种资源类型的资源,同一资源类型下的各个资源对应有相同的第一字段,每一资源对应的第一字段为用于描述该资源的字段;所述装置包括:
确定模块,用于响应于接收到针对指定资源类型的检索请求,确定所述检索请求所指示的目标检索词;获取预先构建的检索语句模板;其中,所述检索语句模板中至少包括以或的方式组合的第一匹配模式以及第二匹配模式;所述第一匹配模式为表征与待检索词的分词匹配的检索模式,所述第二匹配模式为表征至少与所述待检索词匹配的检索模式;
生成模块,用于利用预先构建的检索语句模板,生成以所述目标检索词作为所述待检索词的第一检索语句;
检索模块,用于从所述资源库中的所述指定资源类型的待检索资源中,检索所对应第一字段的字段值匹配所述第一检索语句的各个目标资源;
输出模块,用于基于所述各个目标资源,输出所述检索请求对应的检索结果。
可选地,每一资源类型下的各个资源还对应至少一第二字段;其中,每一资源对应的第二字段为表征该资源的资源内容所属的内容类别的字段;所述检索语句模板中还包括表征与待筛选项精准匹配的第三匹配模式;
所述装置还包括:
识别模块,用于在所述确定模块执行响应于接收到针对指定资源类型的检索请求,确定所述检索请求所指示的目标检索词的步骤之后,识别所述检索请求中是否携带有目标筛选项;其中,所述目标筛选项为一第二字段的字段值;
所述生成模块,具体用于:
若所述检测请求中携带有目标筛选项,利用预先构建的检索语句模板中所包含的所述第一匹配模式以及所述第二匹配模式,生成以所述目标检索词作为所述待检索词的第一检索语句,以及,利用所述第三匹配模式,生成以所述目标筛选项作为所述待筛选项的第二检索语句;
相应的,所述检索模块,包括:
第一检索子模块,用于从所述资源库中的指定资源类型的待检索资源中,检索所对应第二字段的字段值匹配所述第二检索语句的各个待利用资源;
第二检索子模块,用于从所述各个待利用资源中,检索所对应第一字段的字段值匹配所述第一检索语句的各个目标资源。
可选地,所述输出模块,包括:
打分子模块,用于针对所述各个目标资源中的每一资源,基于该资源对应的第一字段的字段值对应的命中程度,对该资源进行打分,得到打分分值;其中,每一字段值对应的命中程度表征该字段值命中所述目标检索词的字符数;
排序子模块,用于按照所述各个目标资源的打分分值的降序排序的方式,对所述各个目标资源进行排序;
输出子模块,用于将排序后的各个目标资源进行输出。
可选地,所述打分子模块,具体用于:
基于该资源对应的第一字段的字段值对应的命中程度,以及该资源的热度,对该资源进行打分,得到打分分值;其中,每一资源的热度表征该资源的使用价值。
可选地,所述第一字段为多个,每一第一字段对应有第一权重值;所述热度对应有第二权重值;
所述基于该资源对应的第一字段的字段值对应的命中程度,以及该资源的热度,对该资源进行打分,得到打分分值,包括:
基于该资源对应的每一第一字段的字段值对应的命中程度,分别对该资源进行打分,得到多个第一分值;
根据该资源的热度对该资源进行打分,得到第二分值;
基于各个第一字段对应的第一权重值以及所述热度对应的第二权重值,对所述第一分值和第二分值进行加权求和,得到该资源的打分分值。
第三方面,本发明实施例提供了一种电子设备,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;
存储器,用于存放计算机程序;
处理器,用于执行存储器上所存放的程序时,实现上述任一所述的数据检索方法的步骤。
第四方面,本发明实施例提供了一种计算机可读存储介质,所述计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现上述任一所述的数据检索方法的步骤。
本发明实施例有益效果:
本发明实施例提供的方案,由于预先构建的检索语句模板中包括以或的方式组合的第一匹配模式以及第二匹配模式,且第一匹配模式为表征与待检索词的分词匹配的检索模式,第二匹配模式为表征至少与待检索词匹配的检索模式,在检索时满足任一匹配模式即可返回检索结果,因此,在利用该预先构建的检索语句模板,生成以目标检索词作为待检索词的第一检索语句,并利用该第一检索语句对待检索资源进行检索后,所对应第一字段的字段值匹配该第一检索语句的各个目标资源中,既包括与该目标检索词模糊匹配的资源,又包括与该目标检索词精准匹配的资源,从而可以实现同时支持模糊查询和精准查询。可见,通过本方案,可以在不依赖于更改ES引擎的配置文件的前提下,实现同时支持精准查询和模糊查询。
当然,实施本发明的任一产品或方法并不一定需要同时达到以上所述的所有优点。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,还可以根据这些附图获得其他的实施例。
图1为本发明实施例所提供的一种数据检索方法的流程图;
图2为本发明实施例所提供的一种实现步骤S104的流程图;
图3为本发明实施例所提供的一种实现步骤S105的流程图;
图4为本发明实施例所提供的一种数据检索装置的结构示意图;
图5为用来实现本发明实施例所提供方法的电子设备的框图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员基于本申请所获得的所有其他实施例,都属于本发明保护的范围。
相关技术中,若利用ES引擎同时实现精准查询和模糊查询,需要修改ES引擎的配置文件中的mapping设置,将待检索的检索词同时映射成text或keyword类型,实现同时支持精准查询和模糊查询。但是,这种方式需要开发人员充分掌握ES引擎的底层配置原理,对开发人员的要求较高,导致开发人员需要耗费大量的学习成本。且在ES检索的资源类型比较多的情况下,需要针对每一资源类型修改mapping设置,导致修改工作量庞大。
为了解决上述问题,以在不依赖于更改ES引擎的配置文件的前提下,实现同时支持精准查询和模糊查询,本发明实施例提供了一种数据检索方法、装置、设备以及存储介质。
下面,首先对本发明实施例所提供的一种数据检索方法进行介绍。
本发明实施例所提供的一种数据检索方法可以应用于ES引擎,该ES引擎可以运行于电子设备。在具体应用中,该电子设备可以为服务器,也可以为终端设备,这都是合理的。在实际应用中,该终端设备可以是:手机、平板电脑、台式电脑等等。
具体而言,该数据检索方法的执行主体可以为数据检索装置。在实际应用中,当该数据检索方法应用于ES引擎时,该数据检索装置可以为运行于ES引擎中的功能插件,该功能插件可以用于实现数据检索。
需要说明的是,本发明中ES引擎所操作的资源库中包括多种资源类型的资源,每一类型资源为按照数据类型所划分,例如,资源类型可以是表、字典、视图,等等。同一资源类型下的各个资源对应有相同的第一字段,每一资源对应的第一字段为用于描述该资源的字段。示例性的,若资源类型为表,则表对应的第一字段可以是表名、表描述信息,等等。示例性的,若资源类型为字典,则字典对应的第一字段可以是字典名称、字典别名、字典描述,等等。另外,每一资源可以在存储时设置有对应于第一字段的字段值,使得检索时可以利用检索词与该第一字段的字段值的进行匹配,从而得到检索结果。
其中,本发明实施例所提供的一种数据检索方法,可以包括如下步骤:
响应于接收到针对指定资源类型的检索请求,确定所述检索请求所指示的目标检索词;
获取预先构建的检索语句模板;其中,所述检索语句模板中至少包括以或的方式组合的第一匹配模式以及第二匹配模式;所述第一匹配模式为表征与待检索词的分词匹配的检索模式,所述第二匹配模式为表征至少与所述待检索词匹配的检索模式;
利用预先构建的检索语句模板,生成以所述目标检索词作为所述待检索词的第一检索语句;
从所述资源库中的所述指定资源类型的待检索资源中,检索所对应第一字段的字段值匹配所述第一检索语句的各个目标资源;
基于所述各个目标资源,输出所述检索请求对应的检索结果。
本发明实施例所提供的方案,由于预先构建的检索语句模板中包括以或的方式组合的第一匹配模式以及第二匹配模式,且第一匹配模式为表征与待检索词的分词匹配的检索模式,第二匹配模式为表征至少与待检索词匹配的检索模式,在检索时满足任一匹配模式即可返回检索结果,因此,在利用该预先构建的检索语句模板,生成以目标检索词作为待检索词的第一检索语句,并利用该第一检索语句对待检索资源进行检索后,所对应第一字段的字段值匹配该第一检索语句的各个目标资源中,既包括与该目标检索词模糊匹配的资源,又包括与该目标检索词精准匹配的资源,从而可以实现同时支持模糊查询和精准查询。可见,通过本方案,可以在不依赖于更改ES引擎的配置文件的前提下,实现同时支持精准查询和模糊查询。
下面结合附图,对本发明实施例所提供的数据检索方法进行介绍。
如图1所示,本发明实施例所提供的数据检索方法,可以包括步骤S101-S105:
S101,响应于接收到针对指定资源类型的检索请求,确定该检索请求所指示的目标检索词;
本实施例中,指定资源类型可以是表、视图、字典中的一种或多种。示例性的,在检索过程中,可以选择一个或多个资源类型进行检索,也可以不选择。若不选择资源类型,此时该指定资源类型可以为默认资源类型,该默认资源类型可以是全部资源类型,或者,某一种或多种资源类型,等等。在实际检索过程中,用户可以通过在安装有ES引擎的客户端中输入检索词进行检索,生成携带有该检索词的检索请求,ES引擎在接收到该检索请求时,从该检索请求中获取该检索请求中所携带的检索词,确定为该检索请求所指示的目标检索词。
S102,获取预先构建的检索语句模板;其中,该检索语句模板中至少包括以或的方式组合的第一匹配模式以及第二匹配模式;该第一匹配模式为表征与待检索词的分词匹配的检索模式,该第二匹配模式为表征至少与该待检索词匹配的检索模式;
本实施例中,该预先构建的检索语句模板可以是利用ES的基础检索语法所构建的检索语句模板,该检索语句模板中包括以或的方式组合的第一匹配模式和第二匹配模式。示例性的,可以利用ES的复合过滤器bool中的should操作符,对该第一匹配模式和第二匹配模式进行组合,由于should操作符可以用于选择性匹配,至少满足其中一个匹配模式才会返回结果,因此可以实现以或的方式组合第一匹配模式和第二匹配模式。
示例性的,该第一匹配模式可以为match模式,该match模式用于检索时对待检索词进行分词,然后按照该分词进行匹配查找,返回的结果不需要完全匹配待检索词,只需匹配该待检索词的分词,从而可以实现模糊查询。另外,每一资源对应的第一字段可以为一个或多个。示例性的,若该第一字段为多个,该第一匹配模式可以为multi_match模式,该multi_match模式可以实现多字段匹配查询,相当于多个match模式的查询。
示例性的,该第二匹配模式可以为wildcard模式,该wildcard模式用于通配符检索,通过设置具体的通配符检索语句,例如“*待检索词*”,“*”用于匹配任意字符串,可以实现返回包含待检索词的所有结果,从而可以实现精准查询。
需要说明的是,match模式和wildcard模式仅仅作为该第一匹配模式和第二匹配模式的示例,在实际应用中,该第一匹配模式还可以是其他表征与待检索词的分词匹配的检索模式,该第二匹配模式还可以为其他表征至少与该待检索词匹配的检索模式,本发明实施例对此并不限定。
另外,该检索语句模板在构建完成后可以保存在该ES引擎中,以使得后续进行检索时,可以调用该预先构建的检索语句模板,生成检索语句进行数据检索。
S103,利用预先构建的检索语句模板,生成以该目标检索词作为该待检索词的第一检索语句;
本实施例中,在步骤S102获取预先构建的检索语句模板后,可以将该目标检索词作为该检索语句模板中的待检索词,填充至检索语句模板,从而生成对应于该目标检索词的第一检索语句。可以理解的是,由于检索语句模板中包括以或的方式组合的第一匹配模式以及第二匹配模式,因此,该第一检索语句为表征满足第一匹配模式,或,满足第二匹配模式的检索语句。
S104,从该资源库中的该指定资源类型的待检索资源中,检索所对应第一字段的字段值匹配该第一检索语句的各个目标资源;
可以理解的是,由于检索请求为针对指定资源类型的检索请求,因此,在生成第一检索语句后,可以从该资源库中的该指定资源类型的待检索资源中进行检索。并且,由于资源库中的每一类型资源对应有第一字段,该第一字段为用于描述该资源的字段,因此,在检索时,可以检索所对应第一字段的字段值匹配该第一检索语句的各个目标资源。
其中,该第一字段的字段值匹配该第一检索语句,即该第一字段的字段值与该目标检索词的分词匹配,或者,至少与该目标检索词匹配。可以理解的是,由于该第一字段的字段值满足任一匹配条件即可返回检索结果,因此,所对应第一字段的字段值匹配该第一检索语句的各个目标资源,既包括与该目标检索词模糊匹配的资源,又包括与该目标检索词精准匹配的资源,从而可以实现同时支持模糊查询和精准查询。并且,由于目标资源中包括模糊查询和精准查的查询结果,使得查询结果的数量大大增加,从而可以满足大数据场景下的检索需求。
S105,基于该各个目标资源,输出该检索请求对应的检索结果。
本实施例中,在检索出匹配该第一检索语句的各个目标资源后,可以将该各个目标资源进行输出,该输出的各个目标资源即为对应该检索请求的检索结果。在目标资源输出时,可以按照随机顺序对该各个目标资源进行输出,或者,对该各个目标资源进行打分,并按照该各个目标资源的分值排序,对该各个目标资源进行输出,等等。需要说明的是,本发明实施例对该各个目标资源的输出方式并不限定。
本发明实施例所提供的方案,由于预先构建的检索语句模板中包括以或的方式组合的第一匹配模式以及第二匹配模式,且第一匹配模式为表征与待检索词的分词匹配的检索模式,第二匹配模式为表征至少与待检索词匹配的检索模式,在检索时满足任一匹配模式即可返回检索结果,因此,在利用该预先构建的检索语句模板,生成以目标检索词作为待检索词的第一检索语句,并利用该第一检索语句对待检索资源进行检索后,所对应第一字段的字段值匹配该第一检索语句的各个目标资源中,既包括与该目标检索词模糊匹配的资源,又包括与该目标检索词精准匹配的资源,从而可以实现同时支持模糊查询和精准查询。可见,通过本方案,可以在不依赖于更改ES引擎的配置文件的前提下,实现同时支持精准查询和模糊查询。
可选地,在本发明的另一实施例中,每一资源类型下的各个资源还对应至少一第二字段;其中,每一资源对应的第二字段为表征该资源的资源内容所属的内容类别的字段;该检索语句模板中还包括表征与待筛选项精准匹配的第三匹配模式;
本实施例中,每一资源对应的第二字段为表征该资源的资源内容所属的内容类别的字段。示例性的,若资源类型为表,则表对应的第二字段可以是表征该表中的内容所属内容类别的字段,例如,该内容类别可以是表所属主管部分、信息系统、业务分类,等等。示例性的,若资源类型为字典,则字典对应的第二字段可以是表征该字典中的内容所属内容类别的字段,例如,该内容类别可以字典所属业务分类、来源系统,等等。另外,每一资源可以在存储时设置有对应于第二字段的字段值,使得检索时可以利用目标检索词与该第二字段的字段值的进行匹配,得到与该第二字段的字段值匹配的检索结果。
另外,检索语句模板中还包括表征与待筛选项精准匹配的第三匹配模式。示例性的,可以利用ES的复合过滤器bool查询,将该第三匹配模式与上述以或的方式组合的第一匹配模式和第二匹配模式进行组合,使得后续在利用检索语句模板生成检索语句进行检索时,还可以针对待筛选项进行检索。示例性的,可以利用bool中的filter操作符,实现第三匹配模式的filter查询。由于filter操作符用于必须满足条件才会返回结果,且查询操作仅判断是否满足查询条件,即满足第三匹配模式,但不会计算得分,也不会关心返回的排序问题,查询效率会更高,因此,可以借助filter查询优势,根据待筛选项对资源进行初步的精准筛选,从而提高查询效率。
示例性的,该第三匹配模式可以为term模式,该term模式检索前不会对待筛选项进行分词,检索结果必须包含完整的待筛选项,从而可以在检索时对待筛选项进行精准查询。需要说明的是,term模式仅仅作为该第三匹配模式的示例,在实际应用中,该第三匹配模式还可以是其他表征与待筛选项精准匹配的检索模式,本发明实施例对此并不限定。
相应的,在本实施例中,在上述步骤S101中响应于接收到针对指定资源类型的检索请求,确定该检索请求所指示的目标检索词之后,所述方法还包括:
识别该检索请求中是否携带有目标筛选项;其中,该目标筛选项为一第二字段的字段值;
本实施例中,各个资源对应的第二字段的字段值均可以作为筛选项,用户在检索时,可以选择一筛选项进行检索,该筛选项即为目标筛选项。ES引擎在接受到检索请求时,可以识别该检索请求中是否携带有目标筛选项,从而若有,可以根据该目标筛选项对待检索资源进行初步精准筛选。
相应的,在本实施例中,在上述步骤S103中利用预先构建的检索语句模板,生成以该目标检索词作为该待检索词的第一检索语句,可以包括:
若该检测请求中携带有目标筛选项,利用预先构建的检索语句模板中所包含的该第一匹配模式以及该第二匹配模式,生成以该目标检索词作为该待检索词的第一检索语句,以及,利用该第三匹配模式,生成以该目标筛选项作为该待筛选项的第二检索语句;
本实施例中,若检索请求中携带有目标筛选项,则在生成检索语句时,可以生成针对目标检索词作为待检索词的第一检索语句,以及生成针对目标筛选项作为待待筛选项的第二检索语句。也就是,利用目标检索词替换第一匹配模式以及第二匹配模式中的待检索词,利用目标筛选项替换第三匹配模式中的待筛选项。
相应的,在本实施例中,如图2所示,上述步骤S104中从该资源库中的该指定资源类型的待检索资源中,检索所对应第一字段的字段值匹配该第一检索语句的各个目标资源,可以包括步骤S1041-S1042:
S1041,从该资源库中的指定资源类型的待检索资源中,检索所对应第二字段的字段值匹配该第二检索语句的各个待利用资源;
S1042,从该各个待利用资源中,检索所对应第一字段的字段值匹配该第一检索语句的各个目标资源。
本实施例中,该第二字段的字段值匹配该第二检索语句,即该第二字段的字段值与目标筛选项完全匹配。该第一字段值的字段值匹配该第一检索语句,即该第一字段的字段值与该目标检索词的分词匹配,或者,至少与该目标检索词匹配。
可以理解的是,由于资源库中的每一类型资源对应有第一字段和第二字段,且该第二字段为表征该资源的资源内容所属的内容类别的字段,该第一字段为用于描述该资源的字段,因此,在检索时,通过首先检索所对应第二字段的字段值匹配该第二检索语句的各个待利用资源,然后从该各个待利用资源中,检索所对应第一字段的字段值匹配该第一检索语句的各个目标资源,可以利用目标筛选项对该资源库中的资源进行初步的精准检索后,对所得到的待利用资源进一步进行针对目标检索词的精准查询和模糊查询,从而,可以加快检索速度。
可见,通过本方案,可以在实现同时支持模糊查询和精准查询的基础上,实现快速检索。
可选地,在本发明的另一实施例中,如图3所示,上述步骤S105找那个基于该各个目标资源,输出该检索请求对应的检索结果,可以包括步骤S1051-S1053:
S1051,针对该各个目标资源中的每一资源,基于该资源对应的第一字段的字段值对应的命中程度,对该资源进行打分,得到打分分值;其中,每一字段值对应的命中程度表征该字段值命中该目标检索词的字符数;
本实施例中,可以根据各个目标资源所对应的第一字段的字段值,命中该目标检索词的的字符数,对该各个目标资源进行打分,以使得命中字符数较多的目标资源的分值更高,从而使得精准查询的打分分值高于模糊查询的打分分值。
需要说明的是,在实际检索过程中,可以自定义打分机制对该各个目标资源进行打分,也可以利用ES引擎默认的相关性打分机制,例如TF-IDF(term frequency–inversedocument frequency,词频-逆文本频率)打分机制对该各个目标资源进行打分,本发明实施例对该打分机制并不限定。
S1052,按照该各个目标资源的打分分值的降序排序的方式,对该各个目标资源进行排序;
可以理解的是,在通过步骤S1051根据各个目标资源的第一字段的字段值对应的命中程度,对该目标资源进行打分后,命中程度高的目标资源的分值更高,使得精准查询的打分分值高于模糊查询的打分分值。因此,通过将该各个目标资源按照打分分值进行降序排序,可以使得命中程度高的精准查询的查询结果排序靠前。
S1053,将排序后的各个目标资源进行输出。
可以理解的是,通过按照降序排序的方式,将各个目标资源进行排序后输出,可以使得分值高的资源排序靠前,即使得精准查询的查询结果在输出时排序靠前,从而使得输出的目标资源的排序符合用户的使用需求。
可见,通过本方案,对各个目标资源进行打分及排序后输出,可以使得精准查询的查询结果在输出时排序靠前,从而使得输出的目标资源的排序符合用户的使用需求。
可选地,在本发明的另一实施例中,上述步骤S1051中基于该资源对应的第一字段的字段值对应的命中程度,对该资源进行打分,得到打分分值,可以包括:
基于该资源对应的第一字段的字段值对应的命中程度,以及该资源的热度,对该资源进行打分,得到打分分值;其中,每一资源的热度表征该资源的使用价值。
本实施例中,资源的热度可以是根据资源的访问量、收藏量、订阅量、申请量、评价数量等计算得出的,资源的热度越高表征该资源更倾向于大部分用户所使用的资源。可以理解的是,由于热度较高的资源通常会经常被访问及使用,对大部分用户来说,热度较高的资源应该比命中程度相同的其他资源排序更靠前,因此,通过加入资源的热度进行打分,可以使得后续利用打分分值进行降序排序时,综合考虑资源的命中程度以及热度进行排序,从而使得检索结果的排序更符合用户的使用需求。
可选地,在一种实现方式中,该第一字段为多个,每一第一字段对应有第一权重值;该热度对应有第二权重值;
需要说明的是,该各个第一字段对应的权重值,以及热度对应的权重值,可以由相关技术人员根据经验自行设定,本发明实施例对此并不限定。示例性的,若针对资源类型为表的资源进行检索,该表的资源类型对应的第一字段为表名以及表描述信息,则可以将表名、表描述信息以及热度的权重值分别设置为5、4、3,或者,4、3、5,等等,这都是合理的。
相应地,在本实现方式中,基于该资源对应的第一字段的字段值对应的命中程度,以及该资源的热度,对该资源进行打分,得到打分分值,可以包括步骤A1-A3:
A1,基于该资源对应的每一第一字段的字段值对应的命中程度,分别对该资源进行打分,得到多个第一分值;
也就是,针对资源的每一第一字段的字段值对应的命中程度,对该资源进行打分,得到多个第一分值,第一分值越高,表征该第一字段的字段值命中目标检索词的程度越高。
A2,根据该资源的热度对该资源进行打分,得到第二分值;
示例性的,可以直接将该资源的热度作为该资源的第二分值,或者,将该资源的热度映射到第一分值的分值区间的值,作为该第二分值,等等。
A3,基于各个第一字段对应的第一权重值以及该热度对应的第二权重值,对该第一分值和第二分值进行加权求和,得到该资源的打分分值。
可以理解的是,通过为不同的第一字段设置不同的权值,以及为热度设置第二权重值,并按照该第一权重值和第二权重值对该第一分值和第二分值进行加权求和,得到该资源的打分分值,可以使得后续利用该打分分值进行降序排序时,热度较高的资源比命中程度相同的其他资源排序更靠前,甚至比命中程度高的其他资源排序更靠前,从而使得检索结果的排序更贴近用户的需求。
可见,通过本方案,加入热度参与打分,可以使得后续按照打分分值的降序排序输出各个目标资源时,热度较高的资源比命中程度相同的其他资源排序更靠前,从而使得检索结果的排序更贴近用户的需求,以提高用户对资源的检索满意度。
为了更好的理解本发明实施例的内容,下面对本发明实施例的一个具体示例进行介绍。
目前,基于ES检索的方案主要有以下两种:
(一)使用ES引擎的常用查询机制,将所有的资源类型统一考虑,为不同的匹配字段(对应于上文中的第一字段)设置不同的权重值,将资源库中的待检索资源根据命中的条件和打分分值进行排序后输出。该检索方案存在以下缺点:
(1)只支持精准查询或模糊查询,无法做到两者兼容,导致输出的检索结果的条数较低,难以满足用户的需求;
(2)检索结果没有贴合实际资源的使用情况进行排序输出。
(二)通过修改ES的配置文件,实现支持精准查询和模糊查询。通过修改mapping设置,将待检索的检索词同时映射成text或keyword类型,实现同时支持精准查询和模糊查询。但是,这种方式需要开发人员充分掌握ES引擎的底层配置原理,对开发人员的要求较高,导致开发人员需要耗费大量的学习成本。且在ES检索的资源类型比较多的情况下,需要针对每一资源类型修改mapping设置,导致修改工作量庞大。并且,即便实现两种查询都支持,也无法保证精准查询的结果输出时排在前面,导致往往使用户感觉检索不精准。
为了在ES检索过程中,能通过使用ES引擎的基础语法快捷的满足用户检索期望,即尽可能多的输出检索结果,并且输出的检索结果排序满足用户的日常使用习惯,本示例采用如下方案:
首先,将不同的资源根据类型进行划分,确认每一资源类型对应的过滤字段(对应于上文中的第二字段)和匹配字段,并针对每一匹配字段设置权重。如下表1所示,资源库中的待检索资源划分为多种资源类型,每种资源类型设置有不同的过滤字段和匹配字段,每一匹配字段设置有权重,并加入热度是否参与评分项。其中,热度是根据资源的访问量、收藏量、订阅量、申请量、评价数量等加权计算得出的,热度越高,代表该资源更倾向于大部分用户所使用的资源。
表1
其次,针对不同的字段,使用ES的不同模式去匹配或打分。如下表2所示,针对过滤字段,在实际检索过程中相当于检索的筛选项,采用term模式去精准匹配;针对匹配字段,通常所检索的匹配字段不止一个,例如资源名称、资源文本描述等,都有可能包含需要检索的内容,而且此时的检索很难做到完整匹配,所以在这里使用模糊匹配的方式,该模糊匹配的方式包括match模式和wildcard模式。其中,match模式实现与待检索词的分词匹配,wildcard模式实现至少与待检索词匹配;针对数值打分字段,采用Function_score模式去打分,该Function_score模式通过自定义打分机制,将命中的资源的匹配字段的权重和热度一起考虑。
表2
再次,通过构建检索语句模板将各种字段的模式进行组合。在构建检索语句模板时,在query查询里面包含了一层bool查询,bool是ES的复合过滤器,可以将多个查询条件,以一定的逻辑组合在一起使用。bool过滤器包括了四种操作符,must操作符:条件必须匹配,贡献计分;should操作符:至少满足条件之一,贡献计分;must_not操作符:所有条件都不满足,不贡献计分;filter操作符:必须满足条件,对查询结果进行缓存,执行效率高,但不贡献计分。本方案使用filter操作符和should操作符的组合模式,实现对筛选项的初步精准筛选,以及对检索词的模糊查询和精准查询,检索语句模板的程序代码示例如下:
其中,在filter中包含的是各种term模式组合的过滤字段,通过借助filter的查询优势,查询过滤字段的字段值与待筛选项匹配的待利用资源,对待检索资源进行初步的精准筛选。
should模式通过设置minimum_should_match的值为1,即设置最小匹配度为1,表征至少满足条件之一返回结果,是以或的方式进行检索。在should模式中,可以配置multi_match模式和若干个wildcard模式,对各个匹配字段进行查询。其中,multi_match模式可以实现多字段匹配查询,等价于多个match模式的查询。并且,每一匹配字段具有预先设定的权重,参与命中打分。multi_match模式的分词、支持多字段可以满足模糊查询的效果,wildcard模式的通配符检索,则是包含完整匹配,从而实现同时支持精准查询和模糊查询。并且,query查询会输出分值(对应于上文的第一分值),在完整的命中匹配字段的字段值时,或者多个匹配字段的字段值被命中时,计算出来的分值就越高,排序的时候更靠前。
最后,加入热度的影响因子,将热度加权参与打分。热度的权重值按照具体的场景而定,通常情况下,热度较高的资源代表用户使用的频次越高,会经常被访问和使用。所以对大部分用户来说,热度较高的资源应该比命中程度相同的其他资源的排序更靠前,甚至比命中程度高的其他资源的排序更靠前。在实际检索过程中,可以使用自定义打分机制function_score,加入热度的影响因子以及设置热度的权重值,实现加入热度进行打分,得到热度对应的分值(对应于上文中的第二分值)。并将热度的分值和上述query查询输出的分值进行加权求和,得到最终的打分分值。
可见,通过本方案,将检索资源按照资源类型的细粒度划分,针对不同的字段,采用ES不同的模式去匹配、打分,可以通过简单的语法组合,只需低成本的ES学习代价,即可实现集模糊查询和精准查询于一体的快速检索;并且,检索结果排序支持基于热度进行排序,从而使得检索结果的排序更符合用户的使用需求,可以提高用户对资源的检索满意度。
相应上述方法的实施例,本发明实施例还提供了一种数据检索装置,应用于弹性搜索ES引擎,所述ES引擎所操作的资源库中包括多种资源类型的资源,同一资源类型下的各个资源对应有相同的第一字段,每一资源对应的第一字段为用于描述该资源的字段;如图4所示,所述装置包括:
确定模块410,用于响应于接收到针对指定资源类型的检索请求,确定所述检索请求所指示的目标检索词;
获取模块420,用于获取预先构建的检索语句模板;其中,所述检索语句模板中至少包括以或的方式组合的第一匹配模式以及第二匹配模式;所述第一匹配模式为表征与待检索词的分词匹配的检索模式,所述第二匹配模式为表征至少与所述待检索词匹配的检索模式;
生成模块430,用于利用预先构建的检索语句模板,生成以所述目标检索词作为所述待检索词的第一检索语句;
检索模块440,用于从所述资源库中的所述指定资源类型的待检索资源中,检索所对应第一字段的字段值匹配所述第一检索语句的各个目标资源;
输出模块450,用于基于所述各个目标资源,输出所述检索请求对应的检索结果。
可选地,每一资源类型下的各个资源还对应至少一第二字段;其中,每一资源对应的第二字段为表征该资源的资源内容所属的内容类别的字段;所述检索语句模板中还包括表征与待筛选项精准匹配的第三匹配模式;
所述装置还包括:
识别模块,用于在所述确定模块执行响应于接收到针对指定资源类型的检索请求,确定所述检索请求所指示的目标检索词的步骤之后,识别所述检索请求中是否携带有目标筛选项;其中,所述目标筛选项为一第二字段的字段值;
所述生成模块,具体用于:
若所述检测请求中携带有目标筛选项,利用预先构建的检索语句模板中所包含的所述第一匹配模式以及所述第二匹配模式,生成以所述目标检索词作为所述待检索词的第一检索语句,以及,利用所述第三匹配模式,生成以所述目标筛选项作为所述待筛选项的第二检索语句;
相应的,所述检索模块,包括:
第一检索子模块,用于从所述资源库中的指定资源类型的待检索资源中,检索所对应第二字段的字段值匹配所述第二检索语句的各个待利用资源;
第二检索子模块,用于从所述各个待利用资源中,检索所对应第一字段的字段值匹配所述第一检索语句的各个目标资源。
可选地,所述输出模块,包括:
打分子模块,用于针对所述各个目标资源中的每一资源,基于该资源对应的第一字段的字段值对应的命中程度,对该资源进行打分,得到打分分值;其中,每一字段值对应的命中程度表征该字段值命中所述目标检索词的字符数;
排序子模块,用于按照所述各个目标资源的打分分值的降序排序的方式,对所述各个目标资源进行排序;
输出子模块,用于将排序后的各个目标资源进行输出。
可选地,所述打分子模块,具体用于:
基于该资源对应的第一字段的字段值对应的命中程度,以及该资源的热度,对该资源进行打分,得到打分分值;其中,每一资源的热度表征该资源的使用价值。
可选地,所述第一字段为多个,每一第一字段对应有第一权重值;所述热度对应有第二权重值;
所述基于该资源对应的第一字段的字段值对应的命中程度,以及该资源的热度,对该资源进行打分,得到打分分值,包括:
基于该资源对应的每一第一字段的字段值对应的命中程度,分别对该资源进行打分,得到多个第一分值;
根据该资源的热度对该资源进行打分,得到第二分值;
基于各个第一字段对应的第一权重值以及所述热度对应的第二权重值,对所述第一分值和第二分值进行加权求和,得到该资源的打分分值。
本发明实施例还提供了一种电子设备,如图5所示,包括处理器501、通信接口502、存储器503和通信总线504,其中,处理器501,通信接口502,存储器503通过通信总线504完成相互间的通信,
存储器503,用于存放计算机程序;
处理器501,用于执行存储器503上所存放的程序时,实现上述任一数据检索方法的步骤。
上述电子设备提到的通信总线可以是外设部件互连标准(Peripheral ComponentInterconnect,PCI)总线或扩展工业标准结构(Extended Industry StandardArchitecture,EISA)总线等。该通信总线可以分为地址总线、数据总线、控制总线等。为便于表示,图中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
通信接口用于上述电子设备与其他设备之间的通信。
存储器可以包括随机存取存储器(Random Access Memory,RAM),也可以包括非易失性存储器(Non-Volatile Memory,NVM),例如至少一个磁盘存储器。可选的,存储器还可以是至少一个位于远离前述处理器的存储装置。
上述的处理器可以是通用处理器,包括中央处理器(Central Processing Unit,CPU)、网络处理器(Network Processor,NP)等;还可以是数字信号处理器(Digital SignalProcessor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。
在本发明提供的又一实施例中,还提供了一种计算机可读存储介质,该计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现上述任一数据检索方法的步骤。
在本发明提供的又一实施例中,还提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述实施例中任一数据检索方法。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本发明实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,DVD)、或者半导体介质(例如固态硬盘Solid State Disk(SSD))等。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
本说明书中的各个实施例均采用相关的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
以上所述仅为本发明的较佳实施例,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内所作的任何修改、等同替换、改进等,均包含在本发明的保护范围内。
Claims (10)
1.一种数据检索方法,其特征在于,应用于弹性搜索ES引擎,所述ES引擎所操作的资源库中包括多种资源类型的资源,同一资源类型下的各个资源对应有相同的第一字段,每一资源对应的第一字段为用于描述该资源的字段;所述方法包括:
响应于接收到针对指定资源类型的检索请求,确定所述检索请求所指示的目标检索词;
获取预先构建的检索语句模板;其中,所述检索语句模板中至少包括以或的方式组合的第一匹配模式以及第二匹配模式;所述第一匹配模式为表征与待检索词的分词匹配的检索模式,所述第二匹配模式为表征至少与所述待检索词匹配的检索模式;
利用预先构建的检索语句模板,生成以所述目标检索词作为所述待检索词的第一检索语句;
从所述资源库中的所述指定资源类型的待检索资源中,检索所对应第一字段的字段值匹配所述第一检索语句的各个目标资源;
基于所述各个目标资源,输出所述检索请求对应的检索结果。
2.根据权利要求1所述的方法,其特征在于,每一资源类型下的各个资源还对应至少一第二字段;其中,每一资源对应的第二字段为表征该资源的资源内容所属的内容类别的字段;所述检索语句模板中还包括表征与待筛选项精准匹配的第三匹配模式;
在所述响应于接收到针对指定资源类型的检索请求,确定所述检索请求所指示的目标检索词之后,所述方法还包括:
识别所述检索请求中是否携带有目标筛选项;其中,所述目标筛选项为一第二字段的字段值;
所述利用预先构建的检索语句模板,生成以所述目标检索词作为所述待检索词的第一检索语句,包括:
若所述检测请求中携带有目标筛选项,利用预先构建的检索语句模板中所包含的所述第一匹配模式以及所述第二匹配模式,生成以所述目标检索词作为所述待检索词的第一检索语句,以及,利用所述第三匹配模式,生成以所述目标筛选项作为所述待筛选项的第二检索语句;
相应的,所述从所述资源库中的所述指定资源类型的待检索资源中,检索所对应第一字段的字段值匹配所述第一检索语句的各个目标资源,包括:
从所述资源库中的指定资源类型的待检索资源中,检索所对应第二字段的字段值匹配所述第二检索语句的各个待利用资源;
从所述各个待利用资源中,检索所对应第一字段的字段值匹配所述第一检索语句的各个目标资源。
3.根据权利要求1或2所述的方法,其特征在于,所述基于所述各个目标资源,输出所述检索请求对应的检索结果,包括:
针对所述各个目标资源中的每一资源,基于该资源对应的第一字段的字段值对应的命中程度,对该资源进行打分,得到打分分值;其中,每一字段值对应的命中程度表征该字段值命中所述目标检索词的字符数;
按照所述各个目标资源的打分分值的降序排序的方式,对所述各个目标资源进行排序;
将排序后的各个目标资源进行输出。
4.根据权利要求3所述的方法,其特征在于,所述基于该资源对应的第一字段的字段值对应的命中程度,对该资源进行打分,得到打分分值,包括:
基于该资源对应的第一字段的字段值对应的命中程度,以及该资源的热度,对该资源进行打分,得到打分分值;其中,每一资源的热度表征该资源的使用价值。
5.根据权利要求4所述的方法,其特征在于,所述第一字段为多个,每一第一字段对应有第一权重值;所述热度对应有第二权重值;
所述基于该资源对应的第一字段的字段值对应的命中程度,以及该资源的热度,对该资源进行打分,得到打分分值,包括:
基于该资源对应的每一第一字段的字段值对应的命中程度,分别对该资源进行打分,得到多个第一分值;
根据该资源的热度对该资源进行打分,得到第二分值;
基于各个第一字段对应的第一权重值以及所述热度对应的第二权重值,对所述第一分值和第二分值进行加权求和,得到该资源的打分分值。
6.一种数据检索装置,其特征在于,应用于弹性搜索ES引擎,所述ES引擎所操作的资源库中包括多种资源类型的资源,同一资源类型下的各个资源对应有相同的第一字段,每一资源对应的第一字段为用于描述该资源的字段;所述装置包括:
确定模块,用于响应于接收到针对指定资源类型的检索请求,确定所述检索请求所指示的目标检索词;获取预先构建的检索语句模板;其中,所述检索语句模板中至少包括以或的方式组合的第一匹配模式以及第二匹配模式;所述第一匹配模式为表征与待检索词的分词匹配的检索模式,所述第二匹配模式为表征至少与所述待检索词匹配的检索模式;
生成模块,用于利用预先构建的检索语句模板,生成以所述目标检索词作为所述待检索词的第一检索语句;
检索模块,用于从所述资源库中的所述指定资源类型的待检索资源中,检索所对应第一字段的字段值匹配所述第一检索语句的各个目标资源;
输出模块,用于基于所述各个目标资源,输出所述检索请求对应的检索结果。
7.根据权利要求6所述的装置,其特征在于,每一资源类型下的各个资源还对应至少一第二字段;其中,每一资源对应的第二字段为表征该资源的资源内容所属的内容类别的字段;所述检索语句模板中还包括表征与待筛选项精准匹配的第三匹配模式;
所述装置还包括:
识别模块,用于在所述确定模块执行响应于接收到针对指定资源类型的检索请求,确定所述检索请求所指示的目标检索词的步骤之后,识别所述检索请求中是否携带有目标筛选项;其中,所述目标筛选项为一第二字段的字段值;
所述生成模块,具体用于:
若所述检测请求中携带有目标筛选项,利用预先构建的检索语句模板中所包含的所述第一匹配模式以及所述第二匹配模式,生成以所述目标检索词作为所述待检索词的第一检索语句,以及,利用所述第三匹配模式,生成以所述目标筛选项作为所述待筛选项的第二检索语句;
相应的,所述检索模块,包括:
第一检索子模块,用于从所述资源库中的指定资源类型的待检索资源中,检索所对应第二字段的字段值匹配所述第二检索语句的各个待利用资源;
第二检索子模块,用于从所述各个待利用资源中,检索所对应第一字段的字段值匹配所述第一检索语句的各个目标资源。
8.根据权利要求6或7所述的装置,其特征在于,所述输出模块,包括:
打分子模块,用于针对所述各个目标资源中的每一资源,基于该资源对应的第一字段的字段值对应的命中程度,对该资源进行打分,得到打分分值;其中,每一字段值对应的命中程度表征该字段值命中所述目标检索词的字符数;
排序子模块,用于按照所述各个目标资源的打分分值的降序排序的方式,对所述各个目标资源进行排序;
输出子模块,用于将排序后的各个目标资源进行输出。
9.一种电子设备,其特征在于,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;
存储器,用于存放计算机程序;
处理器,用于执行存储器上所存放的程序时,实现权利要求1-5任一所述的方法步骤。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现权利要求1-5任一所述的方法步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211055306.8A CN115309954A (zh) | 2022-08-30 | 2022-08-30 | 一种数据检索方法、装置、设备以及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211055306.8A CN115309954A (zh) | 2022-08-30 | 2022-08-30 | 一种数据检索方法、装置、设备以及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115309954A true CN115309954A (zh) | 2022-11-08 |
Family
ID=83864718
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211055306.8A Pending CN115309954A (zh) | 2022-08-30 | 2022-08-30 | 一种数据检索方法、装置、设备以及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115309954A (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116127976A (zh) * | 2023-01-09 | 2023-05-16 | 中国司法大数据研究院有限公司 | 公司名称的匹配方法、装置及电子设备 |
CN116738252A (zh) * | 2023-07-12 | 2023-09-12 | 上海中汇亿达金融信息技术有限公司 | 基于模糊匹配的配置加载方法、装置及应用 |
CN116842138A (zh) * | 2023-07-24 | 2023-10-03 | 上海诚狐信息科技有限公司 | 基于文档的检索方法、装置、设备及存储介质 |
-
2022
- 2022-08-30 CN CN202211055306.8A patent/CN115309954A/zh active Pending
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116127976A (zh) * | 2023-01-09 | 2023-05-16 | 中国司法大数据研究院有限公司 | 公司名称的匹配方法、装置及电子设备 |
CN116127976B (zh) * | 2023-01-09 | 2023-12-05 | 中国司法大数据研究院有限公司 | 公司名称的匹配方法、装置及电子设备 |
CN116738252A (zh) * | 2023-07-12 | 2023-09-12 | 上海中汇亿达金融信息技术有限公司 | 基于模糊匹配的配置加载方法、装置及应用 |
CN116738252B (zh) * | 2023-07-12 | 2024-01-05 | 上海中汇亿达金融信息技术有限公司 | 基于模糊匹配的配置加载方法、装置及应用 |
CN116842138A (zh) * | 2023-07-24 | 2023-10-03 | 上海诚狐信息科技有限公司 | 基于文档的检索方法、装置、设备及存储介质 |
CN116842138B (zh) * | 2023-07-24 | 2024-07-19 | 上海金麦穗信息技术集团有限公司 | 基于文档的检索方法、装置、设备及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5575902B2 (ja) | クエリのセマンティックパターンに基づく情報検索 | |
JP5736469B2 (ja) | ユーザ意図の有無に基づく検索キーワードの推薦 | |
KR100898454B1 (ko) | 통합 검색 서비스 시스템 및 방법 | |
US9384214B2 (en) | Image similarity from disparate sources | |
CN115309954A (zh) | 一种数据检索方法、装置、设备以及存储介质 | |
US8275786B1 (en) | Contextual display of query refinements | |
US9607325B1 (en) | Behavior-based item review system | |
CN112487150B (zh) | 档案管理方法、系统、存储介质及电子设备 | |
Reinanda et al. | Mining, ranking and recommending entity aspects | |
CN112328906B (zh) | 内容项推荐方法、装置、设备及存储介质 | |
CN108304444A (zh) | 信息查询方法及装置 | |
CN104462553A (zh) | 问答页面相关问题推荐方法及装置 | |
CN101884042A (zh) | 使用声誉度量来提高搜索相关度 | |
CN111159563A (zh) | 用户兴趣点信息的确定方法、装置、设备及存储介质 | |
CN110543484A (zh) | 提示词的推荐方法及装置、存储介质和处理器 | |
EP3480706A1 (en) | Automatic search dictionary and user interfaces | |
CN114330329A (zh) | 一种业务内容搜索方法、装置、电子设备及存储介质 | |
CN112836126A (zh) | 基于知识图谱的推荐方法、装置、电子设备及存储介质 | |
CN111400516B (zh) | 标签确定方法、电子设备及存储介质 | |
CN113672793A (zh) | 一种信息召回方法、装置、电子设备及存储介质 | |
CN107851114A (zh) | 自动信息检索 | |
KR20190109628A (ko) | 개인화된 기사 컨텐츠 제공 방법 및 장치 | |
CN112269869B (zh) | 一种查询关键词的方法及装置 | |
US9152701B2 (en) | Query classification | |
AU2021289542B2 (en) | Refining a search request to a content provider |
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 |