Aller au contenu
uencoder

Avro Schema

Un schéma Avro utilise JSON pour définir les noms de champs, les types et les valeurs par défaut des enregistrements ; il voyage avec les données ou est préenregistré et constitue les métadonnées de la sérialisation Avro.

Objectif

Fournir une description de types pour la sérialisation Avro, rendant les données auto-descriptives ou confrontées à un schéma préenregistré, et prenant en charge l'évolution du schéma.

Mécanisme

Le schéma est un objet JSON : type=record, avec un tableau fields contenant name, type (scalaire/complexe/union) et default. Une union s'exprime comme un tableau pour autoriser la nullité. L'évolution permet d'ajouter des champs optionnels et de supprimer des champs ayant des valeurs par défaut.

Cas d’usage

  • Schémas de messages dans Kafka
  • Sérialisation de données Hadoop
  • Schema Registry

Outils associés

References