[
https://issues.apache.org/jira/browse/HBASE-11425?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14355465#comment-14355465
]
stack commented on HBASE-11425:
-------------------------------
[~vrodionov]
Sortof.
This effort takes us further along a couple of paths. There is the foreground
being able to have most of the data offheap when reading. An ancillary is
proving an alternate Cell implementation is possible, one that is other than
KeyValue.
After the lads have the above behind us, we can move to the next interesting
challenges. For example, a PrefixTree Cell implementation that keeps the key
and value encoded/compressed as we traverse the read path.
Regards the particular point you raise, yeah, would have to decompress
currently do put this read-path on top of it. Would be cool if decompress could
be done with native code before we the brought the block into BC.
TODO
> 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)