Apache Avro
Apache Avro | |||
---|---|---|---|
Utvikler(e) | Apache Software Foundation | ||
Utgitt | 11. januar 2011[1] | ||
Nyeste versjon | 1.12.0 (5. august 2024)[2] | ||
Kodelager | https://github.com/apache/avro | ||
Skrevet i | Java,[3][1] C,[1] C++,[1] C#,[1] PHP,[1] Python,[1] Ruby,[1] JavaScript,[4] Perl,[4] Rust[4] | ||
Type | Serialiseringsformat[4] | ||
Lisens | Apache License 2.0[5] | ||
Nettsted | avro.apache.org (en)[6] | ||
Last ned | http://avro.apache.org/releases.html | ||
Apache Avro på Commons |
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.[7]
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:[8][9]
Avro IDL
I tillegg til å støtte JSON for type- og protokoll-definisjoner, Avro inkluderer eksperimentell[13] 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
- ^ a b c d e f g h https://projects.apache.org/json/projects/avro.json; besøksdato: 8. april 2020.
- ^ «Release 1.12.0». 5. august 2024. Besøkt 20. august 2024.
- ^ «The apache_avro Open Source Project on Open Hub: Languages Page». Open Hub. Besøkt 18. juli 2018.
- ^ a b c d https://projects.apache.org/json/projects/avro.json.
- ^ «The apache_avro Open Source Project on Open Hub: Licenses Page». Open Hub. Besøkt 18. juli 2018.
- ^ projects.apache.org, besøkt 8. april 2020[Hentet fra Wikidata]
- ^ http://dataconomy.com/3-reasons-hadoop-analytics-big-deal/
- ^ phunt. «GitHub - phunt/avro-rpc-quickstart: Apache Avro RPC Quick Start. Avro is a subproject of Apache Hadoop.». GitHub. Besøkt 13. april 2016.
- ^ «Supported Languages - Apache Avro - Apache Software Foundation». Besøkt 21. april 2016.
- ^ «Avro: 1.5.1 - ASF JIRA». Besøkt 13. april 2016.
- ^ «[AVRO-533] .NET implementation of Avro - ASF JIRA». Besøkt 13. april 2016.
- ^ «Supported Languages». Besøkt 13. april 2016.
- ^ «Apache Avro 1.8.0 IDL». Arkivert fra originalen 20. september 2010. Besøkt 13. april 2016.
Videre lesning
- White, Tom (november 2010). Hadoop: The Definitive Guide. ISBN 978-1-4493-8973-4.
Eksterne lenker
- (en) Offisielt nettsted
- (en) Apache Avro – kategori av bilder, video eller lyd på Commons
- v
- d
- r
- Abdera
- Accumulo
- ActiveMQ
- Ambari
- Ant
- Aries
- Apache HTTP Server
- APR
- Avro
- Axis
- Axis2
- Bloodhound
- Buildr
- Camel
- Cassandra
- Cayenne
- Chemistry
- Click
- CloudStack
- Cocoon
- Continuum
- Cordova
- CouchDB
- cTAKES
- CXF
- Deltacloud
- Derby
- Directory
- Drill
- Empire-db
- Felix
- Flex
- Flink
- Flume
- Forrest
- Geronimo
- Gora
- Gump
- Hadoop
- Hama
- HBase
- Hive
- Jackrabbit
- James
- JMeter
- Kafka
- Lucene
- Mahout
- Marmotta
- Maven
- MINA
- mod_perl
- MyFaces
- Nutch
- ODE
- OFBiz
- Oozie
- OpenEJB
- OpenJPA
- OpenNLP
- OpenOffice
- PDFBox
- Phoenix
- POI
- Pig
- Pivot
- Qpid
- River
- Roller
- Samza
- ServiceMix
- Shindig
- Shiro
- Sling
- Spark
- Stanbol
- Storm
- SpamAssassin
- Sqoop
- Struts
- Subversion
- Tapestry
- Thrift
- Tiles
- Tomcat
- Traffic Server
- Turbine
- Tuscany
- UIMA
- Velocity
- Wave
- Wicket
- Wink
- Xalan
- Xerces
- XMLBeans
- ZooKeeper
- BCEL
- BSF
- Daemon
- Jelly
- Hadoop
- HDFS
- Batik
- Chainsaw
- FOP
- Ivy
- Log4j
- Log4Net
- XAP
- XAP
- AxKit
- Beehive
- Bluesky
- Cactus
- Jakarta
- Excalibur
- Harmony
- HiveMind
- Lenya
- Slide
- Shale
- stdcxx
- iBATIS
- Kategori
- Commons