Return-Path: Delivered-To: apmail-hbase-issues-archive@www.apache.org Received: (qmail 61580 invoked from network); 21 May 2010 23:08:42 -0000 Received: from unknown (HELO mail.apache.org) (140.211.11.3) by 140.211.11.9 with SMTP; 21 May 2010 23:08:42 -0000 Received: (qmail 1502 invoked by uid 500); 21 May 2010 23:08:42 -0000 Delivered-To: apmail-hbase-issues-archive@hbase.apache.org Received: (qmail 1483 invoked by uid 500); 21 May 2010 23:08:42 -0000 Mailing-List: contact issues-help@hbase.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Delivered-To: mailing list issues@hbase.apache.org Received: (qmail 1475 invoked by uid 500); 21 May 2010 23:08:42 -0000 Delivered-To: apmail-hadoop-hbase-issues@hadoop.apache.org Received: (qmail 1472 invoked by uid 99); 21 May 2010 23:08:42 -0000 Received: from athena.apache.org (HELO athena.apache.org) (140.211.11.136) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 21 May 2010 23:08:42 +0000 X-ASF-Spam-Status: No, hits=-1454.4 required=10.0 tests=ALL_TRUSTED,AWL X-Spam-Check-By: apache.org Received: from [140.211.11.22] (HELO thor.apache.org) (140.211.11.22) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 21 May 2010 23:08:42 +0000 Received: from thor (localhost [127.0.0.1]) by thor.apache.org (8.13.8+Sun/8.13.8) with ESMTP id o4LN8LUe020013 for ; Fri, 21 May 2010 23:08:21 GMT Message-ID: <31787422.31291274483301073.JavaMail.jira@thor> Date: Fri, 21 May 2010 19:08:21 -0400 (EDT) From: "Jonathan Gray (JIRA)" To: hbase-issues@hadoop.apache.org Subject: [jira] Commented: (HBASE-2468) Improvements to prewarm META cache on clients MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit X-JIRA-FingerPrint: 30527f35849b9dde25b450d4833f0394 [ https://issues.apache.org/jira/browse/HBASE-2468?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12870215#action_12870215 ] Jonathan Gray commented on HBASE-2468: -------------------------------------- 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) 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. 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? Since 10 seems arbitrary, if we do have this behavior it should probably be configurable. Grabbing 9 extra rows could incur several additional block reads across multiple files. It would also eliminate any chances of using blooms or other optimizations if the META retrievals were never single row reads. So there is a cost to this being the default behavior. Otherwise the patch itself looks good. I'm in the process of changing MetaScanner a bit for some master stuff but should be okay. Good stuff, this has been a long-desired feature! > 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.