Techno - C’est quoi Apache Avro ?

Techno - C’est quoi Apache Avro ?

Date de sortie
September 26, 2024
Auteur
Bertrand Fabre

Aujourd’hui je vous présente Apache Avro.

Définition rapide

Apache Avro est un framework qui permet de sérialiser les données en binaire afin de faire des échanges entre systèmes. La définition des données est en JSON.

Le binaire

C’est lors de la sérialisation des données qu’Apache Avro les converti en binaire afin de réduire la taille des fichiers et donc d’améliorer les performances.

Schéma inclu

Les définition des données est un schéma inclu dans le fichier avro. Cela permet au consommateur de la donnée de les interpréter et donc de reconstruire l’objet d’origine.

Les langages compatibles

Il est possible d’utiliser Apache Avro avec plusieurs langages comme :

  • Java
  • Python
  • C++
  • Ruby
  • Et d’autres

Schéma dynamique

Un autre avantage est qu’Avro gère les changements de schéma sans casser la compatibilité avec les anciennes versions.

Concrètement, les nouvelles versions du schéma peuvent lire des données écrites avec les anciens schémas.

Intégrations

Apache Avro est initialement utilisé dans l’écosystème Haddop comme Apache Hive, Pig et MapReduce.

Néanmoins, on peut aussi l’utiliser dans Apache Kafka pour le streaming des données ou Apache Spark.

Merci de votre lecture !