avro-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Harsh J <ha...@cloudera.com>
Subject Re: 1.7.6 Slow Deserialization
Date Fri, 13 Jun 2014 04:30:07 GMT
I've not analysed into it yet, but specific parts showing up in your
captured traces appear to be cause of
https://issues.apache.org/jira/browse/AVRO-1268 if you'd like to take
a look at that change.

On Thu, Jun 12, 2014 at 1:35 AM, Han, Xiaodan <xiaodan.han@baml.com> wrote:
> Hi,
>
>
>
> We are in the process of upgrading to 1.7.6 from 1.7.3. But it seems 1.7.6
> deserialization is slower by about 10%-30%. We did profiling and found the
> bottleneck being JsonProperties.getJsonProp(). Please see the profiling
> result below 1.7.6 vs. 1.7.3. I did some research in the list and didn’t
> find anything similar. Any idea what could have caused this?
>
>
>
> Thanks you!
>
>
>
> Dan.
>
>
>
> // 1.7.6
>
> CPU SAMPLES BEGIN (total = 31964)
>
> rank   self  accum   count trace method
>
>    1 70.67% 70.67%   22589 300641 org.apache.avro.JsonProperties.getJsonProp
>
>    2  8.22% 78.89%    2628 300645 org.apache.avro.JsonProperties.getJsonProp
>
>    3  6.30% 85.20%    2015 300640 org.apache.avro.JsonProperties.getJsonProp
>
>    4  4.10% 89.30%    1311 300572
> org.apache.avro.Schema$FixedSchema.getFixedSize
>
>    5  1.68% 90.98%     538 300648 org.apache.avro.JsonProperties.getJsonProp
>
>
>
> TRACE 300641: (thread=200001)
>
>         org.apache.avro.JsonProperties.getJsonProp(JsonProperties.java:54)
>
>         org.apache.avro.JsonProperties.getProp(JsonProperties.java:45)
>
>
> org.apache.avro.specific.SpecificDatumReader.getPropAsClass(SpecificDatumReader.java:92)
>
>
> org.apache.avro.specific.SpecificDatumReader.findStringClass(SpecificDatumReader.java:80)
>
>
> org.apache.avro.generic.GenericDatumReader.getStringClass(GenericDatumReader.java:394)
>
>
> org.apache.avro.generic.GenericDatumReader.readString(GenericDatumReader.java:351)
>
>
> org.apache.avro.generic.GenericDatumReader.read(GenericDatumReader.java:157)
>
>
>
> // 1.7.3
>
> CPU SAMPLES BEGIN (total = 22383)
>
> rank   self  accum   count trace method
>
>    1  4.81%  4.81%    1077 300527
> org.apache.avro.Schema$FixedSchema.getFixedSize
>
>    2  3.09%  7.90%     691 300624
> org.apache.avro.io.BinaryDecoder$InputStreamByteSource.tryReadRaw
>
>    3  1.61%  9.51%     361 300850
> org.apache.avro.generic.GenericDatumReader.readString
>
>    4  1.52% 11.04%     341 300924
> org.apache.avro.generic.GenericDatumReader.readString
>
>    5  1.44% 12.47%     322 300795
> org.apache.avro.generic.GenericDatumReader.readString
>
>
>
> ________________________________
> This message, and any attachments, is for the intended recipient(s) only,
> may contain information that is privileged, confidential and/or proprietary
> and subject to important terms and conditions available at
> http://www.bankofamerica.com/emaildisclaimer. If you are not the intended
> recipient, please delete this message.



-- 
Harsh J

Mime
View raw message