🍋
Menu
.avro Data

Apache Avro (Serialización orientada a filas)

Apache Avro es un framework de serialización de datos orientado a filas con soporte de evolución de esquemas. Almacena el esquema junto con los datos, permitiendo leer datos escritos con una versión diferente del esquema sin romper la compatibilidad.

Tipo MIME

application/avro

Tipo

Binario

Compresión

Sin pérdida

Ventajas

  • + Schema evolution — add/remove fields without breaking readers
  • + Compact binary encoding with efficient compression
  • + Self-describing — schema embedded in the file
  • + Standard in Kafka and the Hadoop ecosystem

Desventajas

  • Row-based — less efficient than Parquet for analytical queries
  • Not human-readable in binary form
  • JSON schema specification has a learning curve

Cuándo usar .AVRO

Usa Avro para pipelines de datos donde la evolución de esquemas sea importante (Kafka, almacenamiento de eventos), cuando el schema-on-read sea preferido o cuando necesites formato binario compacto con esquemas autodescriptivos.

Detalles técnicos

El formato de contenedor Avro incrusta un esquema JSON en la cabecera del archivo seguido de bloques binarios de registros. Los esquemas usan tipos: null, boolean, int, long, float, double, bytes, string, records, enums, arrays, maps, unions y fixed. La resolución de esquemas permite compatibilidad de lectura/escritura.

Historia

Doug Cutting (creador de Hadoop) desarrolló Avro en 2009 como parte del ecosistema Hadoop. Fue diseñado para abordar las limitaciones de los archivos de secuencia de Hadoop con evolución de esquemas y mejores capacidades de interoperabilidad entre lenguajes.

Convertir desde .AVRO

Convertir a .AVRO

Formatos relacionados