[ 
https://issues.apache.org/jira/browse/AVRO-2090?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16195955#comment-16195955
 ] 

ASF GitHub Bot commented on AVRO-2090:
--------------------------------------

GitHub user rstata opened a pull request:

    https://github.com/apache/avro/pull/256

    AVRO-2090: Improve encode/decode time for SpecificRecord using code 
generation

    Initial patch for AVRO-2090

You can merge this pull request into a Git repository by running:

    $ git pull https://github.com/rstata-projects/avro AVRO-2090

Alternatively you can review and apply these changes as the patch at:

    https://github.com/apache/avro/pull/256.patch

To close this pull request, make a commit to your master/trunk branch
with (at least) the following in the commit message:

    This closes #256
    
----
commit d2127c7a4051bf7efa56cb0d7e8d9de6ead31c16
Author: rstata <[email protected]>
Date:   2017-07-13T08:36:39Z

    Saving initial work, still have more to do.

commit 474cc97315ecfeb5bc79dc366424c342d57d83e2
Author: rstata <[email protected]>
Date:   2017-07-14T04:22:46Z

    Finished initial implementation (not tested).

commit 456d667c58df1493190b99bea40b24408e969679
Author: rstata <[email protected]>
Date:   2017-07-14T05:51:24Z

    Poorly done feature flag, and formatting improvements (incl proper 
indentation).

commit b1caba57a90a7fe9a7779c137137315d1d6a99ec
Author: rstata <[email protected]>
Date:   2017-07-16T08:40:03Z

    Added Reader/Decoder code

commit 9f8c853f6f43c9ce07eb9ad10da0d6acf9263c5e
Author: rstata <[email protected]>
Date:   2017-09-16T01:33:16Z

    Updated output files to reflect new specific-compiler strategy.

commit 83698d9e3ea04e00cd7da87373409b74f77d708a
Author: rstata <[email protected]>
Date:   2017-10-03T21:44:05Z

    Reverting changes to SpecificFixed

commit 84e4cbb1ada1ceb97dcec0364a231055cd25142a
Author: rstata <[email protected]>
Date:   2017-10-04T01:54:24Z

    Change name of feature from Encodable to CustomCoders

commit e57289bae26683ba4ea3ed30f863be5a79983bc0
Author: rstata <[email protected]>
Date:   2017-10-04T04:49:15Z

    Fixed bugs in codegen template

commit f8fae7bc307fae7d51afab7a99025b4213937d40
Author: rstata <[email protected]>
Date:   2017-10-04T05:32:20Z

    Added feature flag for custom coders

commit d5b45607ace5fbaf9ee526df2fa285a047365548
Author: rstata <[email protected]>
Date:   2017-10-08T00:18:34Z

    Remove stale TODO comment

----


> 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
>         Attachments: customcoders.md
>
>
> 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)

Reply via email to