mongodb - mongodb 和 Elasticsearch 的初始同步

标签 mongodb elasticsearch

在 mongodb 和 elasticsearch 之间进行初始同步的简单方法是什么。我用 https://github.com/richardwilly98/elasticsearch-river-mongodb同步任何更新。 River 的工作原理是跟踪 mongodb 副本集日志中的更改并将这些更改应用于 ES,但我如何才能将 mongodb 中已有的内容同步到 elasticsearch。

我看到的一个建议解决方案是转储 ( mongodump) 数据并恢复 ( mongorestore ),但不确定它对实时 mongo 数据库的影响。

最佳答案

这实际上是解决方案。 mongodump -u root -p '你的密码' --oplog oplog 还将复制我认为您的脚本工作所需的事务日志。 之后你在另一边做 mongorestore mongorestore --oplogReplay

另一种解决方案是使用“OplogReplay”脚本而不是您正在使用的脚本 当您第一次运行此脚本时,它会自动从源到目标进行初始同步 https://pypi.python.org/pypi/OplogReplay/ 推荐大家直接从github下载最新的代码 https://github.com/uberVU/mongo-oplogreplay

关于mongodb - mongodb 和 Elasticsearch 的初始同步,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16224518/

相关文章:

node.js - 如何在环回查询 Mongo 中获取聚合结果

python - 如何在Flask python应用程序中运行Elasticsearch的实例?

mongodb - Elasticsearch Rivers-如何用河指数制作正态指数?

elasticsearch - 基于输入的logstash Elasticsearch 输出配置

elasticsearch - .keyword已添加到Kibana中的所有字段以进行Elasticsearch可视化

mongodb - 如何在 MongoDB 上的 Grails 集成测试中回滚事务

ruby-on-rails - Mongoid 不持久关联

node.js - 如何在分组后对数组值进行排序 - mongodb

r - 使用 mongolite R 将数据框附加到现有集合

elasticsearch - Elasticsearch聚合分页