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

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

Adding to what Anoop says, we are not trying to focus on where we do 
compression. That part remains the same.  It is only after we start using an 
Hfileblock we tend to use it in a offheap mode and particularly avoid the copy 
that happens in the BucketCache every time a block needs to be used. (In this 
case it is going to be a decompressed block only).
But one point to note here is that in the case of DBE it is an encoded block - 
and we still go on with the encoded block only and the existing logic of 
decoding the block still works the same way.
In the existing code there are two copies that happen here - one from the 
BucketCache and other in the DBE algo.
Now we try to avoid the first one.



> Cell/DBB end-to-end on the read-path
> ------------------------------------
>
>                 Key: HBASE-11425
>                 URL: https://issues.apache.org/jira/browse/HBASE-11425
>             Project: HBase
>          Issue Type: Umbrella
>          Components: regionserver, Scanners
>    Affects Versions: 0.99.0
>            Reporter: Anoop Sam John
>            Assignee: Anoop Sam John
>         Attachments: Offheap reads in HBase using BBs_final.pdf
>
>
> Umbrella jira to make sure we can have blocks cached in offheap backed cache. 
> In the entire read path, we can refer to this offheap buffer and avoid onheap 
> copying.
> The high level items I can identify as of now are
> 1. Avoid the array() call on BB in read path.. (This is there in many 
> classes. We can handle class by class)
> 2. Support Buffer based getter APIs in cell.  In read path we will create a 
> new Cell with backed by BB. Will need in CellComparator, Filter (like SCVF), 
> CPs etc.
> 3. Avoid KeyValue.ensureKeyValue() calls in read path - This make byte copy.
> 4. Remove all CP hooks (which are already deprecated) which deal with KVs.  
> (In read path)
> Will add subtasks under this.



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

Reply via email to