Официальный коннектор исходного кода MongoDB для Apache Kafka с MongoDB-4.0
У меня есть требование, когда я должен захватывать события MongoDB ChangeStream (вставки / обновления и т. Д.) И предпринимать некоторые действия (сохранять в OracleDB). Я подумал об этом дизайне, который кажется хорошим:
"MongoDB-ChangeStream" --> "MongoDB Source Connector for Apache Kafka" --> "Kafka Broker-Topic" --> "Java Service" --> OracleDB
У меня вопрос: я использую MongoDB-4.0, а "Коннектор исходного кода MongoDB для Apache Kafka" был представлен в MongoDB-4.2. Могу ли я по-прежнему использовать "Коннектор исходного кода MongoDB для Apache Kafka" с MongoDB-4.0?
Коннектор исходного кода MongoDB для Apache Kafka - Официальная страница:https://www.confluent.io/hub/mongodb/kafka-connect-mongodb
На официальной странице "Коннектор исходного кода MongoDB для Apache Kafka" не говорится о каких-либо предварительных требованиях с точки зрения версии MongoDB.
Мой второй вопрос: можно ли настроить этот (исходный коннектор MongoDB для Apache Kafka) в Windows?
Ценю любую помощь.
2 ответа
Рабочее решение для MongoDB(4.0) ChangeStreams с официальным коннектором MongoDB (mongodb-kafka-connect-mongodb-1.1.0) для Apache Kafka без использования Confluent Hub Client
- Загрузите официальный коннектор 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
запустить Кафку:
.\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.
Ответ уже есть в документации:
Коннектор источника Kafka требует MongoDB 3.6 или более поздней версии в качестве источника данных, если вы используете потоки изменений только с коллекцией. Если вам нужно следить за базой данных или развертыванием, вам понадобится MongoDB 4.0 или новее.
Что касается вашего второго вопроса; Да, запустить Kafka в Windows можно.