CN113918684A - 一种信息搜索方法、装置及设备 - Google Patents
一种信息搜索方法、装置及设备 Download PDFInfo
- Publication number
- CN113918684A CN113918684A CN202111241094.8A CN202111241094A CN113918684A CN 113918684 A CN113918684 A CN 113918684A CN 202111241094 A CN202111241094 A CN 202111241094A CN 113918684 A CN113918684 A CN 113918684A
- Authority
- CN
- China
- Prior art keywords
- keywords
- keyword
- bloom
- document
- search
- 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/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/33—Querying
- G06F16/3331—Query processing
- G06F16/334—Query execution
- G06F16/3344—Query execution using natural language analysis
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/33—Querying
- G06F16/335—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/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/38—Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually
- G06F16/383—Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually using metadata automatically derived from the content
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Library & Information Science (AREA)
- Computational Linguistics (AREA)
- Artificial Intelligence (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种信息搜索方法、装置及设备,该方法包括:获取用于搜索文档的目标关键词;将所述目标关键词包含的关键字输入布隆过滤器,以从文档集合中,筛选与所述关键字的布隆索引相对应的第一文档集合;基于所述目标关键词,对所述第一文档集合进行搜索,以得到包含所述目标关键词的第二文档集合。通过上述方式,本发明的方案可以有效提升搜索速度,缩短搜索时长。
Description
技术领域
本发明涉及信息搜索技术领域,具体涉及一种信息搜索方法、装置及设备。
背景技术
现有中文搜索技术无论是倒排索引等正向索引方式还是其他的搜索方案,都是根据索引全量扫描文档或者是建立了索引后,先扫描索引,再扫描文档,从而获得包含搜索关键字的文档信息。当文档数量巨大,通过全文扫描方式或者正向索引方式进行搜索耗时长、效率低。
发明内容
鉴于上述问题,提出了本发明实施例以便提供一种克服上述问题或者至少部分地解决上述问题的信息搜索方法、装置及设备。
根据本发明实施例的一个方面,提供了一种信息搜索方法,所述方法包括:
获取用于搜索文档的目标关键词;
将所述目标关键词包含的关键字输入布隆过滤器,以从文档集合中,筛选与所述关键字的布隆索引相对应的第一文档集合;
基于所述目标关键词,对所述第一文档集合进行搜索,以得到包含所述目标关键词的第二文档集合。
根据本发明实施例的另一方面,提供了一种信息搜索装置,所述装置包括:
获取模块,用于获取用于搜索文档的目标关键词;
处理模块,用于将所述目标关键词包含的关键字输入布隆过滤器,以从文档集合中,筛选与所述关键字的布隆索引相对应的第一文档集合;基于所述目标关键词,对所述第一文档集合进行搜索,以得到包含所述目标关键词的第二文档集合。
根据本发明实施例的又一方面,提供了一种计算设备,包括:处理器、存储器、通信接口和通信总线,所述处理器、所述存储器和所述通信接口通过所述通信总线完成相互间的通信;
所述存储器用于存放至少一可执行指令,所述可执行指令使所述处理器执行上述信息搜索方法对应的操作。
根据本发明实施例的再一方面,提供了一种计算机存储介质,所述存储介质中存储有至少一可执行指令,所述可执行指令使处理器执行如上述的信息搜索方法对应的操作。
根据本发明上述实施例提供的方案,信息搜索方法通过获取用于搜索文档的目标关键词;将所述目标关键词包含的关键字输入布隆过滤器,以从文档集合中,筛选与所述关键字的布隆索引相对应的第一文档集合;基于所述目标关键词,对所述第一文档集合进行搜索,以得到包含所述目标关键词的第二文档集合,有效提升了搜索速度,整体上大大缩短搜索时长,由此解决了现有技术中搜索耗时长、效率低的问题,取得了有效提升搜索速度,整体上大大缩短搜索时长的有益效果。
上述说明仅是本发明实施例技术方案的概述,为了能够更清楚了解本发明实施例的技术手段,而可依照说明书的内容予以实施,并且为了让本发明实施例的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明实施例的具体实施方式。
附图说明
通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本发明实施例的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:
图1示出了本发明实施例提供的信息搜索方法流程图;
图2示出了本发明实施例提供的信息搜索方法中布隆过滤器的优化过程的流程图;
图3示出了本发明的实施例提供的信息搜索方法的一具体实现流程示意图;
图4示出了本发明实施例提供的信息搜索装置的结构示意图;
图5示出了本发明实施例提供的计算设备的结构示意图。
具体实施方式
下面将参照附图更详细地描述本发明的示例性实施例。虽然附图中显示了本发明的示例性实施例,然而应当理解,可以以各种形式实现本发明而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本发明,并且能够将本发明的范围完整的传达给本领域的技术人员。
图1示出了本发明实施例提供的信息搜索方法的流程图。如图1所示,该方法包括以下步骤:
步骤11,获取用于搜索文档的目标关键词;一种实现的实例中,该步骤11可以包括:获取用户输入的用于搜索文档的搜索关键词集合;对所述待搜索关键词集合进行过滤,得到目标关键词;
步骤12,将所述目标关键词包含的关键字输入布隆过滤器,以从文档集合中,筛选与所述关键字的布隆索引相对应的第一文档集合;
步骤13,基于所述目标关键词,对所述第一文档集合进行搜索,以得到包含所述目标关键词的第二文档集合。
本发明的该实施例,通过获取用于搜索文档的目标关键词;将所述目标关键词包含的关键字输入布隆过滤器,以从文档集合中,筛选与所述关键字的布隆索引相对应的第一文档集合;基于所述目标关键词,对所述第一文档集合进行搜索,以得到包含所述目标关键词的第二文档集合,从而实现针对海量文档,构造基于搜索词相关性的布隆索引,搜索时,通过优化后的布隆过滤器,快速识别不包含搜索关键字的文档,排除这些文档后,得到第一文档集合,再基于当前的搜索技术对第一文档集合进行检索,即可搜索出包含中文搜索词的第二文档集合,有效提升了搜索速度,整体上大大缩短搜索时长。时间开销不再与原文大小和长度相关,而是一个常量开销,且开销时间极少。
本发明的一可选的实施例中,进一步地,上述步骤12可以包括:将所述目标关键词包含的关键字输入布隆过滤器,若所述目标关键词包含的关键字的布隆索引在所述布隆过滤器中的布隆索引中,则将所述目标关键词包含的关键字的布隆索引对应的文档形成的文档集合,作为所述第一文档集合。
本发明的一可选的实施例中,进一步地,上述步骤13可以包括:结合具体的搜索索引方式对上述第一文档集合进行搜索,比如对第一文档集合进行全量匹配的方法进行搜索,得到包含目标关键词的第二文档集合。
本发明的一可选的实施例中,所述布隆过滤器通过以下过程进行优化:
步骤21,获取历史搜索关键词;
步骤22,从所述历史搜索关键词中,确定存在相关性的关键字;
步骤23,根据所述关键字,优化布隆过滤器,以得到优化后的布隆过滤器。
该实施例中,步骤22可以包括:根据不同关键字同时出现在同一历史搜索关键词中的次数与预设阈值,从所述历史搜索关键词中,确定存在相关性的关键字。具体来说,该步骤可以包括:
步骤221,获取搜索词记录中的至少一个关键词以及每个关键词的搜索次数;
步骤222,根据至少一个关键词中的第一关键字和第二关键字同时出现在同一历史搜索关键词的次数与预设阈值,得到关键词的关键字相关性数据记录;
步骤223,按照所述关键字相关性数据记录中的关键字所在的搜索关键词的搜索次数,选取搜索次数大于一预设值的N个搜索关键词的关键字相关性数据记录,形成关键字相关性列表,N为正整数。
具体实现时,获取当前搜索系统的历史记录库中的已有搜索词记录,包括搜索关键词及搜索关键词的搜索次数,按单个汉字维度进行去重,并经过过滤词典过滤。
循环遍历搜索关键词列表,对单个搜索关键词中关键字进行统计,设置相关性阈值Q(即上述预设阈值),Q可根据系统日搜索量来设置,如果关键字A和关键字B同时出现在同一搜索关键词的次数大于Q,则认为这两个关键字相关性高;如果次数小于Q,则认为这两个关键字相关性低;同时相关性关键字按照搜索词次数从高到低排序,每个字最多保留布隆索引位数m-1个相关字,基于此,可以得如下数据结构列表:
(关键字A,搜索次数,相关字B、C、D)
(关键字B,搜索次数,相关字A、G)
……
基于此数据结构列表,得到相关性关键字列表T;
该实施例中,步骤23可以包括:
步骤231,对存在相关性的关键字形成的关键字相关性列表进行遍历,若遍历的当前关键字的相关关键字不在记录字典中,在所述记录字典中增加记录,所述记录包括当前关键字以及该当前关键字在布隆索引中的位置;
步骤232,若遍历的当前关键字的相关关键字在记录字典中,确定当前关键字在所述关键字相关性列表中的位置;
步骤233,根据所述当前关键字在所述关键字相关性列表中的位置,与所述记录字典中已有相关关键字的位置不重复,在所述记录字典中增加记录;
步骤234,若所述当前关键字在所述关键字相关性列表中的位置,与所述记录字典中已有相关关键字的位置重复,根据上次确定的所述当前关键字在所述关键字相关性列表中的位置进行计算,直到确定出的所述当前关键字在所述关键字相关性列表中的位置,与所述记录字典中已有相关关键字的位置不重复;
步骤235,根据所述关键字相关性列表中的所有关键字的位置,形成第一版本记录字典;
步骤236,遍历搜索文档中的当前字为所述关键字相关性列表中的字,依据所述记录字典表中的该当前字和布隆索引位置对应关系,标记该当前字的布隆索引;否则,直接对该当前字进行编码转换取余得到取余结果,根据该取余结果设置该当前字的布隆索引;
步骤237,根据所述搜索文档中的每个字的布隆索引,得到优化后的布隆过滤器。
具体实现时,设每个待搜索文档的布隆索引位为m位,优先确定相关性关键字列表T中汉字在布隆索引中位置。相关性关键字列表T中汉字的位置由其本身Unicode编码对m(假设m=127)进行取余及和其自身与其他字相关性两个因素来决定。
1)遍历相关性关键字列表T,对当前字取余,如果当前字的相关字不在字典表里,则当前字位置为Loc=Unicode(当前字)%m,在字典表里增加一行当前字记录(当前字,索引中位置);
2)如果当前字的相关字在字典表,Loc=Unicode(当前字)%m+k;(k首次为0),判断当前位置是否和字典中已有相关字位置重复,如果未重复,在字典表里增加一行当前字记录,处理下一个字;
3)如果重复则k=k+1;Loc=(Unicode(当前字)%m+k)%m,判断当前位置是否和字典中已有关键字位置重复,如果未重复,在字典表里增加一行当前字记录,处理下一个字;
4)如果重复,继续k=k+1,更新Loc,继续判断,直到得到当前位置和相关字都不重复的位置。
所有相关性关键字列表T中内容都设定位置后,进行其他常用汉字位置确定。
5)其他常用汉字位置为Loc(Q)=Unicode(当前字)%m。其他常用汉字位置不入字典表。字典表中内容为所有相关性关键字和其布隆索引位置对应关系;同时标记此初始字典表为版本0。
6)遍历每一个待搜索文档,如果当前字为相关性关键字列表中的汉字,依据字典表中的此字和索引位置对应关系,标记布隆索引;如果当前字为其他常用汉字,直接unicode取余设置布隆索引位置。到此所有文档的布隆索引已经建立完成。为和后续新增文档字典进行区分,布隆索引中预存特殊的两位,用于记录字典版本,这样得到的布隆过滤器为优化后的布隆过滤器。
本发明的一可选的实施例中,得到优化后的布隆过滤器后,还可以包括:
步骤24,获得新增加的搜索文档的关键字相关性列表;
步骤25,根据所述新增加的搜索文档的关键字相关性列表,对所述第一版本记录字典进行更新,得到更新后的第二版本记录字典;
步骤26,根据所述新增加的搜索文档以及所述更新后的第二记录字典,得到所述新增加的搜索文档的布隆索引;
步骤27,根据所述新增加的搜索文档的布隆索引对优化后的布隆过滤器进行更新,得到更新后的布隆过滤器。
具体实现时,系统搜索词的热度带有实效性,和此时间段的新文档的内容是有正向关系的,当前搜索次数多的搜索关键字往往是当前时段最热门的文档,比如当前一段热搜是“视频彩铃在5G下的演进”,其系统库里的此类的文档大多数也是近一阶段内生成并录入,所以对于系统中新增加的待搜索文档,其布隆索引的建立依据和上述方法一样,新统计出关键字列表,然后按照上述步骤1)至5)来建立新文档的布隆索引;此时新关键字列表生成的字典为版本1。新文档布隆索引中字典标记为1,由此实现了新文档加入时,布隆过滤器的弹性扩充,即得到更新后的布隆过滤器。
下面结合图2说明上述布隆过滤器的优化过程:
搜索当前搜索系统的历史搜索记录库;
遍历历史搜索记录库中每个待索引文档内容,并进行过滤;
根据标准布隆索引模板,比对并标识对应比特位,得到每个待索引文档对应布隆索引,得到优化的布隆过滤器。
下面结合图3说明上述搜索方法的整体流程:
步骤1:汉字里“的、地、得、之、了、是、在”等是汉字中使用最频繁的,但是对于搜索来说毫无意义的内容,针对这类汉字,系统设置过滤词库来标识。将待搜索的中文搜索关键词,通过词典过滤模块去除过滤词库中上述无意义的内容,可以提高搜索效率,更精确命中搜索结果。过滤词库中内容,采用如下三种方式获得:1)通过管理页面人工编辑增加;2)搜索汉字中使用频率最高的汉字,从中筛选对搜索无意义汉字,入屏蔽词库;3)根据中文中词性来设置,助动词,介词词性汉字初始入到过滤词库中;
用户输入中文搜索关键字,经过去过滤词后,得到过滤后的搜索关键字。
步骤2:取过滤后的搜索关键词传入优化后的布隆过滤器,经过布隆过滤器模块进行过滤,遍历布隆过滤器中每个索引,判断搜索词是否不在该布隆索引中,如果不在,忽略该索引,如果存在,则将该索引对应的文档记录到第一文档集合中。
步骤3:将第一文档集合中,结合预设搜索索引方式进行目标关键词的搜索匹配,得到包含目标关键词的第二文档集合。
本发明的上述实施例,通过利用已有搜索词记录,分析搜索关键字的相关性,将相关性大的字设置到不同的标志位中,来压缩布隆过滤器布隆索引标记位长度,可以有效节约存储空间,同时使布隆过滤效果达到最佳,并加快搜索速度,检索耗时短。
图4示出了本发明实施例提供的信息搜索装置的结构示意图。如图4所示,该装置40包括:
获取模块41,用于获取用于搜索文档的目标关键词;
处理模块42,用于将所述目标关键词包含的关键字输入布隆过滤器,以从文档集合中,筛选与所述关键字的布隆索引相对应的第一文档集合;基于所述目标关键词,对所述第一文档集合进行搜索,以得到包含所述目标关键词的第二文档集合。
可选的,所述布隆过滤器,通过以下过程优化得到:
获取历史搜索关键词;
从所述历史搜索关键词中,确定存在相关性的关键字;
根据所述关键字,优化布隆过滤器,以得到优化后的布隆过滤器。
可选的,从所述历史搜索关键词中,确定存在相关性的关键字,包括:
根据不同关键字同时出现在同一历史搜索关键词中的次数与预设阈值,从所述历史搜索关键词中,确定存在相关性的关键字。
可选的,根据所述关键字,优化布隆过滤器,以得到优化后的布隆过滤器,包括:
对存在相关性的关键字形成的关键字相关性列表进行遍历,若遍历的当前关键字的相关关键字不在记录字典中,在所述记录字典中增加记录,所述记录包括当前关键字以及该当前关键字在布隆索引中的位置;
若遍历的当前关键字的相关关键字在记录字典中,确定当前关键字在所述关键字相关性列表中的位置;
根据所述当前关键字在所述关键字相关性列表中的位置,与所述记录字典中已有相关关键字的位置不重复,在所述记录字典中增加记录;
若所述当前关键字在所述关键字相关性列表中的位置,与所述记录字典中已有相关关键字的位置重复,根据上次确定的所述当前关键字在所述关键字相关性列表中的位置进行计算,直到确定出的所述当前关键字在所述关键字相关性列表中的位置,与所述记录字典中已有相关关键字的位置不重复;
根据所述关键字相关性列表中的所有关键字的位置,形成第一版本记录字典;
遍历搜索文档中的当前字为所述关键字相关性列表中的字,依据所述记录字典表中的该当前字和布隆索引位置对应关系,标记该当前字的布隆索引;否则,直接对该当前字进行编码转换取余得到取余结果,根据该取余结果设置该当前字的布隆索引;
根据所述搜索文档中的每个字的布隆索引,得到优化后的布隆过滤器。
可选的,得到优化后的布隆过滤器后,还包括:
获得新增加的搜索文档的关键字相关性列表;
根据所述新增加的搜索文档的关键字相关性列表,对所述第一版本记录字典进行更新,得到更新后的第二版本记录字典;
根据所述新增加的搜索文档以及所述更新后的第二记录字典,得到所述新增加的搜索文档的布隆索引;
根据所述新增加的搜索文档的布隆索引对优化后的布隆过滤器进行更新,得到更新后的布隆过滤器。
可选的,获取用于搜索文档的目标关键词,包括:
获取用户输入的用于搜索文档的搜索关键词集合;
对所述待搜索关键词集合进行过滤,得到目标关键词。
可选的,将所述目标关键词包含的关键字输入布隆过滤器,以从文档集合中,筛选与所述关键字的布隆索引相对应的第一文档集合,包括:
将所述目标关键词包含的关键字输入布隆过滤器,若所述目标关键词包含的关键字的布隆索引在所述布隆过滤器中的布隆索引中,则将所述目标关键词包含的关键字的布隆索引对应的文档形成的文档集合,作为所述第一文档集合。
需要说明的是,该装置是与上述方法对应的装置,上述方法中的所有实现方式均适用于该装置的实施例中,也能达到相同的技术效果。
本发明实施例提供了一种非易失性计算机存储介质,所述计算机存储介质存储有至少一可执行指令,该计算机可执行指令可执行上述任意方法实施例中的信息搜索方法。
图5示出了本发明实施例提供的计算设备的结构示意图,本发明具体实施例并不对计算设备的具体实现做限定。
如图5所示,该计算设备可以包括:处理器(processor)、通信接口(Communications Interface)、存储器(memory)、以及通信总线。
其中:处理器、通信接口、以及存储器通过通信总线完成相互间的通信。通信接口,用于与其它设备比如客户端或其它服务器等的网元通信。处理器,用于执行程序,具体可以执行上述用于计算设备的信息搜索方法实施例中的相关步骤。
具体地,程序可以包括程序代码,该程序代码包括计算机操作指令。
处理器可能是中央处理器CPU,或者是特定集成电路ASIC(ApplicationSpecificIntegrated Circuit),或者是被配置成实施本发明实施例的一个或多个集成电路。计算设备包括的一个或多个处理器,可以是同一类型的处理器,如一个或多个CPU;也可以是不同类型的处理器,如一个或多个CPU以及一个或多个ASIC。
存储器,用于存放程序。存储器可能包含高速RAM存储器,也可能还包括非易失性存储器(non-volatile memory),例如至少一个磁盘存储器。
程序具体可以用于使得处理器执行上述任意方法实施例中的信息搜索方法。程序中各步骤的具体实现可以参见上述信息搜索方法实施例中的相应步骤和单元中对应的描述,在此不赘述。所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的设备和模块的具体工作过程,可以参考前述方法实施例中的对应过程描述,在此不再赘述。
在此提供的算法或显示不与任何特定计算机、虚拟系统或者其它设备固有相关。各种通用系统也可以与基于在此的示教一起使用。根据上面的描述,构造这类系统所要求的结构是显而易见的。此外,本发明实施例也不针对任何特定编程语言。应当明白,可以利用各种编程语言实现在此描述的本发明实施例的内容,并且上面对特定语言所做的描述是为了披露本发明实施例的最佳实施方式。
在此处所提供的说明书中,说明了大量具体细节。然而,能够理解,本发明的实施例可以在没有这些具体细节的情况下实践。在一些实例中,并未详细示出公知的方法、结构和技术,以便不模糊对本说明书的理解。
类似地,应当理解,为了精简本发明实施例并帮助理解各个发明方面中的一个或多个,在上面对本发明的示例性实施例的描述中,本发明实施例的各个特征有时被一起分组到单个实施例、图、或者对其的描述中。然而,并不应将该公开的方法解释成反映如下意图:即所要求保护的本发明实施例要求比在每个权利要求中所明确记载的特征更多的特征。更确切地说,如下面的权利要求书所反映的那样,发明方面在于少于前面公开的单个实施例的所有特征。因此,遵循具体实施方式的权利要求书由此明确地并入该具体实施方式,其中每个权利要求本身都作为本发明的单独实施例。
本领域那些技术人员可以理解,可以对实施例中的设备中的模块进行自适应性地改变并且把它们设置在与该实施例不同的一个或多个设备中。可以把实施例中的模块或单元或组件组合成一个模块或单元或组件,以及此外可以把它们分成多个子模块或子单元或子组件。除了这样的特征和/或过程或者单元中的至少一些是相互排斥之外,可以采用任何组合对本说明书(包括伴随的权利要求、摘要和附图)中公开的所有特征以及如此公开的任何方法或者设备的所有过程或单元进行组合。除非另外明确陈述,本说明书(包括伴随的权利要求、摘要和附图)中公开的每个特征可以由提供相同、等同或相似目的的替代特征来代替。
此外,本领域的技术人员能够理解,尽管在此的一些实施例包括其它实施例中所包括的某些特征而不是其它特征,但是不同实施例的特征的组合意味着处于本发明的范围之内并且形成不同的实施例。例如,在下面的权利要求书中,所要求保护的实施例的任意之一都可以以任意的组合方式来使用。
本发明的各个部件实施例可以以硬件实现,或者以在一个或者多个处理器上运行的软件模块实现,或者以它们的组合实现。本领域的技术人员应当理解,可以在实践中使用微处理器或者数字信号处理器(DSP)来实现根据本发明实施例的一些或者全部部件的一些或者全部功能。本发明实施例还可以实现为用于执行这里所描述的方法的一部分或者全部的设备或者装置程序(例如,计算机程序和计算机程序产品)。这样的实现本发明实施例的程序可以存储在计算机可读介质上,或者可以具有一个或者多个信号的形式。这样的信号可以从因特网网站上下载得到,或者在载体信号上提供,或者以任何其他形式提供。
应该注意的是上述实施例对本发明实施例进行说明而不是对本发明进行限制,并且本领域技术人员在不脱离所附权利要求的范围的情况下可设计出替换实施例。在权利要求中,不应将位于括号之间的任何参考符号构造成对权利要求的限制。单词“包含”不排除存在未列在权利要求中的元件或步骤。位于元件之前的单词“一”或“一个”不排除存在多个这样的元件。本发明实施例可以借助于包括有若干不同元件的硬件以及借助于适当编程的计算机来实现。在列举了若干装置的单元权利要求中,这些装置中的若干个可以是通过同一个硬件项来具体体现。单词第一、第二、以及第三等的使用不表示任何顺序。可将这些单词解释为名称。上述实施例中的步骤,除有特殊说明外,不应理解为对执行顺序的限定。
Claims (10)
1.一种信息搜索方法,其特征在于,所述方法包括:
获取用于搜索文档的目标关键词;
将所述目标关键词包含的关键字输入布隆过滤器,以从文档集合中,筛选与所述关键字的布隆索引相对应的第一文档集合;
基于所述目标关键词,对所述第一文档集合进行搜索,以得到包含所述目标关键词的第二文档集合。
2.根据权利要求1所述的信息搜索方法,其特征在于,所述布隆过滤器,通过以下过程优化得到:
获取历史搜索关键词;
从所述历史搜索关键词中,确定存在相关性的关键字;
根据所述关键字,优化布隆过滤器,以得到优化后的布隆过滤器。
3.根据权利要求2所述的信息搜索方法,其特征在于,从所述历史搜索关键词中,确定存在相关性的关键字,包括:
根据不同关键字同时出现在同一历史搜索关键词中的次数与预设阈值,从所述历史搜索关键词中,确定存在相关性的关键字。
4.根据权利要求2所述的信息搜索方法,其特征在于,根据所述关键字,优化布隆过滤器,以得到优化后的布隆过滤器,包括:
对存在相关性的关键字形成的关键字相关性列表进行遍历,若遍历的当前关键字的相关关键字不在记录字典中,在所述记录字典中增加记录,所述记录包括当前关键字以及该当前关键字在布隆索引中的位置;
若遍历的当前关键字的相关关键字在记录字典中,确定当前关键字在所述关键字相关性列表中的位置;
根据所述当前关键字在所述关键字相关性列表中的位置,与所述记录字典中已有相关关键字的位置不重复,在所述记录字典中增加记录;
若所述当前关键字在所述关键字相关性列表中的位置,与所述记录字典中已有相关关键字的位置重复,根据上次确定的所述当前关键字在所述关键字相关性列表中的位置进行计算,直到确定出的所述当前关键字在所述关键字相关性列表中的位置,与所述记录字典中已有相关关键字的位置不重复;
根据所述关键字相关性列表中的所有关键字的位置,形成第一版本记录字典;
遍历搜索文档中的当前字为所述关键字相关性列表中的字,依据所述记录字典表中的该当前字和布隆索引位置对应关系,标记该当前字的布隆索引;否则,直接对该当前字进行编码转换取余得到取余结果,根据该取余结果设置该当前字的布隆索引;
根据所述搜索文档中的每个字的布隆索引,得到优化后的布隆过滤器。
5.根据权利要求2所述的信息搜索方法,其特征在于,得到优化后的布隆过滤器后,还包括:
获得新增加的搜索文档的关键字相关性列表;
根据所述新增加的搜索文档的关键字相关性列表,对所述第一版本记录字典进行更新,得到更新后的第二版本记录字典;
根据所述新增加的搜索文档以及所述更新后的第二记录字典,得到所述新增加的搜索文档的布隆索引;
根据所述新增加的搜索文档的布隆索引对优化后的布隆过滤器进行更新,得到更新后的布隆过滤器。
6.根据权利要求1所述的信息搜索方法,其特征在于,获取用于搜索文档的目标关键词,包括:
获取用户输入的用于搜索文档的搜索关键词集合;
对所述待搜索关键词集合进行过滤,得到目标关键词。
7.根据权利要求6所述的信息搜索方法,其特征在于,将所述目标关键词包含的关键字输入布隆过滤器,以从文档集合中,筛选与所述关键字的布隆索引相对应的第一文档集合,包括:
将所述目标关键词包含的关键字输入布隆过滤器,若所述目标关键词包含的关键字的布隆索引在所述布隆过滤器中的布隆索引中,则将所述目标关键词包含的关键字的布隆索引对应的文档形成的文档集合,作为所述第一文档集合。
8.一种信息搜索装置,其特征在于,所述装置包括:
获取模块,用于获取用于搜索文档的目标关键词;
处理模块,用于将所述目标关键词包含的关键字输入布隆过滤器,以从文档集合中,筛选与所述关键字的布隆索引相对应的第一文档集合;基于所述目标关键词,对所述第一文档集合进行搜索,以得到包含所述目标关键词的第二文档集合。
9.一种计算设备,包括:处理器、存储器、通信接口和通信总线,所述处理器、所述存储器和所述通信接口通过所述通信总线完成相互间的通信;
所述存储器用于存放至少一可执行指令,所述可执行指令使所述处理器执行如权利要求1-7中任一项所述的信息搜索方法对应的操作。
10.一种计算机存储介质,所述存储介质中存储有至少一可执行指令,所述可执行指令使处理器执行如权利要求1-7中任一项所述的信息搜索方法对应的操作。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111241094.8A CN113918684A (zh) | 2021-10-25 | 2021-10-25 | 一种信息搜索方法、装置及设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111241094.8A CN113918684A (zh) | 2021-10-25 | 2021-10-25 | 一种信息搜索方法、装置及设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113918684A true CN113918684A (zh) | 2022-01-11 |
Family
ID=79242703
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111241094.8A Pending CN113918684A (zh) | 2021-10-25 | 2021-10-25 | 一种信息搜索方法、装置及设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113918684A (zh) |
-
2021
- 2021-10-25 CN CN202111241094.8A patent/CN113918684A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10452691B2 (en) | Method and apparatus for generating search results using inverted index | |
US9195738B2 (en) | Tokenization platform | |
JP5616444B2 (ja) | 文書インデックス化およびデータクエリングのための方法およびシステム | |
CN112579155B (zh) | 代码相似性检测方法、装置以及存储介质 | |
CN110888981B (zh) | 基于标题的文档聚类方法、装置、终端设备及介质 | |
JP4114600B2 (ja) | 可変長文字列検索装置及び可変長文字列検索方法並びにプログラム | |
CN102867049A (zh) | 一种基于单词查找树实现的汉语拼音快速分词方法 | |
RU2568276C2 (ru) | Способ извлечения полезного контента из установочных файлов мобильных приложений для дальнейшей машинной обработки данных, в частности поиска | |
EP3301603A1 (en) | Improved search for data loss prevention | |
CN114297143A (zh) | 一种搜索文件的方法、显示文件的方法、装置及移动终端 | |
CN116126997B (zh) | 一种文献去重存储方法、系统、设备及存储介质 | |
CN111160445B (zh) | 投标文件相似度计算方法及装置 | |
CN113918684A (zh) | 一种信息搜索方法、装置及设备 | |
JP2020160494A (ja) | 情報処理装置、文書管理システム及びプログラム | |
CN110543622A (zh) | 文本相似度检测方法、装置、电子设备及可读存储介质 | |
CN112597106A (zh) | 一种文档页面跳转方法及系统 | |
CN112380445A (zh) | 数据查询方法、装置、设备和存储介质 | |
JPH08190571A (ja) | 文書検索方法 | |
CN110866092B (zh) | 信息搜索方法、装置、电子设备和存储介质 | |
KR20020006223A (ko) | 자동 색인 로봇 시스템 및 이를 이용한 처리 방법 | |
CN113836906B (zh) | 标书生成方法、装置及服务器 | |
JPH07120355B2 (ja) | 画像情報記憶検索方法 | |
JP2008293070A (ja) | 文書解析システム、および文書解析方法、並びにコンピュータ・プログラム | |
JPH0668159A (ja) | 検索装置 | |
CN111078962A (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 |