MongoDB Apache Kafka 的官方 MongoDB 源连接器 MongoDB-4.0
Official MongoDB Source Connector for Apache Kafka with MongoDB-4.0
我有一个要求,我必须捕获 MongoDB ChangeStream(inserts/updates 等)事件并采取一些行动(保存到 OracleDB)。
我想到了这个设计,好像还不错:
"MongoDB-ChangeStream" --> "MongoDB Source Connector for Apache Kafka" --> "Kafka Broker-Topic" --> "Java Service" --> OracleDB
我的问题是,我使用的是 MongoDB-4.0,而 "MongoDB Source Connector for Apache Kafka" 是在 MongoDB-4.2 中引入的。我还能在 MongoDB-4.0 中使用 "MongoDB Source Connector for Apache Kafka" 吗?
MongoDB Apache Kafka 的源连接器 - 官方页面:
https://www.confluent.io/hub/mongodb/kafka-connect-mongodb
"MongoDB Source Connector for Apache Kafka"的官方页面没有谈到MongoDB版本的任何先决条件。
我的第二个问题,这个(MongoDB Apache Kafka 的源连接器)可以在 Windows 上设置吗?
感谢任何帮助。
答案已经在documentation:
The Kafka Source Connector requires MongoDB 3.6 or later as your data
source if you are using change streams with a collection only. If you
need to watch a database or deployment, you need MongoDB 4.0 or later.
关于你的第二个问题;是的,可以在 Windows.
上 运行 Kafka
MongoDB(4.0) ChangeStreams 的工作解决方案,带有 Apache Kafka 的官方 MongoDB 连接器 (mongodb-kafka-connect-mongodb-1.1.0)不使用 Confluent Hub 客户端
- 下载官方 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
- 启动动物园管理员:
bin/zookeeper-server-start.sh config/zookeeper.properties
启动卡夫卡:
.\bin\windows\kafka-server-start.bat .\config\server.properties
启动 Kafka-Connect:
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 事件应该出现在该主题上。
我有一个要求,我必须捕获 MongoDB ChangeStream(inserts/updates 等)事件并采取一些行动(保存到 OracleDB)。 我想到了这个设计,好像还不错:
"MongoDB-ChangeStream" --> "MongoDB Source Connector for Apache Kafka" --> "Kafka Broker-Topic" --> "Java Service" --> OracleDB
我的问题是,我使用的是 MongoDB-4.0,而 "MongoDB Source Connector for Apache Kafka" 是在 MongoDB-4.2 中引入的。我还能在 MongoDB-4.0 中使用 "MongoDB Source Connector for Apache Kafka" 吗?
MongoDB Apache Kafka 的源连接器 - 官方页面: https://www.confluent.io/hub/mongodb/kafka-connect-mongodb
"MongoDB Source Connector for Apache Kafka"的官方页面没有谈到MongoDB版本的任何先决条件。
我的第二个问题,这个(MongoDB Apache Kafka 的源连接器)可以在 Windows 上设置吗?
感谢任何帮助。
答案已经在documentation:
The Kafka Source Connector requires MongoDB 3.6 or later as your data source if you are using change streams with a collection only. If you need to watch a database or deployment, you need MongoDB 4.0 or later.
关于你的第二个问题;是的,可以在 Windows.
上 运行 KafkaMongoDB(4.0) ChangeStreams 的工作解决方案,带有 Apache Kafka 的官方 MongoDB 连接器 (mongodb-kafka-connect-mongodb-1.1.0)不使用 Confluent Hub 客户端
- 下载官方 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
- 启动动物园管理员:
bin/zookeeper-server-start.sh config/zookeeper.properties
启动卡夫卡:
.\bin\windows\kafka-server-start.bat .\config\server.properties
启动 Kafka-Connect:
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 事件应该出现在该主题上。