Avro é um sistema de serialização de dados desenvolvido no projeto Apache Hadoop. Ele fornece uma estrutura de dados rica, um formato de dados binário compacto e rápido, um arquivo contêiner para armazenar dados persistentes, chamada de procedimento remoto (RPC) e integração simples com linguagens dinâmicas. O Avro utiliza JSON para definir tipos de dados e protocolos, e serializa os dados em um formato binário compacto. Seu uso principal é no Hadoop, onde é empregado para serialização de dados e serviços de troca de dados. O Avro é particularmente bem adequado para aplicações que exigem evolução de esquema (schema evolution), pois armazena o esquema juntamente com os dados. Isso permite que os leitores processem dados mesmo que o esquema tenha sido alterado desde que os dados foram escritos. As capacidades de evolução de esquema do Avro, combinadas com seu formato binário eficiente, o tornam uma escolha popular para armazenamento e troca de dados em ambientes de big data. Ele suporta tipos de dados complexos e é projetado para ser altamente performático tanto na leitura quanto na escrita de dados. Arquivos Avro são frequentemente usados para armazenar grandes conjuntos de dados de maneira distribuída.