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

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

PrefetchExecutor misses the License header. May be rename it as 
HfileBlockPrefetchExecutor? (just a nit).
On Exception during prefetch should cancel() be called on the catch block?



> Blockcache prefetch option
> --------------------------
>
>                 Key: HBASE-9857
>                 URL: https://issues.apache.org/jira/browse/HBASE-9857
>             Project: HBase
>          Issue Type: Improvement
>            Reporter: Andrew Purtell
>            Assignee: Andrew Purtell
>            Priority: Minor
>             Fix For: 0.99.0, 0.98.3
>
>         Attachments: 9857.patch, 9857.patch, HBASE-9857-0.98.patch, 
> HBASE-9857-trunk.patch, HBASE-9857-trunk.patch
>
>
> Attached patch implements a prefetching function for HFile (v3) blocks, if 
> indicated by a column family or regionserver property. The purpose of this 
> change is to as rapidly after region open as reasonable warm the blockcache 
> with all the data and index blocks of (presumably also in-memory) table data, 
> without counting those block loads as cache misses. Great for fast reads and 
> keeping the cache hit ratio high. Can tune the IO impact versus time until 
> all data blocks are in cache. Works a bit like CompactSplitThread. Makes some 
> effort not to stampede.
> I have been using this for setting up various experiments and thought I'd 
> polish it up a bit and throw it out there. If the data to be preloaded will 
> not fit in blockcache, or if as a percentage of blockcache it is large, this 
> is not a good idea, will just blow out the cache and trigger a lot of useless 
> GC activity. Might be useful as an expert tuning option though. Or not.



--
This message was sent by Atlassian JIRA
(v6.2#6252)

Reply via email to