[ 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)