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

Liang Xie commented on HBASE-7845:
----------------------------------

Hi [~stack], the expected blocks read number being reduced because:
Without patch, the search for row/cf1/col5 is done by looking for 
"row/cf1/col5/LATEST_TIMESTAMP/...", and this will land us in previous 
block(col4), found mis-matched(blockseek return 1), then advance to current 
block(issued a HFileScanner.next operation).

With patch, due to faked index key effect, we locate the current block(col5) 
directly and blockSeek return -2, then we don't need to request 
HFileScanner.next, which will call readNextDataBlock internally

Hope it's clear, sorry for my poor english:)
                
> optimize hfile index key
> ------------------------
>
>                 Key: HBASE-7845
>                 URL: https://issues.apache.org/jira/browse/HBASE-7845
>             Project: HBase
>          Issue Type: Improvement
>          Components: HFile
>    Affects Versions: 0.96.0
>            Reporter: Liang Xie
>            Assignee: Liang Xie
>             Fix For: 0.98.0
>
>         Attachments: HBASE-7845.txt, HBASE-7845-v2.txt, HBASE-7845-v3.txt, 
> HBASE-7845-v4.txt, HBASE-7845-v5.txt, HBASE-7845-v6.txt, HBASE-7845-v7.txt, 
> HBASE-7845-v8.txt
>
>
> Leveldb uses ByteWiseComparatorImpl::FindShortestSeparator() & 
> FindShortSuccessor() to reduce index key size, it would be helpful under 
> special conditions.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

Reply via email to