一种检索方法和存储设备与流程

文档序号:31636556发布日期:2022-09-24 04:25阅读:73来源:国知局
一种检索方法和存储设备与流程

1.本技术涉及数据检索技术领域,特别涉及一种检索方法和存储设备。


背景技术:

2.随着社会的快速发展,越来越多的新兴语言出现,如爷青回、yyds、绝绝子、夺笋啊、awsl、nbcs、xswl、nsdd等等。这些词现在不仅仅只是作为口头用语,在年轻人中,这些词语也逐渐在许多相对专业的文章中出现。
3.而当年轻人使用这些缩写词去检索的时候,因为现有的检索系统无法准确地知道这些检索词的意思,而导致无法给出准确的结果。
4.此外,随着网络通讯的快速发展,越来越多的图书馆系统互相进行兼容开放,使得大量的电子图书可以通过一个系统被查询到,如此使得图书资源可以得到最大化使用。而问题也随之而来,当大量的电子图书资源融合起来以后,面对海量检索,如何才能快速地返回结果则成了亟需解决的技术问题。


技术实现要素:

5.鉴于上述问题,本技术提供了一种检索方法,用以解决面对现有大量缩写词导致的语义不清而产生检索结果不准确,及因资源量大导致检索结果无法快速响应的技术问题。具体技术方案如下:
6.一种检索方法,包括:
7.响应检索指令,获取检索关键词,根据所述关键词生成标识串;
8.根据所述标识串在缓存服务器中进行数据调用,若获取到数据,则将数据返回,若未获取到数据,则输入所述检索关键词至预先训练好的知识地图,得预设个数的目标关键词;
9.并根据所述目标关键词向数据库发起检索请求,返回检索结果;
10.存储所述标识串和所述检索结果至所述缓存服务器。
11.进一步的,所述标识串的生成规则为:系统更新日期+检索关键词;
12.所述标识串存储在特定的缓存空间中。
13.进一步的,所述并根据所述目标关键词向数据库发起检索请求,返回检索结果,还包括:
14.根据用户预先设定好的条件返回检索结果;
15.所述预先设定好的条件包括以下中的一种或多种:文件标题、文件简介、文件作者。
16.进一步的,还包括:
17.判断所述特定的缓存空间中的同一检索关键词是否对应多个标识串,若是,则保留系统更新日期最新的标识串,删除其它的标识串。
18.进一步的,得预设个数的目标关键词后,还包括:
19.根据所述目标关键词生成标识串,根据所述标识串在缓存服务器中进行数据调用,若获取到数据,则将数据返回,若未获取到数据,则根据所述目标关键词向数据库发起检索请求,返回检索结果。
20.为解决上述技术问题,还提供了一种存储设备。具体技术方案如下:
21.一种存储设备,其中存储有指令集,所述指令集用于执行:响应检索指令,获取检索关键词,根据所述关键词生成标识串;
22.根据所述标识串在缓存服务器中进行数据调用,若获取到数据,则将数据返回,若未获取到数据,则输入所述检索关键词至预先训练好的知识地图,得预设个数的目标关键词;
23.并根据所述目标关键词向数据库发起检索请求,返回检索结果;
24.存储所述标识串和所述检索结果至所述缓存服务器。
25.进一步的,所述标识串的生成规则为:系统更新日期+检索关键词;
26.所述标识串存储在特定的缓存空间中。
27.进一步的,所述指令集还用于执行:所述并根据所述目标关键词向数据库发起检索请求,返回检索结果,还包括:
28.根据用户预先设定好的条件返回检索结果;
29.所述预先设定好的条件包括以下中的一种或多种:文件标题、文件简介、文件作者。
30.进一步的,所述指令集还用于执行:判断所述特定的缓存空间中的同一检索关键词是否对应多个标识串,若是,则保留系统更新日期最新的标识串,删除其它的标识串。
31.进一步的,所述指令集还用于执行:得预设个数的目标关键词后,还包括:
32.根据所述目标关键词生成标识串,根据所述标识串在缓存服务器中进行数据调用,若获取到数据,则将数据返回,若未获取到数据,则根据所述目标关键词向数据库发起检索请求,返回检索结果。
33.本发明的有益效果是:一种检索方法,包括:响应检索指令,获取检索关键词,根据所述关键词生成标识串;根据所述标识串在缓存服务器中进行数据调用,若获取到数据,则将数据返回,若未获取到数据,则输入所述检索关键词至预先训练好的知识地图,得预设个数的目标关键词;并根据所述目标关键词向数据库发起检索请求,返回检索结果;存储所述标识串和所述检索结果至所述缓存服务器。上述方法中先是使用知识地图使得面对语义模糊的关键词仍然可以获得其它与其语义相关联的关键词,而使用这些关键词去检索,可以大大增加检索结果的准确性,同时,先通过生成的标识串到缓存服务器中进行数据调用,当缓存服务器中存在对应数据时,则可以直接获取到数据,无需到数据库中获取,避免了对数据库的访问,提高响应速度的同时,减少了对数据库所在服务器的访问,减轻其负担。
34.进一步的,额外开辟特定的缓存空间用于存放标识串,如此可对标识串进行批量化管理和精细化管理,通过管理标识串进行缓存清理等等。
35.上述发明内容相关记载仅是本技术技术方案的概述,为了让本领域普通技术人员能够更清楚地了解本技术的技术方案,进而可以依据说明书的文字及附图记载的内容予以实施,并且为了让本技术的上述目的及其它目的、特征和优点能够更易于理解,以下结合本技术的具体实施方式及附图进行说明。
附图说明
36.附图仅用于示出本技术具体实施方式以及其他相关内容的原理、实现方式、应用、特点以及效果等,并不能认为是对本技术的限制。
37.在说明书附图中:
38.图1为具体实施方式所述一种检索方法的流程图一;
39.图2为具体实施方式所述一种检索方法的流程图二;
40.图3为具体实施方式所述一种检索方法的流程图三;
41.图4为具体实施方式所述一种检索方法的流程图四;
42.图5为具体实施方式所述一种存储设备的模块示意图。
43.上述各附图中涉及的附图标记说明如下:
44.500、存储设备。
具体实施方式
45.为详细说明本技术可能的应用场景,技术原理,可实施的具体方案,能实现目的与效果等,以下结合所列举的具体实施例并配合附图详予说明。本文所记载的实施例仅用于更加清楚地说明本技术的技术方案,因此只作为示例,而不能以此来限制本技术的保护范围。
46.在本文中提及“实施例”意味着,结合实施例描述的特定特征、结构或特性可以包含在本技术的至少一个实施例中。在说明书中各个位置出现的“实施例”一词并不一定指代相同的实施例,亦不特别限定其与其它实施例之间的独立性或关联性。原则上,在本技术中,只要不存在技术矛盾或冲突,各实施例中所提到的各项技术特征均可以以任意方式进行组合,以形成相应的可实施的技术方案。
47.除非另有定义,本文所使用的技术术语的含义与本技术所属技术领域的技术人员通常理解的含义相同;本文中对相关术语的使用只是为了描述具体的实施例,而不是旨在限制本技术。
48.在本技术的描述中,用语“和/或”是一种用于描述对象之间逻辑关系的表述,表示可以存在三种关系,例如a和/或b,表示:存在a,存在b,以及同时存在a和b这三种情况。另外,本文中字符“/”一般表示前后关联对象是一种“或”的逻辑关系。
49.在本技术中,诸如“第一”和“第二”之类的用语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何实际的数量、主次或顺序等关系。
50.在没有更多限制的情况下,在本技术中,语句中所使用的“包括”、“包含”、“具有”或者其他类似的表述,意在涵盖非排他性的包含,这些表述并不排除在包括所述要素的过程、方法或者产品中还可以存在另外的要素,从而使得包括一系列要素的过程、方法或者产品中不仅可以包括那些限定的要素,而且还可以包括没有明确列出的其他要素,或者还包括为这种过程、方法或者产品所固有的要素。
51.与《审查指南》中的理解相同,在本技术中,“大于”、“小于”、“超过”等表述理解为不包括本数;“以上”、“以下”、“以内”等表述理解为包括本数。此外,在本技术实施例的描述中“多个”的含义是两个以上(包括两个),与之类似的与“多”相关的表述亦做此类理解,例
如“多组”、“多次”等,除非另有明确具体的限定。
52.请参阅图1至图4,以下对一种检索方法展开具体说明,在本实施方式中,一种检索方法可应用在一种存储设备中,所述存储设备包括但不限于:个人计算机、服务器、通用计算机、专用计算机、网络设备、嵌入式设备、可编程设备、智能移动终端等。
53.如图1所示,一种检索方法包括步骤s101至步骤s104。
54.在步骤s101中,响应检索指令,获取检索关键词,根据所述关键词生成标识串。在一些实施例中,所述标识串的生成规则为:系统更新日期+检索关键词;所述标识串存储在特定的缓存空间中。在实际的应用场景中,如背景技术中所提及的越来越多的图书馆系统共享了自己的电子图书资源,故此这里的系统更新日期指的是任意一个图书馆系统更新电子图书资源的时间,如有四个图书馆共享了电子图书资源,在2020-04-14号时a图书馆进行了电子图书资源更新,此后直到2020-04-17期间均未进行任何更新,使用人员在2020-04-17进行检索,则此时其标识串中的系统更新日期为2020-04-14,同样的,使用人员在2020-04-16或2020-04-15间进行检索时,其标识串中的系统更新日期仍然为2020-04-14。
55.如某使用人员进行关键词检索:yyds,则其生成的标识串为:2020-04-14+yyds。
56.优选地,在一些实施例中,所述标识串存储在特定的缓存空间中。相较于现有的key-value而言,开辟特定的缓存空间对标识串进行存储,使得对标识串可以进行批量管理,而通过对标识串的批量管理,可以达到对缓存空间的自动清理,大大提高系统速度。
57.如对于同一关键词,当发现其存在多个标识串时,则可以只保留系统更新日期最近的那个标识串,其它标识串均进行清理。如对于同一个关键词大数据医疗,其存在三个标识串,2020-04-02+大数据医疗、2020-04-28+大数据医疗和2020-03-02+大数据医疗,则保留标识串:2020-04-28+大数据医疗,删除标识串:2020-04-02+大数据医疗和2020-03-02+大数据医疗。
58.在步骤s102中,根据所述标识串在缓存服务器中进行数据调用,若获取到数据,则将数据返回,若未获取到数据,则输入所述检索关键词至预先训练好的知识地图,得预设个数的目标关键词。
59.如:上述提及的标识串2020-04-14+yyds,根据该标识串判断缓存服务中是否存在同样的标识串,若存在,则直接获取该标识串对应的数据,并返回数据。
60.而若未获取到数据,则输入所述检索关键词至预先训练好的知识地图,得预设个数的目标关键词。在本技术中,并不直接先到数据库中进行调用,而是对检索关键词通过知识地图进行一个词性扩展,以使得后续检索结果更加全面准确。其中知识地图的训练如下:
61.对于所要建立知识地图的领域的知识点进行识别,知识点识别好后,用自行设计的机器学习的序列标注算法生成可以自动抽取知识点的模型,在一些实施例中使用hmm算法,将识别好的知识点输入至自动抽取知识点的模型进行模型训练,待训练好后,用训练好的模型对目标文档进行知识点识别,得到知识点集,最后通过word2vec算法计算词之间的关系,将知识点与相关性排序靠前的预设个数关联知识点链接,得到全局知识地图。
62.在得到目标关键词后,如在一些实施例中,设定选取关联关系排行在前面5位的关系词,接下来执行步骤s103。在步骤s103中,并根据所述目标关键词向数据库发起检索请求,返回检索结果。
63.在一些实施例中,优选地,如图2所示,步骤s103还包括:根据用户预先设定好的条
件返回检索结果;所述预先设定好的条件包括以下中的一种或多种:文件标题、文件简介、文件作者。需要说明的是,因考虑到返回速度及文档类别不同,故此,任意一个系统可以根据实际情况对返回结果做灵活调整,如某些文档其在乎的是文件的发表日期,则在返回的结果中就必须体现出文档的发表日期,类似于这样的条件限定可以根据实际情况做不同调整。
64.其中步骤s201、步骤s202、步骤s204和步骤s101、步骤s102、步骤s104相同,在此不做重复说明。
65.在步骤s104中,存储所述标识串和所述检索结果至所述缓存服务器。
66.在一些实施例中,优选地,如图3所示,在步骤s104后,还会包括步骤s305,在步骤s305中,判断所述特定的缓存空间中的同一检索关键词是否对应多个标识串,若是,则保留系统更新日期最新的那个标识串及其对应的数据,删除其它的标识串及其对应的数据。如此操作是为了每次检索之后顺便对缓存进行清理,避免不必要的资源空间浪费。
67.其中步骤s301-步骤s304与步骤s101-步骤s104相同,对此不做重复说明。
68.在一些实施例中,优选地,如图4所示,在步骤s102后,还会包括步骤s403:根据所述目标关键词生成标识串,根据所述标识串在缓存服务器中进行数据调用,若获取到数据,则将数据返回,若未获取到数据,则根据所述目标关键词向数据库发起检索请求,返回检索结果。
69.在该实施方式中,当得到目标关键词后,先直接根据这个目标关键词生成标识串到缓存服务器中进行数据调用,如上述提及的yyds,当其得到五个目标关键词:a、b、c、d、e后,可直接用这五个目标关键词来分别从缓存服务器中做检索,如此做是因为a、b、c、d、e本身就是yyds相关联的关键词,故此通过这五个关键词做出来的检索结果大概率上就会满足直接使用yyds检索的结果,故此,在一些实施例中,可以优选地,直接使用这些关键词来在缓存服务器中做检索,如此,可以减少对数据库的访问,提高检索效率,也减少服务器的负担。
70.在一些实施例中,当上述检索结果无法满足用户的检索要求时,用户则仍然可以选择在步骤s102后执行步骤s103,而非执行步骤s403。其中步骤s401-步骤s402与步骤s101-步骤s102相同,对此不做重复说明。
71.一种检索方法,包括:响应检索指令,获取检索关键词,根据所述关键词生成标识串;根据所述标识串在缓存服务器中进行数据调用,若获取到数据,则将数据返回,若未获取到数据,则输入所述检索关键词至预先训练好的知识地图,得预设个数的目标关键词;并根据所述目标关键词向数据库发起检索请求,返回检索结果;存储所述标识串和所述检索结果至所述缓存服务器。上述方法中先是使用知识地图使得面对语义模糊的关键词仍然可以获得其它与其语义相关联的关键词,而使用这些关键词去检索,可以大大增加检索结果的准确性,同时,先通过生成的标识串到缓存服务器中进行数据调用,当缓存服务器中存在对应数据时,则可以直接获取到数据,无需到数据库中获取,避免了对数据库的访问,提高响应速度的同时,减少了对数据库所在服务器的访问,减轻其负担。
72.进一步的,额外开辟特定的缓存空间用于存放标识串,如此可对标识串进行批量化管理和精细化管理,通过管理标识串进行缓存清理等等。
73.以下参阅图5,对一种存储设备500的具体实施方式展开说明:
74.一种存储设备500,其中存储有指令集,所述指令集用于执行:响应检索指令,获取检索关键词,根据所述关键词生成标识串。在一些实施例中,所述标识串的生成规则为:系统更新日期+检索关键词;所述标识串存储在特定的缓存空间中。在实际的应用场景中,如背景技术中所提及的越来越多的图书馆系统共享了自己的电子图书资源,故此这里的系统更新日期指的是任意一个图书馆系统更新电子图书资源的时间,如有四个图书馆共享了电子图书资源,在2020-04-14号时a图书馆进行了电子图书资源更新,此后直到2020-04-17期间均未进行任何更新,使用人员在2020-04-17进行检索,则此时其标识串中的系统更新日期为2020-04-14,同样的,使用人员在2020-04-16或2020-04-15间进行检索时,其标识串中的系统更新日期仍然为2020-04-14。
75.如某使用人员进行关键词检索:yyds,则其生成的标识串为:2020-04-14+yyds。
76.优选地,在一些实施例中,所述标识串存储在特定的缓存空间中。相较于现有的key-value而言,开辟特定的缓存空间对标识串进行存储,使得对标识串可以进行批量管理,而通过对标识串的批量管理,可以达到对缓存空间的自动清理,大大提高系统速度。
77.如对于同一关键词,当发现其存在多个标识串时,则可以只保留系统更新日期最近的那个标识串,其它标识串均进行清理。如对于同一个关键词大数据医疗,其存在三个标识串,2020-04-02+大数据医疗、2020-04-28+大数据医疗和2020-03-02+大数据医疗,则保留标识串:2020-04-28+大数据医疗,删除标识串:2020-04-02+大数据医疗和2020-03-02+大数据医疗。
78.根据所述标识串在缓存服务器中进行数据调用,若获取到数据,则将数据返回,若未获取到数据,则输入所述检索关键词至预先训练好的知识地图,得预设个数的目标关键词。
79.如:上述提及的标识串2020-04-14+yyds,根据该标识串判断缓存服务中是否存在同样的标识串,若存在,则直接获取该标识串对应的数据,并返回数据。
80.而若未获取到数据,则输入所述检索关键词至预先训练好的知识地图,得预设个数的目标关键词。在本技术中,并不直接先到数据库中进行调用,而是对检索关键词通过知识地图进行一个词性扩展,以使得后续检索结果更加全面准确。其中知识地图的训练如下:
81.对于所要建立知识地图的领域的知识点进行识别,知识点识别好后,用自行设计的机器学习的序列标注算法生成可以自动抽取知识点的模型,在一些实施例中使用hmm算法,将识别好的知识点输入至自动抽取知识点的模型进行模型训练,待训练好后,用训练好的模型对目标文档进行知识点识别,得到知识点集,最后通过word2vec算法计算词之间的关系,将知识点与相关性排序靠前的预设个数关联知识点链接,得到全局知识地图。
82.在得到目标关键词后,
83.并根据所述目标关键词向数据库发起检索请求,返回检索结果。具体可为:根据用户预先设定好的条件返回检索结果;所述预先设定好的条件包括以下中的一种或多种:文件标题、文件简介、文件作者。需要说明的是,因考虑到返回速度及文档类别不同,故此,任意一个系统可以根据实际情况对返回结果做灵活调整,如某些文档其在乎的是文件的发表日期,则在返回的结果中就必须体现出文档的发表日期,类似于这样的条件限定可以根据实际情况做不同调整。
84.存储所述标识串和所述检索结果至所述缓存服务器。
85.进一步的,所述指令集还用于执行:判断所述特定的缓存空间中的同一检索关键词是否对应多个标识串,若是,则保留系统更新日期最新的标识串,删除其它的标识串。如此操作是为了每次检索之后顺便对缓存进行清理,避免不必要的资源空间浪费。
86.进一步的,所述指令集还用于执行:得预设个数的目标关键词后,还包括:根据所述目标关键词生成标识串,根据所述标识串在缓存服务器中进行数据调用,若获取到数据,则将数据返回,若未获取到数据,则根据所述目标关键词向数据库发起检索请求,返回检索结果。
87.在该实施方式中,当得到目标关键词后,先直接根据这个目标关键词生成标识串到缓存服务器中进行数据调用,如上述提及的yyds,当其得到五个目标关键词:a、b、c、d、e后,可直接用这五个目标关键词来分别从缓存服务器中做检索,如此做是因为a、b、c、d、e本身就是yyds相关联的关键词,故此通过这五个关键词做出来的检索结果大概率上就会满足直接使用yyds检索的结果,故此,在一些实施例中,可以优选地,直接使用这些关键词来在缓存服务器中做检索,如此,可以减少对数据库的访问,提高检索效率,也减少服务器的负担。
88.上述存储设备500先是使用知识地图使得面对语义模糊的关键词仍然可以获得其它与其语义相关联的关键词,而使用这些关键词去检索,可以大大增加检索结果的准确性,同时,先通过生成的标识串到缓存服务器中进行数据调用,当缓存服务器中存在对应数据时,则可以直接获取到数据,无需到数据库中获取,避免了对数据库的访问,提高响应速度的同时,减少了对数据库所在服务器的访问,减轻其负担。
89.最后需要说明的是,尽管在本技术的说明书文字及附图中已经对上述各实施例进行了描述,但并不能因此限制本技术的专利保护范围。凡是基于本技术的实质理念,利用本技术说明书文字及附图记载的内容所作的等效结构或等效流程替换或修改产生的技术方案,以及直接或间接地将以上实施例的技术方案实施于其他相关的技术领域等,均包括在本技术的专利保护范围之内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1