我正在努力优化我的Lucene索引,而且我不太确定Field.Store是什么。想知道我是否能得到一个体面的描述。
示例:
doc.Add(New Field("user", e.Username, Field.Store.YES, Field.Index.ANALYZED))
如果我的用户字段中存储了“用户”,并且我希望能够通过user:joe
搜索该用户,是否需要存储该字段Field.Store.YES
?我只是不太确定商店的运作方式。如果这意味着它不在索引中,那么将“user”字段放在索引中会是什么意思?
答案 0 :(得分:1)
Field.Store
在这个SO帖子Lucene indexing: Store and indexing modes explained
基本上,搜索匹配将包含设置为Field.Store.YES
的所有字段的数据,如果您有另一个存储机制(如DB),则不需要此项。如果您完全依赖Lucene,那么存储一些常见字段是合理的,至少有一个允许您访问磁盘上的原始文档。