| Apache Avro | |||
|---|---|---|---|
| Utvikler(e) | Apache Software Foundation | ||
| Utgitt | 11. januar 2011 | ||
| Nyeste versjon | 1.11.5 (16. oktober 2025) | ||
| Kodelager | https://github.com/apache/avro | ||
| Skrevet i | Programmeringsspråket Java, C, C++, C#, PHP, Python, Ruby, JavaScript, Perl, Rust | ||
| Type | Serialiseringsformat | ||
| Lisens | Apache License 2.0 | ||
| Nettsted | avro.apache. (en) | ||
| Last ned | http://avro.apache.org/releases.html | ||
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.
Teoretisk sett kan hvilket som helst språk bruke Avro, men disse har faktiske programmeringsgrensesnitt (API-er) som støtter Avro direkte:
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.