mongodb 同步到 elastic searh 的最佳方案是什么?

2017-08-18 07:51:26 +08:00
 SlipStupig
有一个需求将 mongodb 的数据增量同步到 ES 里面,用 mongo-connector 各种崩溃,数据无法同步完全,有什么方案可以更稳定的同步吗?
5836 次点击
所在节点    程序员
17 条回复
Yuansir
2017-08-18 08:46:22 +08:00
SlipStupig
2017-08-18 09:39:58 +08:00
@Yuansir ES 5.x Unsupport
Morriaty
2017-08-18 09:42:18 +08:00
崩溃指什么?
SlipStupig
2017-08-18 09:53:34 +08:00
@Morriaty 老是出现一些莫名奇妙的错误,比如:有重复记录它就会退出,然后重新启动之后依然提示有重复记录
Morriaty
2017-08-18 10:28:11 +08:00
不是有 ignore error 的参数吗,还有,重复记录,应该是可以配置 upsert 的吧
bengle
2017-08-18 10:48:41 +08:00
mongodb 数据打到 kafka,kafka 再往 ES 打
fzinfz
2017-08-18 11:52:14 +08:00
https://github.com/phutchins/logstash-input-mongodb
没用过,不过作为一款插件应该比较稳定吧
finull
2017-08-18 12:17:23 +08:00
river 现在都不支持了,现在就是 logstash
官方支持吧
SlipStupig
2017-08-18 14:08:01 +08:00
@bengle 这样有点绕吧....
@Morriaty 用哪个参数,主要是 mongo-connector 连个 help 都没有
hcymk2
2017-08-18 14:14:29 +08:00
@SlipStupig
其实也不算绕, 而且有现成的轮子可以用。
https://github.com/confluentinc
SlipStupig
2017-08-18 17:34:06 +08:00
@hcymk2 那我怎么把数据从 mongo 弄到 kafka 呢?
scriptB0y
2017-08-18 17:40:12 +08:00
写个程序一条一条 post 不行吗?
rayingecho
2017-08-18 18:06:30 +08:00
楼上已经有大佬说了 Confluent Plantform,我来补充一个 Connector:
Debezium http://debezium.io/docs/connectors/mongodb/
实时抓取数据源变更到 Kafka,支持 MySQL, PostgreSQL, Mongo
sxw11
2017-08-18 18:22:00 +08:00
今天刚搞完 NLog->Redis->ELK 的日志系统
楼主可以用 https://github.com/phutchins/logstash-input-mongodb 搭配 logstash 配置很简单
qiyuey
2017-08-18 18:28:44 +08:00
MySQL 的同步方案是:binlog -> databus -> kafka -> es
popbones
2017-08-18 19:53:24 +08:00
前阵子也有类似需求,懒得研究 mongoconnector,最后用 golong rachet 写了一个,读取和写入都很简单,主要是写写 transformation
mengskysama
2017-08-18 22:22:16 +08:00
完全可以自己造,这个代码不会超过 50 行,从 mgo 取数据_bulk 往 es 里面塞就行了,另 logstash 性能是几个采集工具性能最糟糕的,现在新的系统基本上都是 fluentd。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/383849

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX