【发布时间】:2010-09-20 22:11:47
【问题描述】:
我想使用 lucene.net 来索引我们数据库中的记录。记录存储在几个不同的表中,并通过记录表连接在一起。分别索引每个表并在代码中将搜索结果捆绑在一起会更好,还是应该将数据库中的记录捆绑在一起并将它们全部放在一个索引中?
任何其他建议也会有所帮助。
【问题讨论】:
标签: c# database search lucene lucene.net
我想使用 lucene.net 来索引我们数据库中的记录。记录存储在几个不同的表中,并通过记录表连接在一起。分别索引每个表并在代码中将搜索结果捆绑在一起会更好,还是应该将数据库中的记录捆绑在一起并将它们全部放在一个索引中?
任何其他建议也会有所帮助。
【问题讨论】:
标签: c# database search lucene lucene.net
如果您创建一个对应于每个表的 Lucene 索引,那么 1) 您将不得不针对每个索引执行搜索,以及 2) 以某种神奇的方式合并搜索结果。 Lucene 已经设置为搜索具有多个字段的文档(请参阅 MultiFieldQueryParser),并为您提供统一的结果集。
即使您在创建索引后决定偶尔只想根据来自单个表的数据进行搜索,您也可以使用普通的 QueryParser 仅搜索文档的相应字段。
【讨论】:
Lucene 不依赖于数据库表,您可以在 Lucene 文档中选择所需的信息。我可能会更好让 Lucene 处理结果的合并和排名,而不是自己做。
【讨论】: