Jag tror att allt du vill ha är Kafka Connect Single Message Transform (SMT)
och mer exakt ReplaceField
:
Följande kommer att ersätta id
fältnamn med _id
:
"transforms": "RenameField",
"transforms.RenameField.type": "org.apache.kafka.connect.transforms.ReplaceField$Value",
"transforms.RenameField.renames": "id:_id"
I ditt fall, innan du tillämpar ovanstående omvandling, kanske du också vill Flatten
foos
:
"transforms": "flatten",
"transforms.flatten.type": "org.apache.kafka.connect.transforms.Flatten$Value",
"transforms.flatten.delimiter": "."
och tillämpa slutligen transformationen för att byta namn på fältet:
"transforms": "RenameField",
"transforms.RenameField.type": "org.apache.kafka.connect.transforms.ReplaceField$Value",
"transforms.RenameField.renames": "foos.id:foos._id"