Apache Kafka Подключение плоского массива JSon к объектам

Я импортирую данные из таблицы MS SQL Server в тему Apache Kafka с помощью Kafka Connect.

Столбец изменений представляет собой массив json, который я хотел бы сгладить и отправить в несколько событий.

Записи таблицы выглядят так:

id      table       change                  
-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
3       dbo.Pets    {"change":[{"OP":"UPDATE", "Id":"3", "Name":"Rufus","Type":"Cat","Number":"10482638"}, {"OP":"INSERT", "Id":"", "Name":"Misifu","Type":"Reddy","Number":"85745874"}]}

И что мне нравится вставлять в тему:

id      table       change                  
-------------------------------------------------------------------------------------------------
3       dbo.Pets    {"OP":"UPDATE", "Id":"3", "Name":"Rufus","Type":"Cat","Number":"10482638"}
3       dbo.Pets    {"OP":"INSERT", "Id":"", "Name":"Misifu","Type":"Reddy","Number":"85745874"}

Кто-нибудь может мне помочь? Большое спасибо :)


person Vicente García Diez    schedule 18.06.2018    source источник
comment
Какой соединитель Kafka Connect вы используете?   -  person Robin Moffatt    schedule 18.06.2018
comment
Confluent JDBC Connector docs.confluent.io/current/connect/connect -jdbc/docs/index.html   -  person Vicente García Diez    schedule 18.06.2018
comment
Таким образом, коннектор JDBC извлекает информацию из таблицы CDC SQL Server? Если это так, вы, вероятно, захотите посмотреть, как настроить CDC SQL Server для разделения событий. Kafka Connect сможет сделать только одну строку -> одно сообщение.   -  person Robin Moffatt    schedule 18.06.2018
comment
Триггер вставляет изменения данных в эту таблицу. Разделение событий в коде триггера slq — это подход, который я сделал. Большое спасибо :)   -  person Vicente García Diez    schedule 19.06.2018
comment
Не стесняйтесь ответить на свой вопрос ниже с вашим решением   -  person OneCricketeer    schedule 19.06.2018


Ответы (1)


Решение состоит в том, чтобы разложить сообщение на триггер sql с соответствующим форматом, другого варианта нет. Спасибо всем :)

person Vicente García Diez    schedule 19.06.2018