【问题标题】:Official MongoDB Source Connector for Apache Kafka with MongoDB-4.0带有 MongoDB-4.0 的 Apache Kafka 的官方 MongoDB 源连接器
【发布时间】:2020-08-23 11:01:15
【问题描述】:

我有一个要求,我必须捕获 MongoDB ChangeStream(插入/更新等)事件并采取一些行动(保存到 OracleDB)。 我想到了这个似乎不错的设计:

"MongoDB-ChangeStream" --> "MongoDB Source Connector for Apache Kafka" --> "Kafka Broker-Topic" --> "Java Service" --> OracleDB

我的问题是,我使用的是 MongoDB-4.0,并且在 MongoDB-4.2 中引入了“MongoDB Source Connector for Apache Kafka”。我还能在 MongoDB-4.0 中使用“MongoDB Source Connector for Apache Kafka”吗?

Apache Kafka 的 MongoDB 源连接器 - 官方页面: https://www.confluent.io/hub/mongodb/kafka-connect-mongodb

“MongoDB Source Connector for Apache Kafka”官方页面并没有谈及MongoDB版本方面的任何先决条件。

我的第二个问题,这个(Apache Kafka 的 MongoDB 源连接器)设置可以在 Windows 上完成吗?

感谢任何帮助。

【问题讨论】:

    标签: mongodb apache-kafka apache-kafka-connect mongodb-kafka-connector


    【解决方案1】:

    不使用 Confluent Hub 客户端的 Apache Kafka 官方 MongoDB 连接器 (mongodb-kafka-connect-mongodb-1.1.0) 的 MongoDB(4.0) ChangeStreams 工作解决方案

    1. 下载官方 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
    2. 启动 Zookeeper: bin/zookeeper-server-start.sh config/zookeeper.properties
    3. 启动卡夫卡: .\bin\windows\kafka-server-start.bat .\config\server.properties

    4. 启动 Kafka-Connect: bin\windows\connect-standalone.bat config\connect-standalone.properties F:\software\mongodb\mongodb-kafka-connect-mongodb-1.1.0\etc\MongoSourceConnector.properties

    5. 将新文档添加到 MongoDB 集合,您应该创建了一个新主题 dbName.collectionName 并且 ChangeStream 事件应该出现在该主题上。

    【讨论】:

      【解决方案2】:

      答案已经在documentation

      Kafka 源连接器需要 MongoDB 3.6 或更高版本作为您的数据 source 如果您仅使用带有集合的更改流。如果你 需要监视数据库或部署,您需要 MongoDB 4.0 或更高版本。


      关于你的第二个问题;是的,可以在 Windows 上运行 Kafka。

      【讨论】:

      • 感谢 Giorgos 的回答。你的回答足够激励我最终让它发挥作用。 :-) 非常感谢。
      猜你喜欢
      • 2021-01-15
      • 1970-01-01
      • 2023-01-01
      • 2020-07-03
      • 2021-01-10
      • 2020-04-27
      • 2019-07-22
      • 2021-04-03
      • 2019-12-05
      相关资源
      最近更新 更多