Запретить приемник JDBC Kafka от записи __connect_partition и __connect_offset - PullRequest
0 голосов
/ 02 октября 2018

У меня есть сжатая в журнале тема в Kafka, которая записывается в Postgres через коннектор приемника JDBC.Хотя для соединителя установлено значение mode=upsert, оно добавляет уникальную строку в базу данных приемников для каждого значения, поскольку записывает смещение темы (__connect_offset) и раздел (__connect_partition) для каждой строки вместе сданные.

Как отключить JDBC Sink Connector от записи информации о теме (которая меня не интересует)?Добавление fields.whitelist, которое захватывает только мои столбцы данных, не позволило предотвратить проникновение этих метаданных в мою базу данных.

SMT, подобный следующему, также не работает:

"transforms": "blacklist",
"transforms.blacklist.type": "org.apache.kafka.connect.transforms.ReplaceField$Value",
"transforms.blacklist.blacklist": "__connect_partition, __connect_offset"

1 Ответ

0 голосов
/ 02 октября 2018

Плохо ... Я неправильно настроил свой первичный ключ на разъеме.Я подумал, что правильно сказал преобразовать ключ темы в первичный ключ таблицы.В итоге сработала следующая конфигурация разъема:

"pk.mode": "record_key",
"pk.fields": "[Key column name here]"
...