SOLR 复制不断从主服务器下载整个索引

发布于 2024-11-17 02:20:14 字数 222 浏览 3 评论 0原文

我有 2 个从站从具有 17GB 索引的主站复制。我将两个从站同步到此,之后将轮询间隔设置为 60 秒。

其中一个从站尝试下载整个 17GB 索引,即使其中只有一小部分发生了变化。另一个不这样做 - 它能够获得最新的索引,而无需这种强力同步。冗余下载导致我超出了磁盘空间配额,因为下载 17GB 需要 60 秒以上,并且 solr 开始第二次同步到另一个临时目录。

有人对如何调试这个有任何提示吗?

I have 2 slaves replicating from a master that has a 17GB index. I synced both slaves to this, AFTER which I set the poll interval to 60 seconds.

One of the slaves tries to download the entire 17GB index even if only a tiny portion of it has changed. The other does not do this - it is able to get the latest index without this brute force sync. The redundant downloading causes me to exceed my disk space quota because it takes more than 60 seconds to download 17GB and solr kicks off a 2nd sync into yet another temporary directory.

Does anyone have any tips on how to debug this?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

╰◇生如夏花灿烂 2024-11-24 02:20:14

我只能看到三个可能的原因:

  1. 在时间间隔内触发优化,导致所有底层段被合并。请参阅:优化性能
  2. 您正在使用过高的合并因子运行,导致索引合并每次提交。请参阅:合并因子
  3. 您正在使用复合文件运行。请参阅配置:false 这也会导致每次提交时进行段合并。

我能想到如何调试此问题的唯一方法是使用 Solr Replication HTTP API 手动进行复制

使用以下命令禁用复制并观察 Solr master 中的文件如何更新:
http://host:port/solr/replication?command=indexversion

后跟:

http://host:port/solr/replication?command=indexversion

希望这有帮助!

I can only see three possible causes of this:

  1. An optimize is triggered during the time interval causing all of the underlying segmets to be merged. See: Optimize performance
  2. You're running with an exessivly high merge factor causing your index to merge with every commit. See: Merge factor
  3. You're running with compund files. See the config: <useCompoundFile>false</useCompoundFile> This also causes a segment merge at every commit.

The only way I can think of how to debug this is by manually makingt the replication with the Solr Replication HTTP API.

Disable the replication and watch how files are updated in the Solr master with the command:
http://host:port/solr/replication?command=indexversion

followed by:

http://host:port/solr/replication?command=indexversion

Hope this helps!

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文