Apache Avro

Avro is a remote procedure call and serialization framework that has been developed as part of Apache's Hadoop project. It uses JSON to define data types and protocols. The actual data is serialized in a compact binary format. Its main use is Hadoop, where it can be used both as a serialization format for the persistence of data as well as data transfer format for communication between Hadoop nodes and between Hadoop services and client programs.

It is similar to Apache Thrift, but does not require the prior code generation when the schema changes, unless specifically required for statically typed programming language.

While in theory could use any programming language Avro who have already completed the following languages ​​available APIs ::

  • Java
  • C #
  • C
  • C
  • Python
  • Ruby

Avro IDL

Besides the possibility to use JSON for type and protocol definitions, AVRO also offers a more experimental functionality for an alternative interface description language ( IDL), their syntax is referred to as "Avro IDL ". This format, which has previously been called " GenAvro ", it is to users, who are familiar with traditional IDLs facilitating to use Avro. Avro IDL using a syntax similar to C , C, Protocol Buffers and others.

71813
de