一种全文检索的方法及系统技术方案

技术编号:34125448 阅读:17 留言:0更新日期:2022-07-14 14:05
本发明专利技术公开了一种全文检索的方法及系统,其中,搜索服务集群从待处理文档中检测并提取出文本内容,并将文本内容和文档的结构化数据一起作为文档内容发送至ES集群;ES集群将文档内容进行分词,得到分词结果,根据分词结果建立文档内容的索引文件,将索引文件和文档内容存储到分片中;ES集群在接收到搜索服务集群发送的检索请求时,由Lucene组件根据检索请求从分片中检索到对应文档。本发明专利技术实现了对非结构化数据的全文检索,从而使得用户可以在线对文档的文本内容进行全文检索,提高用户体验。提高用户体验。提高用户体验。

A method and system of full text retrieval

【技术实现步骤摘要】
一种全文检索的方法及系统


[0001]本专利技术涉及数据处理
,特别涉及一种全文检索的方法及系统。

技术介绍

[0002]在当前项目中,云文档存储的文件数据可分为两部分:结构化数据和非结构化数据。
[0003]其中,结构化数据部分包括所有者、所在的用户组、文件的大小、文件的类型和文件的MD5值等。针对这部分是已实现搜索,当前使用PostgreSQL数据库进行管理。
[0004]至于非结构化数据,这里特指各种文档的内容,比如DOC、PDF、TEXT等格式的文档中的文本内容。针对非结构化数据,由于关系型数据库(RDBMS)底层结构的缘故使得它管理大量非结构化数据显得有些先天不足,特别是查询这些海量非结构化数据的速度较慢。所以,当前项目中,未支持对文档内容的检索。

技术实现思路

[0005]本专利技术所要解决的技术问题是:提供一种全文检索的方法及系统,实现对非结构化数据的全文检索。
[0006]为了解决上述技术问题,本专利技术采用的技术方案为:
[0007]一种全文检索的方法,包括步骤:
[0008]搜索服务集群从待处理文档中检测并提取出文本内容,并将所述文本内容和所述文档的结构化数据一起作为文档内容发送至ES集群;
[0009]ES集群将所述文档内容进行分词,得到分词结果,根据所述分词结果建立所述文档内容的索引文件,将所述索引文件和所述文档内容存储到分片中;
[0010]ES集群在接收到搜索服务集群发送的检索请求时,由Lucene组件根据所述检索请求从所述分片中检索到对应文档。
[0011]为了解决上述技术问题,本专利技术采用的另一种技术方案为:
[0012]一种全文检索的系统,包括:
[0013]搜索服务集群,用于从待处理文档中检测并提取出文本内容,并将所述文本内容和所述文档的结构化数据一起作为文档内容发送至ES集群;
[0014]ES集群,用于将所述文档内容进行分词,得到分词结果,根据所述分词结果建立所述文档内容的索引文件,将所述索引文件和所述文档内容存储到分片中;用于在接收到搜索服务集群发送的检索请求时,由Lucene组件根据所述检索请求从所述分片中检索到对应文档。
[0015]本专利技术的有益效果在于:一种全文检索的方法及系统,由搜索服务集群从待处理文档中检测并提取出文本内容,并将文本内容和文档的结构化数据一起作为文档内容发送至ES集群,ES集群将文档内容进行分词、建立索引以及存储到分片之后。当用户发起检索时,ES集群在接收到搜索服务集群发送的检索请求时,由Lucene组件根据检索请求从分片
中检索到对应文档,实现了对非结构化数据的全文检索,从而使得用户可以在线对文档的文本内容进行全文检索,提高用户体验。
附图说明
[0016]图1为本专利技术实施例的一种全文检索的方法的流程示意图;
[0017]图2为本专利技术实施例的一种全文检索的系统的架构示意图;
[0018]图3为本专利技术实施例的一种全文检索的系统集成到云文档之后的架构示意图。
[0019]图4为本专利技术实施例涉及的ManageWeb与Search的关系示意图;
[0020]图5为本专利技术实施例涉及的DocEngine调用Search的关系示意图;
[0021]图6为本专利技术实施例涉及的Search调用DocEngine的关系示意图。
具体实施方式
[0022]为详细说明本专利技术的
技术实现思路
、所实现目的及效果,以下结合实施方式并配合附图予以说明。
[0023]在本专利技术中涉及到的缩略语和关键术语定义如下表1:
[0024]表1.缩略语和关键术语定义
[0025][0026]请参照图1,一种全文检索的方法,包括步骤:
[0027]搜索服务集群从待处理文档中检测并提取出文本内容,并将所述文本内容和所述文档的结构化数据一起作为文档内容发送至ES集群;
[0028]ES集群将所述文档内容进行分词,得到分词结果,根据所述分词结果建立所述文档内容的索引文件,将所述索引文件和所述文档内容存储到分片中;
[0029]ES集群在接收到搜索服务集群发送的检索请求时,由Lucene组件根据所述检索请
求从所述分片中检索到对应文档。
[0030]从上述描述可知,本专利技术的有益效果在于:由搜索服务集群从待处理文档中检测并提取出文本内容,并将文本内容和文档的结构化数据一起作为文档内容发送至ES集群,ES集群将文档内容进行分词、建立索引以及存储到分片之后。当用户发起检索时,ES集群在接收到搜索服务集群发送的检索请求时,由Lucene组件根据检索请求从分片中检索到对应文档,实现了对非结构化数据的全文检索,从而使得用户可以在线对文档的文本内容进行全文检索,提高用户体验。
[0031]进一步地,还包括以下步骤:
[0032]Nginx服务器通过负载均衡技术将用户请求分发至搜索服务集群中的搜索服务器上,所述搜索服务集群包括至少两个搜索服务器。
[0033]从上述描述可知,Nginx服务器通过负载均衡技术将用户请求进行分发,从而减轻了各个服务器的压力。
[0034]进一步地,所述将所述索引文件和所述文档内容存储到分片中具体为:
[0035]将所述索引文件和所述文档内容分布式存储分片上,所述ES集群包括有至少两个ES节点,每一个ES节点上至少包括一个主分片和一个副分片。
[0036]从上述描述可知,ES的分片机制保证了索引的高可用,也实现了索引的分布式存储和分布式搜索,ES的集群化,提供了高性能的搜索。
[0037]进一步地,所述ES集群将所述文档内容进行分词具体为:
[0038]所述ES集群通过集成的IK中文分词器将所述文档内容进行分词。
[0039]从上述描述可知,ES的标准分词器(Standard Analyzer)对中文的支持不友好,集成IK中文分词器,可以更好的处理中文文本,以达到更好的分词效果。
[0040]进一步地,所述搜索服务集群中的搜索服务器和所述ES集群中的ES节点均采用Docker容器化部署。
[0041]从上述描述可知,本专利技术采用了Docker容器化技术,整体作为一个子系统,可以稍微做少量的修改就能嵌套到其他项目中,可移植性强。
[0042]请参照图2至图6,一种全文检索的系统,包括:
[0043]搜索服务集群,用于从待处理文档中检测并提取出文本内容,并将所述文本内容和所述文档的结构化数据一起作为文档内容发送至ES集群;
[0044]ES集群,用于将所述文档内容进行分词,得到分词结果,根据所述分词结果建立所述文档内容的索引文件,将所述索引文件和所述文档内容存储到分片中;用于在接收到搜索服务集群发送的检索请求时,由Lucene组件根据所述检索请求从所述分片中检索到对应文档。
[0045]从上述描述可知,本专利技术的有益效果在于:由搜索服务集群从待处理文档中检测并提取出文本内容,并本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种全文检索的方法,其特征在于,包括步骤:搜索服务集群从待处理文档中检测并提取出文本内容,并将所述文本内容和所述文档的结构化数据一起作为文档内容发送至ES集群;ES集群将所述文档内容进行分词,得到分词结果,根据所述分词结果建立所述文档内容的索引文件,将所述索引文件和所述文档内容存储到分片中;ES集群在接收到搜索服务集群发送的检索请求时,由Lucene组件根据所述检索请求从所述分片中检索到对应文档。2.根据权利要求1所述的一种全文检索的方法,其特征在于,还包括以下步骤:Nginx服务器通过负载均衡技术将用户请求分发至搜索服务集群中的搜索服务器上,所述搜索服务集群包括至少两个搜索服务器。3.根据权利要求1所述的一种全文检索的方法,其特征在于,所述将所述索引文件和所述文档内容存储到分片中具体为:将所述索引文件和所述文档内容分布式存储分片上,所述ES集群包括有至少两个ES节点,每一个ES节点上至少包括一个主分片和一个副分片。4.根据权利要求1所述的一种全文检索的方法,其特征在于,所述ES集群将所述文档内容进行分词具体为:所述ES集群通过集成的IK中文分词器将所述文档内容进行分词。5.根据权利要求1所述的一种全文检索的方法,其特征在于,所述搜索服务集群中的搜索服务器和所述ES集群中的ES节点均采用Docker容器...

【专利技术属性】
技术研发人员:张辉刘剑彬
申请(专利权)人:福建升腾资讯有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1