Avro Encoding
L'encodage Avro est le schéma de sérialisation binaire utilisé par Apache Avro, prenant en charge les encodages binaire et JSON, le schéma étant fourni avec les données ou préenregistré.
Objectif
Elle fournit une sérialisation compacte, sensible au schéma et orientée lignes pour l'écosystème Hadoop/Spark, adaptée aussi bien au RPC qu'au stockage.
Mécanisme
L'encodage binaire écrit les champs dans l'ordre du schéma : int/long utilisent Varint avec ZigZag, les chaînes sont de l'UTF-8 préfixé par la longueur et les enregistrements sont codés récursivement. Le schéma n'est pas transmis avec chaque enregistrement (il est préenregistré ou envoyé une seule fois).
Cas d’usage
- Sérialisation de messages dans Kafka
- Échange de données Hadoop
- Transport de données par RPC