01 lucene基础 北风网项目培训 Lucene实践课程 系统架构

时间:2023-03-10 05:34:56
01 lucene基础 北风网项目培训 Lucene实践课程 系统架构

01 lucene基础 北风网项目培训 Lucene实践课程 系统架构

Lucene在搜索的时候数据源可以是文件系统,数据库,web等等。

Lucene的搜索是基于索引,Lucene是基于前面建立的索引之上进行搜索的。

01 lucene基础 北风网项目培训 Lucene实践课程 系统架构

使用Lucene就像使用普通的数据库一样。

Lucene的核心包及其功能说明

01 lucene基础 北风网项目培训 Lucene实践课程 系统架构

01 lucene基础 北风网项目培训 Lucene实践课程 系统架构

Lucene要实现检索,需要有两个关键的环节:第一个环节:索引环节。从不同数据源(文件系统,数据库,web,手工输入等等)收集数据,收集完毕之后通过调用Lucene下面所提供的API来最后把生成的索引写入到索引文件中,这是第一个环节。第二个环节:搜索环节。搜索是建立在生成的索引基础之上进行搜索的。

Lucene的核心包类分为:索引相关的和搜索相关的。

Lucene的核心索引类

01 lucene基础 北风网项目培训 Lucene实践课程 系统架构

中文和英文各有一套停用词。

01 lucene基础 北风网项目培训 Lucene实践课程 系统架构

谷歌搜索一直错了

01 lucene基础 北风网项目培训 Lucene实践课程 系统架构

Document可以当做是关系数据库中的一条记录,在实际的处理过程中一个记录下面就可以包含多个字段。在实际的处理过程中的,Docuemnt的作用就是处理文本,把处理好的文本通过IndexWriter写入到索引文件中,这是Document类的作用。Field相当于关系型数据库中的列或者是字段,而关系型数据库的字段类型比较丰富,在这里Field类型的数据类型没有那么丰富。早先的版本Field在Lucene下面提供了四种类型,最新的版本中它是通过两个参数配合来实现的。Field类型的确认是通过Field下面两个属性:一个是Index,一个是Store。两个属性下面的对应的常量交叉配合来确定的。

01 lucene基础 北风网项目培训 Lucene实践课程 系统架构

Store有三个常量:YES,NO,COMPRESS。在实际使用过程中,通过Index和Store两个属性的相互配合,可以有多个Field类型来出现。例如,Index:ANALYZED,Store:YES表示要进行分词处理,要进行索引、存储。Index:ANALYZED,Store:NO表示进行分词处理,进行索引但是不进行存储操作。

通过Index和Store相互配合,可以出现多个Field类型来供我们选择和使用,这和原先Field提供的四种类型就是说这比早先版本的Lucene所提供的四种类型的要丰富的多。

01 lucene基础 北风网项目培训 Lucene实践课程 系统架构

IndexSearcher是索引式检索的基础:要先建立完索引之后,才能进行检索操作。Hits它的地位相当于在关系型数据库中进行检索之后返回的ResultSet字符集。

01 lucene基础 北风网项目培训 Lucene实践课程 系统架构

Lucene内部实现简析

01 lucene基础 北风网项目培训 Lucene实践课程 系统架构

01 lucene基础 北风网项目培训 Lucene实践课程 系统架构

01 lucene基础 北风网项目培训 Lucene实践课程 系统架构

01 lucene基础 北风网项目培训 Lucene实践课程 系统架构

01 lucene基础 北风网项目培训 Lucene实践课程 系统架构

01 lucene基础 北风网项目培训 Lucene实践课程 系统架构

01 lucene基础 北风网项目培训 Lucene实践课程 系统架构

01 lucene基础 北风网项目培训 Lucene实践课程 系统架构

Lucene的系统架构,了解Lucene的核心包和核心类,了解Lucene的内部实现的基本原理。