Kafka-spezifisches JSON-Schema und Einschränkungen
Bei der Erstellung eines Kafka-Datensatzes haben Sie die Möglichkeit, ein benutzerspezifisches JSON-Schema einzugeben, das dann beim Lesen/Schreiben im ausgewählten Topic verwendet wird.
Vorbehalte bei der Arbeit mit JSON- und Kafka-Eingaben
Die aktuelle Implementierung der JSON-Unterstützung in Kafka funktioniert folgendermaßen:
- Das Schema wird aus dem ersten JSON-Datensatz abgeleitet. Dieses Schema wird dann zur Konvertierung der folgenden JSON-Datensätze herangezogen.
- Wenn ein JSON-Datensatz nicht mit dem abgeleiteten JSON-Schema übereinstimmt, wird er ganz einfach verworfen (ohne Debug-Meldung).
Beispiel für ein Kafka-Topic mit folgenden JSON-Datensätzen:
1 - {"title":"The Matrix","year":1999,"cast":["Keanu Reeves","Laurence Fishburne","Carrie-Anne Moss","Hugo Weaving","Joe Pantoliano"],"genres":["Science Fiction"]}
2 - {"Test" : true}
3 - {"title":"Toy Story","year":1995,"cast":["Tim Allen","Tom Hanks","(voices)"],"genres":["Animated"]}
Der Kafka-Eingabekonnektor verwaltet die Meldungen wie folgt:
- Ableiten des Schemas aus dem ersten eingehenden JSON-Datensatz (Meldungsnummer 1).
- Weiterleiten der Meldungsnummer 1 an den nächsten Konnektor.
- Verwerfen der Meldungsnummer 2, da nicht übereinstimmend mit dem abgeleiteten Schema.
- Weiterleiten der Meldungsnummer 3 an den nächsten Konnektor, da übereinstimmend mit dem abgeleiteten Schema.
Vorbehalte bei der Arbeit mit JSON- und Kafka-Ausgaben
Der Kafka-Ausgabekonnektor dann den Byte-Typ nicht ordnungsgemäß verarbeiten.