我需要捕获mongodb changestream(插入/更新等)事件并采取一些操作(保存到oracledb)。我想到了这个看起来不错的设计: "MongoDB-ChangeStream" --> "MongoDB Source Connector for Apache Kafka" --> "Kafka Broker-Topic" --> "Java Service" --> OracleDB
我的问题是,我使用的是mongodb-4.0,mongodb-4.2中引入了“用于apachekafka的mongodb源连接器”。我还可以在mongodb-4.0中使用“mongodb source connector for apache kafka”吗?
apache kafka的mongodb源连接器-官方页面:https://www.confluent.io/hub/mongodb/kafka-connect-mongodb
“用于ApacheKafka的mongodb源连接器”的官方页面并没有讨论mongodb版本的任何先决条件。
我的第二个问题,这个(用于apachekafka的mongodb源连接器)可以在windows上设置吗?
谢谢你的帮助。
2条答案
按热度按时间46scxncf1#
mongodb(4.0)changestreams的一个工作解决方案,带有apachekafka的官方mongodb连接器(mongodb-kafka-connect-mongodb-1.1.0),无需使用合流中心客户端
下载官方mongodb kafka连接器:
i. open https://www.confluent.io/hub/ ii. search "mongodb" iii. select from dropdown "MongoDB Connector for Apache Kafka" iv. Click on Download in Download installtion (note I am not using Confluent) v. unzip the downloaded file (on windows) eg. F:\software\mongodb\mongodb-kafka-connect-mongodb-1.1.0 vi. inside "etc" folder open file "MongoSourceConnector.properties" vii. Make only one change with respect to MongoDB url: connection.uri=mongodb://localhost:27017,localhost:27018 viii. One change in Kafka: In F:\software\kafka_2.12-2.4.1\config\connect-standalone.properties: plugin.path=F:\\software\\mongodb\\mongodb-kafka-connect-mongodb-1.1.0
启动zookeeper:bin/zookeeper-server-start.sh config/zookeeper.properties
开始Kafka:.\bin\windows\kafka-server-start.bat .\config\server.properties
启动Kafka连接:bin\windows\connect-standalone.bat config\connect-standalone.properties F:\software\mongodb\mongodb-kafka-connect-mongodb-1.1.0\etc\MongoSourceConnector.properties
将新文档添加到mongodb集合中,您应该创建一个新主题dbname.collectionname和changestream事件应该出现在此主题上。b5buobof2#
答案已经在文档中:
kafka源连接器要求mongodb 3.6或更高版本作为您的数据源(如果您仅对集合使用change streams)。如果需要监视数据库或部署,则需要mongodb4.0或更高版本。
关于你的第二个问题;是的,可以在windows上运行kafka。