【发布时间】:2025-11-21 20:50:01
【问题描述】:
我在我的应用程序中使用 mongodb 和 elasticsearch。 Elasticsearch 通过监控 oplog 收集来创建索引。当两个应用程序都在持续运行时,对 mongodb 中的集合的任何更改都会立即被索引。我面临的唯一问题是,如果由于某种原因我不得不删除并重新创建索引,那么索引编制需要很长时间(2 天)才能完成。
当我查看我的 oplog 的大小时,默认情况下它的容量是 40gb,它拥有大约 6000 万个事务,因此创建新索引需要很长时间。 优化新索引创建的最佳方法是什么?
是减小 oplog 的大小,使其拥有更少的事务,并且仍然不影响我的复制,还是可以在 oplog 上创建一个 ttl 索引(我多次尝试都失败了)。
我正在使用弹性搜索和 mongodb 使用 mongodb River https://github.com/richardwilly98/elasticsearch-river-mongodb/。
对克服上述问题的任何帮助表示赞赏。
【问题讨论】:
标签: mongodb elasticsearch