【Lucene】构建索引


【Lucene】构建索引_第1张图片
 

Lucene索引的过程是什么?

step1 收集待索引的原文档

从数据库、web等获取原文档。

 

step2 将原文档交给分词组件(Tokenizer)

此过程叫做Tokenize,得到的结果称为Token

 

会做如下几件事:

1.将文档分成一个个独立的单词

2.去除标点

3.去除停词(stopword)

 

step3 将得到的Token交给语言处理组件(Linguistic Processor)

此过程处理的结果是Term

 

会做如下几件事:

1.转为小写

2.将单词缩减为词根,如cars-->car

3.将单词转变为词根,如drove-->drive

 

step4 将得到的Term交给索引组件(Indexer)

 

会做如下几件事:

1.将得到的Term创建字典

2.对字典按字母排序

3.合并相同的Term为倒排文档链表

 

倒排索引

 

Norms

norms的范畴用于将加权因子写入索引。(关于文档和域加权操作见http://nemogu.iteye.com/admin/blogs/1452831)

搜索时,被搜索域的norms都被加载到内存中,用于relevance score。

 

 

你可能感兴趣的:(Lucene)