当我需要在lucence.net索引中存储更多信息时,我需要做什么?

时间:2011-03-24 12:43:04

标签: search indexing lucene.net

在Lucene中,我需要添加一些有关搜索帖子的信息。为了更好地搜索,我需要添加标签名称或其他信息以进行更好的搜索。每当我有两个可能的选项来解决这个问题时,我会选择什么选项。

将标签附加到我所拥有的帖子的内容或摘录中。

或者制作一个新的索引来解决同样的难题。

如果我将它们附加到现有索引中或者在lucene中创建一个新索引来存储另一种信息,我需要知道有什么不同。

1 个答案:

答案 0 :(得分:0)

您应该将标记添加到单独的标记化tag字段。

典型的查询看起来像这样:

content:(+honda +civic) +tag:red +tag:hatchback

前两个字词(hondacivic)由用户输入,而后两个字词(redhatchback)将从列表中选择标签。

如果您想支持包含空格的标记,则必须通过继承CharTokenizer来推广自己的标记:Lucene.Net support phrases?: What is best approach to tokenize comma-delimited data (atomically) in fields during indexing?

+tag:"5 door"

您可以为tag字段创建单独的索引,但是您必须使用MultiSearcher来执行对分隔索引的组合搜索。