You are viewing a plain text version of this content. The canonical link for it is here.
Posted to user@avro.apache.org by Tatu Saloranta <ts...@gmail.com> on 2012/12/07 19:29:02 UTC

New tool for Avro processing, Jackson Avro backend

Quick note: I wrote a new data format backend for Jackson JSON processor:

https://github.com/FasterXML/jackson-dataformat-avro

so that Jackson can be used to process Avro encoded data (in addition
to JSON, CSV, XML, BSON, YAML and Smile; all with similar backend
modules). README pages shows sample usage.
Version 2.1 requires use of Avro Schema from standard package, but 2.2
will add ability to generate Avro Schema objects from POJOs, so that
manual writing of Schemas will not be required (and/or you can
generate Schemas starting with POJOs).

The main benefit of this extension is the ability to use standard
POJOs, instead of either generic Avro (tree) model or code generation.
It may make most sense in environments where multiple data formats are
needed, and especially if JSON output is needed.

Module does currently use default Avro package (1.7.2) for some of its
operation, so encoding and decoding should be fully compatible.
It is also possible to combine this module with Jackson Afterburner
(https://github.com/FasterXML/jackson-module-afterburner) for improved
performance.
Performance is close to that of standard Avro library, although there
is bit of additional overhead (within 30% or so).

-+ Tatu +-