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

jirapos...@reviews.apache.org commented on HBASE-4469:
------------------------------------------------------


-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/2235/
-----------------------------------------------------------

Review request for hbase.


Summary
-------

The problem is that when seeking for the row/col in the hfile, we will go to 
top of the row in order to check for row delete marker (delete family).
However, if the bloomfilter is enabled for the column family, then if a delete 
family operation is done on a row, the row is already being added to 
bloomfilter.
We can take advantage of this factor to avoid seeking to the top of row.

Also, Update the TestBlocksRead unit tests. since most of block read count has 
dropped to a lower number.

Evaluation:
In TestSeekingOptimization, it saved 31.6% seek operation perviously.
Now it saves about 41.82% seek operation.
10% more seek operation.

======================
Before this diff:
For bloom=ROWCOL, compr=GZ total seeks without optimization: 2506, with 
optimization: 1714 (68.40%), savings: 31.60%

=====================
Apply this diff:
For bloom=ROWCOL, compr=GZ total seeks without optimization: 2506, with 
optimization: 1458 (58.18%), savings: 41.82%
=====================

Thanks Mikhail and Kannan's help and discussion.


This addresses bug HBASE-4469.
    https://issues.apache.org/jira/browse/HBASE-4469


Diffs
-----

  src/main/java/org/apache/hadoop/hbase/regionserver/StoreScanner.java 7b0b9e6 
  src/main/java/org/apache/hadoop/hbase/regionserver/ScanQueryMatcher.java 
8dd8a68 
  src/main/java/org/apache/hadoop/hbase/regionserver/StoreFileScanner.java 
abccea4 

Diff: https://reviews.apache.org/r/2235/diff


Testing
-------

Run all the unit tests.
There are 2 unit tests failed with and without my change.
TestDistributedLogSplitting
TestHTablePool


Thanks,

Liyin


                
> Avoid top row seek by looking up bloomfilter
> --------------------------------------------
>
>                 Key: HBASE-4469
>                 URL: https://issues.apache.org/jira/browse/HBASE-4469
>             Project: HBase
>          Issue Type: Improvement
>            Reporter: Liyin Tang
>            Assignee: Liyin Tang
>
> The problem is that when seeking for the row/col in the hfile, we will go to 
> top of the row in order to check for row delete marker (delete family). 
> However, if the bloomfilter is enabled for the column family, then if a 
> delete family operation is done on a row, the row is already being added to 
> bloomfilter. We can take advantage of this factor to avoid seeking to the top 
> of row.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

Reply via email to