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