Schéma JSON Kafka et limitations
Lorsque vous créez un jeu de données Kafka, vous pouvez renseigner un schéma JSON personnalisé utilisé lors de la lecture/l'écriture depuis le topic sélectionné.
Avertissement si vous utilisez une entrée JSON et Kafka
L'implémentation actuelle du support de JSON dans Kafka fonctionne comme suit :
- Le schéma est déduit du premier enregistrement JSON, ce schéma est ensuite utilisé pour convertir les enregistrements JSON suivants.
- SI un enregistrement JSON ne correspond pas au schéma JSON déduit, il est silencieusement supprimé (avec un message de type debug).
Exemple d'un topic Kafka avec les enregistrements JSON suivants :
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"]}
Le connecteur d'entrée Kafka va gérer les messages comme ceci :
- déduction du schéma à partir du premier enregistrement JSON entrant (message numéro 1),
- transmission du message numéro 1 au connecteur suivant ,
- suppression du message numéro 2 car il ne correspond pas au schéma déduit,
- transmission du message numéro 3 au connecteur suivant, car il correspond au schéma déduit.
Avertissement si vous utilisez une sortie JSON et Kafka
Le connecteur de sortie Kafka ne peut gérer correctement le type Bytes.