首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 软件管理 > 软件架构设计 >

Lucene目录的建立

2012-11-05 
Lucene索引的建立?????? Lucene索引的建立需要两种基础的结构支持,它们分别是Document和Field,这两个概念

Lucene索引的建立

?????? Lucene索引的建立需要两种基础的结构支持,它们分别是Document和Field,这两个概念不能从字面意思上理解。其实Document是Field的集合,它其实主要是用来管理Field的,而Field是一种数据源,也就是要索引的东西。每个Field都有几个重要的属性,它们分别是:

???? 1 name:它是这个Field的名字。它主要是以后要搜索的时候用的,也就是要按照此名字来对此Field来检索。

???? 2 value:它是Field的具体的内容。

???? 3 store:它表明此Field是否需要存储,如果通过名字检索此Field后,要显示完整的Field的内容,那么就要将起属性设置为YES。

???? 4 index:它表明此Field是否需要索引。它可以有四种不同的值。分别是不索引,索引并且分词,索引不分词,以及不使用分析器来索引。

????? 搞清楚了Document和Field具体是什么后,就可以了解Lucene索引建立的具体过程了。索引的建立主要是有类IndexWriter来实现的,而实际上索引建立的工作是由DocumentWriter来完成的,IndexWriter主要是将索引中加入已经建立好的Document.通过DocumentWriter建立索引后,建立了如下的文件:segments,deletable,.f, .fdt,.fdx,.fnm,.frq,.prx,.tii,.tis。

??? 1? segments文件主要记录了索引中有多少个segment,以及每个segment有多少个Document等信息。

????2. fdt文件主要保存了Field的内容,并且它只保存Field属性被设置为YES的Field。

??? 3 .fdx文件则记录了Document在.fdt文件中的位置。

????4? .fnm文件记录了此segment中所有Document的所有Field的名字。

热点排行