Apache Avro

Avro er et remote procedure call (RPC) og dataserialiserings-rammeverk utviklet innenfor Apaches Hadoop-prosjektet. Det bruker JSON for å definere datatyper og protokoller og serialiserer data i en kompakt binært format. Det brukes hovedsakelig i Apache Hadoop, hvor det kan gi både et serialisert format for persistente data og et overføringsformat for kommunikasjon mellom Hadoop-noder og fra klientprogrammer til Hadoop-tjenester.

Det er ligner på Thrift, men krever ikke et kjørende kodegenererende program når et skjema skifter (unntatt når det er ønskelig for statisk typede språk).

Spark SQL støtter datakilde-tilgang til Avro gjennom Spark-pakker.

Språk med API-er 
Teoretisk sett kan hvilket som helst språk bruke Avro, men disse har faktiske programmeringsgrensesnitt (API-er) som støtter Avro direkte:
C
C++
C#
Go
Java
Perl
PHP
Python
Ruby
Scala

Avro IDL
I tillegg til å støtte JSON for type- og protokoll-definisjoner, Avro inkluderer eksperimentell støtte for et alternativ Interface Definition Language (IDL)-syntaks kjent som Avro IDL. Tidligere kjent som GenAvro, ble dette formatet designet for å lette bruken for brukere mer kjent med tradisjonelle IDL-er og programmeringsspråk med en syntaks tilnærmet lik som C/C++, Protocol Buffers og andre.

Se også
 Apache Thrift
 Googles Protocol Buffers
 Ciscos Etch
 ZeroCs ICE
 MessagePack

Referanser

Videre lesning

Eksterne lenker 
 

Fri programvare-prosjekter