【发布时间】:2009-06-05 20:45:24
【问题描述】:
我正在为 .net Web 应用程序使用 Lucene 搜索 API。 可以知道使用 MultiSearcher 的优缺点吗?应该在什么场景下使用?
感谢阅读!
【问题讨论】:
标签: lucene lucene.net
我正在为 .net Web 应用程序使用 Lucene 搜索 API。 可以知道使用 MultiSearcher 的优缺点吗?应该在什么场景下使用?
感谢阅读!
【问题讨论】:
标签: lucene lucene.net
MultiSearcher 的主要缺点是在将来自多个搜索者的结果合并为一组命中时存在一些开销。这类似于未优化索引所遭受的惩罚,尽管可能没有那么严重——这取决于涉及的搜索者数量。
但是,如果您有很多文档,或者需要经常更新,MultiSearcher 会非常有用。如果您有一个庞大的数据库,它允许您将文档分成组,以便在不同的机器上并行索引,然后一起搜索。如果您需要频繁更新,您可能会找到一个MultiSearcher,它有一个文件系统目录和一个 RAM 目录,可为您提供快速索引更新。新文档进入 RAM 目录,并定期将 RAM 目录的内容合并到文件系统目录中。
同时考虑ParallelMultiSearcher。根据您的机器架构和查询负载,这可能会造成伤害或帮助。如果您有许多内核,这可能会有所帮助,但线程会涉及额外的开销,因此需要在代表性负载下进行一些分析。
【讨论】: