-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
http://review.hbase.org/r/257/#review395
-----------------------------------------------------------

Ship it!


lgtm

- Ryan


On 2010-07-12 14:48:59, Pranav Khaitan wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> http://review.hbase.org/r/257/
> -----------------------------------------------------------
> 
> (Updated 2010-07-12 14:48:59)
> 
> 
> Review request for hbase, Nicolas, Jonathan Gray, Ryan Rawson, Karthik 
> Ranganathan, and Kannan Muthukkaruppan.
> 
> 
> Summary
> -------
> 
> Every memstore and store file will have a minimum and maximum timestamp 
> associated with it. If the range of timestamps we are searching for doesn't 
> overlap with the range for a particular file, we can skip searching it and 
> save time.
> 
> Would significantly improve the performance for timestamp range queries. 
> Particularly useful when most of the reads are for recent entries and the 
> older files can be safely skipped. 
> 
> Addresses HBASE-2265 JIRA. 
> 
> This diff includes fixing some minor bugs like KeyValueHeap used to throw an 
> uncaught exception when size of scanner set was zero. 
> 
> Internal review done by Jonathan and Kannan.
> 
> 
> This addresses bug HBASE-2265.
>     http://issues.apache.org/jira/browse/HBASE-2265
> 
> 
> Diffs
> -----
> 
>   trunk/src/main/java/org/apache/hadoop/hbase/KeyValue.java 959782 
>   trunk/src/main/java/org/apache/hadoop/hbase/regionserver/KeyValueHeap.java 
> 959782 
>   trunk/src/main/java/org/apache/hadoop/hbase/regionserver/MemStore.java 
> 959782 
>   trunk/src/main/java/org/apache/hadoop/hbase/regionserver/Store.java 959782 
>   trunk/src/main/java/org/apache/hadoop/hbase/regionserver/StoreFile.java 
> 959782 
>   
> trunk/src/main/java/org/apache/hadoop/hbase/regionserver/StoreFileScanner.java
>  959782 
>   trunk/src/main/java/org/apache/hadoop/hbase/regionserver/StoreScanner.java 
> 959782 
>   
> trunk/src/main/java/org/apache/hadoop/hbase/regionserver/TimeRangeTracker.java
>  PRE-CREATION 
>   
> trunk/src/test/java/org/apache/hadoop/hbase/client/TestMultipleTimestamps.java
>  PRE-CREATION 
>   trunk/src/test/java/org/apache/hadoop/hbase/regionserver/TestMemStore.java 
> 960082 
>   trunk/src/test/java/org/apache/hadoop/hbase/regionserver/TestStore.java 
> 959782 
>   trunk/src/test/java/org/apache/hadoop/hbase/regionserver/TestStoreFile.java 
> 959782 
> 
> Diff: http://review.hbase.org/r/257/diff
> 
> 
> Testing
> -------
> 
> All existing JUnit tests run successfully. More JUnit tests for Memstore, 
> StoreFile and Store added to test correctness with multiple timestamps.
> 
> Conducted a test to measure the extra time required to keep track of min and 
> max timestamps while writing KeyValues.  The comparison was done by entering 
> 1 Million KeyValues into memstore ten times with and without timestamp 
> tracking and then taking the average time for each of them.  WAL was disabled 
> and no flushing was done during this test to minimize overheads. The average 
> time taken for entering 1M KeyValues into memstore without keeping track of 
> timestamp was 13.44 seconds while the average time when keeping track of 
> timestamps was 13.45 seconds. This shows that no significant overhead has 
> been added while keeping track of timestamps.
> 
> 
> Thanks,
> 
> Pranav
> 
>

Reply via email to