1

我正在尝试通过 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"
}
4

1 回答 1

0

key.projection.type并且value.projection.type显然在云版本中不受支持,因此它不适用于该配置。

云连接器限制

于 2020-11-26T13:31:26.217 回答