1

我的搜索后端尝试从 Solr 3.6 升级到 Solr 4.0。

现有的基于 Solr 3.6 的架构有 1 个主 Solr 节点和 2 个从属 Solr 节点用于负载均衡,其主节点仅用于更新文档,从节点是只读的。一切 N 分钟,文档被提交到主节点,然后从节点轮询索引文档并安装它们,因此这些文档是可见的。

在 Solr 4.0 中,因为软提交的文档没有同步到磁盘文件,我的问题是,如果我升级到 Solr 4.0 并且不使用 SolrCloud,软提交的文档到主 Solr 节点是否立即对从属节点可见。

如果这些对奴隶可见,它是如何工作的,通过动物园管理员?

4

1 回答 1

5

solr pull 复制机制只是将段文件复制到磁盘上,仅此而已。软提交的文档不在磁盘上(尚未 fsync,这是在提交发生时完成的),这就是为什么在复制时它们不会被拉取。

就像 elasticsearch 一直做的那样,SolrCloud 使用推送方法。当您索引文档时,它们将在它们应该被索引的所有节点上被索引。这就是为什么在它们被索引的所有节点上都可以看到软提交文档的原因。

于 2013-01-07T10:05:34.600 回答