Raymie Stata created AVRO-2090:
----------------------------------
Summary: Improve encode/decode time for SpecificRecord using code
generation
Key: AVRO-2090
URL: https://issues.apache.org/jira/browse/AVRO-2090
Project: Avro
Issue Type: Improvement
Components: java
Reporter: Raymie Stata
Compared to GenericRecords, SpecificRecords offer type-safety plus the
performance of traditional getters/setters/instance variables. But these are
only beneficial to Java code accessing those records. SpecificRecords inherit
serialization and deserialization code from GenericRecords, which is dynamic
and thus slow (in fact, benchmarks show that serialization and deserialization
is _slower_ for SpecificRecord than for GenericRecord).
This patch extends record.vm to generate custom, higher-performance encoder and
decoder functions for SpecificRecords. We've run a public benchmark showing
that the new code reduces serialization time by 2/3 and deserialization time by
close to 50%.
--
This message was sent by Atlassian JIRA
(v6.4.14#64029)