मुझे लगता है कि आप केवल काफ्का कनेक्ट सिंगल मैसेज ट्रांसफॉर्म (SMT)
चाहते हैं। और अधिक सटीक रूप से ReplaceField
:
निम्नलिखित id
का स्थान लेंगे _id
. के साथ फ़ील्ड नाम :
"transforms": "RenameField",
"transforms.RenameField.type": "org.apache.kafka.connect.transforms.ReplaceField$Value",
"transforms.RenameField.renames": "id:_id"
आपके मामले में, उपरोक्त ट्रांसफॉर्मेशन को लागू करने से पहले आप Flatten
foos
:
"transforms": "flatten",
"transforms.flatten.type": "org.apache.kafka.connect.transforms.Flatten$Value",
"transforms.flatten.delimiter": "."
और अंत में क्षेत्र का नाम बदलने के लिए परिवर्तन लागू करें:
"transforms": "RenameField",
"transforms.RenameField.type": "org.apache.kafka.connect.transforms.ReplaceField$Value",
"transforms.RenameField.renames": "foos.id:foos._id"