搜索篇(1)Lucene全文检索工具库架构

上一篇文章《搜索篇(0)Lucene环境配置》讲解了Lucene环境的配置,在本篇文章中将介绍一下它的架构。Lucene是一个采用纯JAVA实现的高性能、可扩展的信息检索开源工具库,在2001年成为开源组织Apache Jakarta的成员项目。 需要强调的是,Lucene并不具备搜索引擎的完整特性,它只关注文本的索引和搜索,并提供了一套十分强大却又简单易用的核心API,隐藏了复杂的索引和搜索实现过程。所以可以简单的将Lucene视为应用程序下的一个接口层,如上图所示。

网络爬虫只为搜索引擎采集到海量文档信息,内容的有效检索还需要索引技术来实现。搜索引擎的索引器负责生成索引文件,其工作上下文结构如下图所示。 其中,文本解析器主要包括中文分词、垃圾信息过滤等模块,而中文分词(Chinese Word Segmentation)是对信息处理的基础,如果没有中文分词,根本无法建立高效的索引结构。

References: [1] Michael McCandless, Erik Hatcher, and Otis Gospodnetić, Lucene in Action(Second Edition) [2] https://baike.baidu.com/item/Lucene [3] https://lucene.apache.org/core/7_4_0/index.html [4] DUJUN QING, Android-based virtual chat robot development