You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@hbase.apache.org by "ramkrishna.s.vasudevan (JIRA)" <ji...@apache.org> on 2017/02/14 12:41:41 UTC

[jira] [Commented] (HBASE-17644) Always create ByteBufferCells after copying to MSLAB

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

ramkrishna.s.vasudevan commented on HBASE-17644:
------------------------------------------------

OffheapTag - can be OFfheapTag only. I don think we need to rename it because anyway it is working with offheap BB only. We have ArraybackedTag any way. So should be fine. 
I think next we can infact just remove KV and always work with BytebufferKeyValue in the server side including read path. 

> Always create ByteBufferCells after copying to MSLAB
> ----------------------------------------------------
>
>                 Key: HBASE-17644
>                 URL: https://issues.apache.org/jira/browse/HBASE-17644
>             Project: HBase
>          Issue Type: Sub-task
>          Components: regionserver
>    Affects Versions: 2.0.0
>            Reporter: ramkrishna.s.vasudevan
>            Assignee: Anoop Sam John
>             Fix For: 2.0.0
>
>         Attachments: HBASE-17644.patch
>
>
> We create a cell out of the Bytebuffer that is returned by MSLAB. This BB can be offheap or onheap type. If MSLAB is full we return onheap byte buffer. So the place where we create a cell by copying data to this buffer we either create KeyValue or OffheapKV based on the buffer type. So what we saw in tests is that since we have a combination of Cells the comparisons that happens when adding to memstore happens millions of times and that has an impact on the performance of write path. In read path this is not significant enougth (though we have plans to just create one type of cells every where in Server side). 



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)