Avro
Avro est un format de sérialisation binaire orienté lignes issu de l'écosystème Hadoop ; son schéma est intégré ou externe, et il sert au stockage de big data et à Kafka.
Objectif
Fournir une sérialisation compacte et sensible au schéma pour le big data et le traitement de flux.
Mécanisme
Lors de l'encodage des données, le schéma peut être intégré (écrit dans l'en-tête) ou externe (un registre). Il n'y a pas de balises de champ (le schéma localise les champs), d'où une compacité supérieure à Protobuf. Il prend en charge l'évolution du schéma (ajout et retrait de champs avec valeurs par défaut). Le stockage orienté lignes convient à l'OLAP.
Cas d’usage
- Sérialisation de messages dans Kafka
- Format de fichiers Hadoop
- Stockage de tables Hive
- Confluent Schema Registry
Exemples
- entrée
schema + dataOutputCompact binary bytesSchema-aware encoding
Erreurs courantes
- Schema mismatch causes decoding errors
- Manage schema versions with a Schema Registry
Termes associés
Protocol Buffers
Protocol Buffers est le format de sérialisation binaire indépendant du langage de Google ; il exige un schéma .proto et est plus compact et plus sûr par types que JSON/XML. GLOSSAIRE
Parquet
Parquet est un format binaire en colonnes, un projet Apache utilisé pour l'analytique OLAP, comprimant par colonne pour des requêtes efficaces. GLOSSAIRE
JSON
JSON (JavaScript Object Notation) est un format léger d'échange de données fondé sur les littéraux d'objets JavaScript, utilisant paires clé-valeur et tableaux. GLOSSAIRE