kafka-connect sink 连接器 pk.mode 用于具有自动增量的表

Posted

技术标签:

【中文标题】kafka-connect sink 连接器 pk.mode 用于具有自动增量的表【英文标题】:kafka-connect sink connector pk.mode for table with auto-increment 【发布时间】:2021-08-22 00:45:34 【问题描述】:

我正在为数据库表开发 kafka-connect JDBC sink 连接器。

我无法将 pk.mode 配置为支持自动增量的正确模式。最初我将 pk.mode 设置为默认的“none”,并希望数据库会自动插入一条主键加一的新记录。但是我收到错误消息,抱怨主键不能为“null”。

我尝试了几乎所有其他模式,但现在没有想法了。我想知道接收器连接器是否支持 pk.mode 为“自动增量”?

【问题讨论】:

请分享您的表格 ddl 和您的连接器配置 【参考方案1】:

我刚刚意识到我在为接收器连接器创建的架构中犯了一个错误。

我在架构中包含主键字段,并且该字段未设置,因此当它到达接收器连接器时,它会抱怨主键不能为空。

为了依赖数据库的自动增量功能,接收器连接器的架构不得包含主键。因此,在我从架构中删除主键并将pk.mode 设置为none 后,一切正常。

【讨论】:

以上是关于kafka-connect sink 连接器 pk.mode 用于具有自动增量的表的主要内容,如果未能解决你的问题,请参考以下文章

Debezium 消息与 kafka-connect sink 连接器期望的格式兼容

Kafka-Connect Cassandra Sink 连接器不将数据推送到 Cassandra

kafka-connect JDBC PostgreSQL Sink Connector 显式定义 PostgrSQL 模式(命名空间)

Kafka Connect JDBC Sink - 一个接收器配置中每个主题(表)的 pk.fields

Kafka-connect,Bootstrap 代理断开连接

使用本地 kafka-connect 集群连接远程数据库的连接超时