hbase-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Anoop Sam John (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (HBASE-13448) New Cell implementation with cached component offsets/lengths
Date Tue, 19 May 2015 07:07:00 GMT

    [ https://issues.apache.org/jira/browse/HBASE-13448?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14549944#comment-14549944

Anoop Sam John commented on HBASE-13448:

Thanks Ram..  He explained it mostly.
Yes we are not adding keylength stufff back.  This is only within a specific Cell impl, ie.
KeyValue where key length make sense.   You can see above how many times we call each of the
methods in read of a cell.  As per that it is clear that keylength calc is happening more
often, as this is needed by some other offset/length.

Yes 2-3% gain only what I also saw in a small single node run.  But Stack ran the test on
V1 patch where I tried to cache many other items. Per KeyValue object we were adding some
24+ bytes extra cost. The latest version of patch just adds 6 bytes extra.  Yet to take a
GC reading. Will do that.  Any chance of giving a try in ur cluster Stack?

As Stack explained, we are trying to get rid of caching the offset/length and passing it around
in the read path. We used to pass byte[] , offset, length .  This is part of the offheap read
work where we better pass the Cell.   As the subtasks of that gets done, we will tend to call
these getters more and caching makes more sense then.

> New Cell implementation with cached component offsets/lengths
> -------------------------------------------------------------
>                 Key: HBASE-13448
>                 URL: https://issues.apache.org/jira/browse/HBASE-13448
>             Project: HBase
>          Issue Type: Sub-task
>          Components: Scanners
>            Reporter: Anoop Sam John
>            Assignee: Anoop Sam John
>             Fix For: 2.0.0
>         Attachments: HBASE-13448.patch, HBASE-13448_V2.patch, HBASE-13448_V3.patch, gc.png,
> This can be extension to KeyValue and can be instantiated and used in read path.

This message was sent by Atlassian JIRA

View raw message