Я пытаюсь преобразовать входной json ниже, чтобы сгладить необходимые имена столбцов и их значения при сохранении всех метаданных.
Ниже приведен входной json , который я использую для моего CDC-case.
{
"type": "update",
"timestamp": 1558346256000,
"binlog_filename": "mysql-bin-changelog.000889",
"binlog_position": 635,
"database": "books",
"table_name": "publishers",
"table_id": 111,
"columns": [
{
"id": 1,
"name": "id",
"column_type": 4,
"last_value": 2,
"value": 2
},
{
"id": 2,
"name": "name",
"column_type": 12,
"last_value": "Suresh",
"value": "Suresh123"
},
{
"id": 3,
"name": "email",
"column_type": 12,
"last_value": "Suresh@yahoo.com",
"value": "Suresh@yahoo.com"
}
]
}
Ниже приведен ожидаемый вывод json
[
{
"type": "update",
"timestamp": 1558346256000,
"binlog_filename": "mysql-bin-changelog.000889",
"binlog_position": 635,
"database": "books",
"table_name": "publishers",
"table_id": 111,
"columns": {
"id": "2",
"name": "Suresh123",
"email": "Suresh@yahoo.com"
}
}
]
Я попробовал приведенную ниже спецификацию, из которой я могу получить объект столбцов, но неостальные метаданные.
[
{
"operation": "shift",
"spec": {
"columns": {
"*": {
"@(value)": "[#1].@(1,name)"
}
}
}
}
]
Любые выводы будут очень цениться.