Кафка коннект jdbc сток проблема с режимом upsert - PullRequest
0 голосов
/ 15 марта 2019

Я пытаюсь подключить реплицировать таблицу в режиме реального времени с помощью Kafka connect. Используемая база данных - MySQLv5.7. При работе с режимами вставки и обновления по отдельности столбцы ведут себя должным образом Однако, когда я использую режим upsert, в базе данных не наблюдается никаких изменений.

Файл конфигурации заполнен через пользовательский интерфейс

Раковина

topic = custom-p2p
Connector Class = JdbcSinkConnector  
name = sink
tasks-max = 1
Key-converter-class=org.apache.kafka.connect.storage.StringConverter
Value-converter-class=org.apache.kafka.connect.json.JsonConverter
jdbc_url=jdbc:mysql://127.0.0.1:3306/p2p_service_db4?user=root&password=root&useSSL=false
insert mode = upsert
auto create = true
auto evolve = true

Источник

Connector Class = JdbcSourceConnector
name = source-new
task max = 1
key converter class = org.apache.kafka.connect.storage.StringConverter
value converter class = org.apache.kafka.connect.json.JsonConverter
jdbc url = jdbc:mysql://127.0.0.1:3306/p2p_service_db3?user=root&password=root&useSSL=false
table loading mode = timestamp+incrementing
incrementing column name = auto_id
timestamp column name = last_updated_at
topic prefix = custom-

веры Проблема, с которой я сталкиваюсь, заключается в том, что когда режим вставки приемника изменяется на вставку, вставка происходит правильно при изменении на обновление, это также происходит идеально, как и ожидалось, однако, когда значение изменяется на upsert, ни вставка, ни обновление не требуют место. Пожалуйста, дайте мне знать, если что-то сделано не так? Почему этот режим не работает? Есть ли какая-то альтернатива этому, если эти операции вставки и обновления должны быть реплицированы в резервной БД.

Заранее спасибо. Дайте мне знать, если нужна какая-то другая информация

...