0

我有一个更大的 Solr 索引大小。该索引包含 300 万份文档。我需要经常更新一些文件。但是每次 Solr 提交都需要一些时间,因为索引包含数百万个文档。每次提交都会打开一个新的搜索器。所以第一次执行搜索需要一些时间。有什么方法可以有效地更新文档吗?提前致谢。

4

1 回答 1

1

您可以检查 Solr 4软提交,这将使索引更快。新文档将在提交后立即可用,但不会持久保存到索引中。您可以决定偶尔执行一次硬提交。

文档

软提交要快得多,因为它只会使索引更改可见,并且不会 fsync 索引文件或写入新的索引描述符。如果 JVM 崩溃或断电,上次硬提交后发生的更改将丢失。具有近乎实时要求(希望索引更改对搜索快速可见)的搜索集合将希望经常进行软提交,但不太频繁地进行硬提交。

恢复可能可以通过事务日志来执行。

如果丢失文档对您来说是个问题,您可以为 Solr 配置主从架构。主站是索引发生的地方,而从站是执行搜索的地方,因此索引和提交时间不会对搜索产生太大影响。但是,会有延迟,并且取决于您的提交频率。

于 2013-06-12T06:40:38.090 回答