hbase-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "ramkrishna.s.vasudevan (JIRA)" <j...@apache.org>
Subject [jira] [Updated] (HBASE-15879) Introduce Key interface
Date Fri, 03 Jun 2016 06:46:59 GMT

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

ramkrishna.s.vasudevan updated HBASE-15879:
-------------------------------------------
    Attachment: HBASE-15879_1.patch

Renames ContiguousKey to Key. Discussing with Anoop here, its better that this standalone
Key be used with the cell impls alone where we think Key is contiguous. Not every cell should
be implementing this Key. This is just for performance optimization and reduce garbage in
cases of Bloom. 
[~saint.ack@gmail.com]
To your point that Key can be created by asking a cell and what ever type it may be is true
but that the idea of this interface is for optimzation and if we allow every cell to be Key
then it is good enough adding the new getKey() APIs in cell itself.

But one downside in having only certain cells impl the new Key interface is that we need to
check if the Cell is of type Key and then see if the Cell is backed by array or BB and then
call the suitable API in the Key interface. If not add isArray API in the Key interface. 

> Introduce Key interface
> -----------------------
>
>                 Key: HBASE-15879
>                 URL: https://issues.apache.org/jira/browse/HBASE-15879
>             Project: HBase
>          Issue Type: Improvement
>            Reporter: ramkrishna.s.vasudevan
>            Assignee: ramkrishna.s.vasudevan
>         Attachments: HBASE-15879.patch, HBASE-15879_1.patch
>
>
> Introduce an interface called Key and allow Cell implementations to implement this Key
interface for cases like KeyValue, OffheapKeyValue and DBE cells (Except prefix tree) so that
we can avoid copies when we deal with only Cells in case of block index creations (like ROOT,
Bloom etc). Helps in reduction of garbage also. 



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Mime
View raw message