全文检索:是指以文本作为检索对象,找出含有指定词汇的文本。
全文检索功能的开发,要做的有两个方面:
1、索引库管理(维护索引库中的数据)
2、索引库中进行搜索。
而Lucene就是操作索引库的工具。
使用lucene的API操作索引库
对索引库的操作可以分为两种:管理与查询。
管理索引库使用IndexWriter,从索引库中查询使用IndexSearcher。
Lucene的数据结构为Document与Field。
Document代表一条数据,Field代表数据中的一个属性。一个Document中有多个Field,Field的值为String型,因为Lucene只处理文本。
我们只需要把在我们的程序中的对象转成Document,就可以交给Lucene管理了,搜索的结果中的数据列表也是Document的集合。
倒排序索引的原理就如同查字典。
要先查目录,得到数据对应的页码,在直接翻到指定的页码。不是在文章中找词,而是从目录中找词所在的文章。
这需要在索引库中生成一个词汇表(目录),在词汇表中的每一条记录都是类似于"词所在文档的编号列表"的结构,记录了每一个出现过的单词,和单词出现的地方(哪些文档)。
查询时先查词汇表,得到文档的编号,再直接取出相应的文档。
相关推荐
Lucene是一个高性能的java全文检索工具包,它使用的是倒排文件索引结构。该结构及相应的生成算法如下:...
lucene原理分析完整版,中文Lucene 原理与代码分析完整版
Lucene 原理 Lucene 原理与代码分析完整版.
Lucene 3.0 原理 Lucene 3.0 原理 Lucene 3.0 原理 Lucene 3.0 原理
资源名称:Lucene 原理与代码分析完整版资源截图: 资源太大,传百度网盘了,链接在附件中,有需要的同学自取。
由浅入深的并详细地对lucene原理与代码做精确地分析,是一本非常好的学习lucene的资料。
Lucene 原理与代码分析.pdf
Lucene 原理与代码分析完整版.MOBI
详细描述几乎最新版本的Lucene的基本原理和代码分析。
Lucene 搜索引擎 自然语言 全文检索的基本原理
Lucene的详细pdf文档(我都免积分下载的,但是只能最低选1积分,如果有办法的话,请大佬留言指教)
基于 Java 的全文信息检索工具包 基于Java编写 一个小实例
lucene 原理 代码分析, 讲得系统齐全
LUCENE搜索引擎基本工作原理 详细介绍了搜索引擎的工作原理
lucene索引结构原理
Lucene是apache软件基金会4 jakarta项目组的一个子项目,是一个开放源代码的全文检索引擎工具包,即它不是一个完整的全文检索引擎,而是一个全文检索引擎的架构,提供了完整的查询引擎和索引引擎,部分文本分析引擎...