[
https://issues.apache.org/jira/browse/HBASE-2468?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12878360#action_12878360
]
HBase Review Board commented on HBASE-2468:
-------------------------------------------
Message from: "Mingjie Lai" <[email protected]>
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
http://review.hbase.org/r/98/
-----------------------------------------------------------
(Updated 2010-06-13 00:49:50.977413)
Review request for hbase, Todd Lipcon and stack.
Changes
-------
1) resolved conflicts from the latest code commits
2) added get/setRegionCachePrefetch() in HTable, removed
isRegionCachePrefetchEnabled(), enableRegionCachePrefetch(), etc.
3) in MetaScanner, added Math.min(rowLimit, configuration.getInt(...))
Summary
-------
HBASE-2468: Improvements to prewarm META cache on clients.
Changes:
1. Add new HTable methods which support region info de/serialation, and region
cache prewarm:
- void serializeRegionInfo(): clients could perform a large scan for all the
meta for the table, serialize the meta to a file. MR job can ship a copy of the
meta for the table in the DistributedCache
- Map<HRegionInfo, HServerAddress> deserializeRegionInfo(): MR job can
deserialize the region info from the DistributedCache
- prewarmRegionCache(Map<HRegionInfo, HServerAddress> regionMap): MR job can
prewarm local region cache by the deserialized region info.
2. For each client, each region cache read-miss could trigger read-ahead some
number of rows in META. This option could be turned on and off for one
particular table.
This addresses bug HBASE-2468.
http://issues.apache.org/jira/browse/HBASE-2468
Diffs (updated)
-----
src/main/java/org/apache/hadoop/hbase/client/HConnection.java 853164d
src/main/java/org/apache/hadoop/hbase/client/HConnectionManager.java 03cbf8d
src/main/java/org/apache/hadoop/hbase/client/HTable.java 8e47f2d
src/main/java/org/apache/hadoop/hbase/client/MetaScanner.java f11ada7
src/test/java/org/apache/hadoop/hbase/client/TestFromClientSide.java 95e494a
Diff: http://review.hbase.org/r/98/diff
Testing
-------
Unit tests passed locally for me.
Thanks,
Mingjie
> Improvements to prewarm META cache on clients
> ---------------------------------------------
>
> Key: HBASE-2468
> URL: https://issues.apache.org/jira/browse/HBASE-2468
> Project: 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.