You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@avro.apache.org by "Doug Cutting (JIRA)" <ji...@apache.org> on 2010/08/10 18:04:18 UTC

[jira] Updated: (AVRO-557) Speed up one-time data decoding

     [ https://issues.apache.org/jira/browse/AVRO-557?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Doug Cutting updated AVRO-557:
------------------------------

    Attachment: AVRO-557.patch

Here's a patch that caches resolvers in a weak, concurrent, identity hash map.

Before:

GenericReaderOneTimeUsageTest: 20208 ms, 0.2061803736078433 million entries/sec.  9.649627469945864E-4 million bytes/sec

After:

GenericReaderOneTimeUsageTest: 9513 ms, 0.4379442048677028 million entries/sec.  0.002049660865215458 million bytes/sec

So caching resolvers gets some but not all of the speed back.

> Speed up one-time data decoding
> -------------------------------
>
>                 Key: AVRO-557
>                 URL: https://issues.apache.org/jira/browse/AVRO-557
>             Project: Avro
>          Issue Type: Improvement
>          Components: java
>    Affects Versions: 1.3.2
>            Reporter: Kevin Oliver
>            Assignee: Kevin Oliver
>             Fix For: 1.4.0
>
>         Attachments: AVRO-557.patch, AVRO-557.patch
>
>
> There are big gains to be had in performance when using a BinaryDecoder and a GenericDatumReader just one time. This is due to the relatively expensive parsing and initialization that came with 1.3. Patch with example code and a Perf harness to follow.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.