Return-Path: X-Original-To: apmail-hbase-user-archive@www.apache.org Delivered-To: apmail-hbase-user-archive@www.apache.org Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by minotaur.apache.org (Postfix) with SMTP id EE9A49EFE for ; Thu, 23 Aug 2012 12:22:10 +0000 (UTC) Received: (qmail 38843 invoked by uid 500); 23 Aug 2012 12:22:09 -0000 Delivered-To: apmail-hbase-user-archive@hbase.apache.org Received: (qmail 38678 invoked by uid 500); 23 Aug 2012 12:22:08 -0000 Mailing-List: contact user-help@hbase.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: user@hbase.apache.org Delivered-To: mailing list user@hbase.apache.org Received: (qmail 38667 invoked by uid 99); 23 Aug 2012 12:22:08 -0000 Received: from nike.apache.org (HELO nike.apache.org) (192.87.106.230) by apache.org (qpsmtpd/0.29) with ESMTP; Thu, 23 Aug 2012 12:22:08 +0000 X-ASF-Spam-Status: No, hits=-0.7 required=5.0 tests=RCVD_IN_DNSWL_LOW,SPF_PASS X-Spam-Check-By: apache.org Received-SPF: pass (nike.apache.org: domain of doug.meil@explorysmedical.com designates 216.32.180.188 as permitted sender) Received: from [216.32.180.188] (HELO co1outboundpool.messaging.microsoft.com) (216.32.180.188) by apache.org (qpsmtpd/0.29) with ESMTP; Thu, 23 Aug 2012 12:22:00 +0000 Received: from mail40-co1-R.bigfish.com (10.243.78.251) by CO1EHSOBE009.bigfish.com (10.243.66.72) with Microsoft SMTP Server id 14.1.225.23; Thu, 23 Aug 2012 12:21:39 +0000 Received: from mail40-co1 (localhost [127.0.0.1]) by mail40-co1-R.bigfish.com (Postfix) with ESMTP id E2860DC00D2; Thu, 23 Aug 2012 12:21:38 +0000 (UTC) X-Forefront-Antispam-Report: CIP:157.56.241.133;KIP:(null);UIP:(null);IPV:NLI;H:BL2PRD0411HT003.namprd04.prod.outlook.com;RD:none;EFVD:NLI X-SpamScore: -4 X-BigFish: PS-4(zzbb2dI98dI9371I1432Izz1202hzz8275ch8275bh8275dhz2fh2a8h668h839h946he5bhf0ah107ah1155h) Received-SPF: pass (mail40-co1: domain of explorysmedical.com designates 157.56.241.133 as permitted sender) client-ip=157.56.241.133; envelope-from=doug.meil@explorysmedical.com; helo=BL2PRD0411HT003.namprd04.prod.outlook.com ;.outlook.com ; Received: from mail40-co1 (localhost.localdomain [127.0.0.1]) by mail40-co1 (MessageSwitch) id 1345724496806711_17828; Thu, 23 Aug 2012 12:21:36 +0000 (UTC) Received: from CO1EHSMHS028.bigfish.com (unknown [10.243.78.233]) by mail40-co1.bigfish.com (Postfix) with ESMTP id B9AB1720042; Thu, 23 Aug 2012 12:21:36 +0000 (UTC) Received: from BL2PRD0411HT003.namprd04.prod.outlook.com (157.56.241.133) by CO1EHSMHS028.bigfish.com (10.243.66.38) with Microsoft SMTP Server (TLS) id 14.1.225.23; Thu, 23 Aug 2012 12:21:33 +0000 Received: from BL2PRD0411MB397.namprd04.prod.outlook.com ([169.254.10.32]) by BL2PRD0411HT003.namprd04.prod.outlook.com ([10.255.130.38]) with mapi id 14.16.0190.008; Thu, 23 Aug 2012 12:21:32 +0000 From: Doug Meil To: "user@hbase.apache.org" CC: "stack@duboce.net" Subject: Re: how client location a region/tablet? Thread-Topic: how client location a region/tablet? Thread-Index: AQHNfSHWcDciiuFrD06kHfTNh8Ln2pdgj1UAgAB0IgCABhLYAA== Date: Thu, 23 Aug 2012 12:21:31 +0000 Message-ID: In-Reply-To: Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-originating-ip: [10.255.130.4] Content-Type: text/plain; charset="Windows-1252" Content-ID: Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 X-OriginatorOrg: explorysmedical.com For further information about the catalog tables and region-regionserver assignment, see this=8A http://hbase.apache.org/book.html#arch.catalog On 8/19/12 7:36 AM, "Lin Ma" wrote: >Thank you Stack, especially for the smart 6 round trip guess for the >puzzle. :-) > >1. "Yeah, we client cache's locations, not the data." -- does it mean for >each client, it will cache all location information of a HBase cluster, >i.e. which physical server owns which region? Supposing each region has >128M bytes, for a big cluster (P-bytes level), total data size / 128M is >not a trivial number, not sure if any overhead to client? >2. A bit confused by what do you mean "not the data"? For the client >cached >location information, it should be the data in table METADATA, which is >region / physical server mapping data. Why you say not data (do you mean >real content in each region)? > >regards, >Lin > >On Sun, Aug 19, 2012 at 12:40 PM, Stack wrote: > >> On Sat, Aug 18, 2012 at 2:13 AM, Lin Ma wrote: >> > Hello guys, >> > >> > I am referencing the Big Table paper about how a client locates a >>tablet. >> > In section 5.1 Tablet location, it is mentioned that client will cache >> all >> > tablet locations, I think it means client will cache root tablet in >> > METADATA table, and all other tablets in METADATA table (which means >> client >> > cache the whole METADATA table?). My question is, whether HBase >> implements >> > in the same or similar way? My concern or confusion is, supposing each >> > tablet or region file is 128M bytes, it will be very huge space (i.e. >> > memory footprint) for each client to cache all tablets or region >>files of >> > METADATA table. Is it doable or feasible in real HBase clusters? >>Thanks. >> > >> >> Yeah, we client cache's locations, not the data. >> >> >> > BTW: another confusion from me is in the paper of Big Table section >>5.1 >> > Tablet location, it is mentioned that "If the client=B9s cache is stal= e, >> the >> > location algorithm could take up to six round-trips, because stale >>cache >> > entries are only discovered upon misses (assuming that METADATA >>tablets >> do >> > not move very frequently).", I do not know how the 6 times round trip >> time >> > is calculated, if anyone could answer this puzzle, it will be great. >>:-) >> > >> >> I'm not sure what the 6 is about either. Here is a guesstimate: >> >> 1. Go to cached location for a server for a particular user region, >> but server says that it does not have a region, the client location is >> stale >> 2. Go back to client cached meta region that holds user region w/ row >> we want, but its location is stale. >> 3. Go to root location, to find new location of meta, but the root >> location has moved.... what the client has is stale >> 4. Find new root location and do lookup of meta region location >> 5. Go to meta region location to find new user region >> 6. Go to server w/ user region >> >> St.Ack >>