[
https://issues.apache.org/jira/browse/HBASE-2468?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12870235#action_12870235
]
Andrew Purtell commented on HBASE-2468:
---------------------------------------
bq. I'm unsure if I like the approach of aggressively pre-warming though you
don't ask for it (prefetch on HTable instantiation, and auto look-ahead in
locateRegionInMeta
This is what this issue is asking for as I read it.
bq. I think I would prefer adding an additional constructor w/ a warm boolean
to determine whether META should be warmed for that table or not.
That makes sense to me as long as the boolean defaults to _true_.
bq. I don't quite understand the prefetching in locateRegionInMeta(). If you
want to pre-cache meta, you should warm the HTable on construction. Is this to
try to update neighboring regions in case they got stale?
If the cache misses if due to a split, scanning forward a couple of entries has
a reasonable chance of picking up related changes. Should be less than 10. 1?
2?
> Improvements to prewarm META cache on clients
> ---------------------------------------------
>
> Key: HBASE-2468
> URL: https://issues.apache.org/jira/browse/HBASE-2468
> Project: Hadoop HBase
> Issue Type: Improvement
> Components: client
> Reporter: Todd Lipcon
> Assignee: Mingjie Lai
> Fix For: 0.21.0
>
> Attachments: HBASE-2468-trunk.patch
>
>
> A couple different use cases cause storms of reads to META during startup.
> For example, a large MR job will cause each map task to hit meta since it
> starts with an empty cache.
> A couple possible improvements have been proposed:
> - MR jobs could ship a copy of META for the table in the DistributedCache
> - Clients could prewarm cache by doing a large scan of all the meta for the
> table instead of random reads for each miss
> - Each miss could fetch ahead some number of rows in META
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.