我正在尝试通过 Confluent Cloud 设置 MongoDB Sink 连接器,以保持 pgsql 和 MongoDB 之间的数据同步。
我期望下面的配置基于id
(int) 字段(不是 _id - objectId)更新现有文档,但是它只是在使用时在 MongoDB 中创建一个新文档。来自 pg 的文档将不包含 _id 字段,因此我们需要在我们的 pgsql 主键 (id) 上完成查找。
任何想法为什么这不能像我预期的那样工作?
{
"connector.class": "MongoDbAtlasSink",
"name": "mongodb-sink",
"kafka.api.key": "mykey",
"kafka.api.secret": "mysecret",
"input.data.format": "JSON",
"topics":"mytopic",
"connection.host": "myhost",
"connection.user": "myuser",
"connection.password": "mypassword",
"database": "mydatabase",
"delete.on.null.values": "false",
"tasks.max": "1",
"document.id.strategy": "com.mongodb.kafka.connect.sink.processor.id.strategy.PartialValueStrategy",
"document.id.strategy.partial.value.projection.list":"id",
"document.id.strategy.partial.value.projection.type":"AllowList",
"writemodel.strategy":"com.mongodb.kafka.connect.sink.writemodel.strategy.ReplaceOneBusinessKeyStrategy"
}