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 261C19740 for ; Tue, 21 Aug 2012 01:12:23 +0000 (UTC) Received: (qmail 35582 invoked by uid 500); 21 Aug 2012 01:12:21 -0000 Delivered-To: apmail-hbase-user-archive@hbase.apache.org Received: (qmail 35532 invoked by uid 500); 21 Aug 2012 01:12:21 -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 35520 invoked by uid 99); 21 Aug 2012 01:12:21 -0000 Received: from nike.apache.org (HELO nike.apache.org) (192.87.106.230) by apache.org (qpsmtpd/0.29) with ESMTP; Tue, 21 Aug 2012 01:12:21 +0000 X-ASF-Spam-Status: No, hits=2.5 required=5.0 tests=FREEMAIL_FORGED_REPLYTO,RCVD_IN_DNSWL_NONE,SPF_PASS X-Spam-Check-By: apache.org Received-SPF: pass (nike.apache.org: local policy) Received: from [98.138.91.180] (HELO nm20-vm4.bullet.mail.ne1.yahoo.com) (98.138.91.180) by apache.org (qpsmtpd/0.29) with SMTP; Tue, 21 Aug 2012 01:12:10 +0000 Received: from [98.138.90.51] by nm20.bullet.mail.ne1.yahoo.com with NNFMP; 21 Aug 2012 01:11:48 -0000 Received: from [98.138.88.235] by tm4.bullet.mail.ne1.yahoo.com with NNFMP; 21 Aug 2012 01:11:48 -0000 Received: from [127.0.0.1] by omp1035.mail.ne1.yahoo.com with NNFMP; 21 Aug 2012 01:11:48 -0000 X-Yahoo-Newman-Property: ymail-3 X-Yahoo-Newman-Id: 553701.72589.bm@omp1035.mail.ne1.yahoo.com Received: (qmail 6054 invoked by uid 60001); 21 Aug 2012 01:11:48 -0000 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yahoo.com; s=s1024; t=1345511508; bh=qDfRdmbzy0Dnj/WSBZX0Hm8m/0PV/2dumP603EzAgR4=; h=X-YMail-OSG:Received:X-Mailer:References:Message-ID:Date:From:Reply-To:Subject:To:In-Reply-To:MIME-Version:Content-Type; b=Ai3sRkb9UGY5bQlVo7zFlt17kHkfD4kbTJbSqrVgnz/3ColyvrY6KzmBJPVBq+kk2gX+xo8+HcBGmIGZ3M7p8LVDjJ6WlPN+BqSpf3/g+k4NwBzrd6dO3h78QSNzGimOLvaC5db49PrCle2qc63AyKGp1Qvvd/X1Db12/7EEUn0= DomainKey-Signature: a=rsa-sha1; q=dns; c=nofws; s=s1024; d=yahoo.com; h=X-YMail-OSG:Received:X-Mailer:References:Message-ID:Date:From:Reply-To:Subject:To:In-Reply-To:MIME-Version:Content-Type; b=qchuvmE6yQRN73XuCZXgWTLE+6vDZF9leAT+HV/O6MVqsVlp1Z/GyEsJF3dTgmU2xIGql8kCUSlrRlD1JUg3SUFIlonimrZxIi4gN98zjlres2z2PBD1qgMHq5HErI2crbPtXJNV1AJPkkSpz6kA3bMQJ1pDIjwDBTJ3Q+FnIDE=; X-YMail-OSG: wiT5bjUVM1kFqHvN1cyHdnRvjZZ8dnzyKyhwwwKzMldZduG 2tOE0XzUn_q99_5h_r4I.jHEwzVmLpUWQLCtIi6w_mtARHvcoAD7KMbdyL_X 3ui7ZrpqBaz28BzpO7fLTytWzPsXkkUTJgvUfoU54dWhDBbzCt5VFIvphd47 G_i6sXXMuQEXaKvjznGi2.SfzDEKB0Blm.gO7mSLynGifefXdGpXhkNUAsyK owm6lqY2GvuzqL6oxz8I8ws3g8jEvjwgKoM4QfokJm0qPF2z49sVCXOofuUR 5SjDX73llnfRX66AH3LzHNFwMpLbNOUiHNxkkMehHvJs.Sexy4DvtrmCvaYs WIjJ2Lf6oh9_tr2YsiAAx0gdI12StEbLBo.VRVNEry_riAa53BJpmqb2oz1a PnmJi6I53ROWDVZn7AjUN1Sx6ZEKfFrdMiMGzBxojEuazFqA4VvXNLiJHiY5 tpgEKycDMU.thNU_ThDzBFr_WigZVciGq_SQFAusJFis- Received: from [204.14.239.221] by web121706.mail.ne1.yahoo.com via HTTP; Mon, 20 Aug 2012 18:11:48 PDT X-Mailer: YahooMailWebService/0.8.120.356233 References: Message-ID: <1345511508.85839.YahooMailNeo@web121706.mail.ne1.yahoo.com> Date: Mon, 20 Aug 2012 18:11:48 -0700 (PDT) From: lars hofhansl Reply-To: lars hofhansl Subject: Re: Range Based Filtering with FuzzyRowFilter To: "user@hbase.apache.org" In-Reply-To: MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii You might want to rethink your key schema or denormalize your data at write time. If the key leads with userid then searching for a range of action ids is necessary a full scan through your table, which is not what you want (unless you run these rarely as Map/Reduce type jobs). I assume you have different scans, which scan by userid; so I'd suggest just storing the same data again but with actionid_userid as key. If the values of your cells are large store a mapping of actionid_userid -> userid_actionid in the 2nd table (i.e. a 2ndary index). In that case mind the previous discussions we had about consistency here, though. -- Lars ________________________________ From: anil gupta To: user@hbase.apache.org Sent: Friday, August 17, 2012 1:03 PM Subject: Range Based Filtering with FuzzyRowFilter Hi All, I have a question related to FuzzyRowFilterfilter. I have a similar filtering requirement which might be an extension to FuzzyRowFilter. Suppose, i have the following structure of rowkeys: userid_actionid, where userid is of 6 digit and then actionid is 5 digit. I would like to get all the rows with actionid between 00200 to 00350. With current FuzzyRowFilter i can search for all the rows a particular actionid. Instead of searching for a particular actionid i would like to search for a range of actionid. Does this use case sounds like an extension to current FuzzyRowFilter? Can i run this kind of filter on HBase0.92 without doing any significant update to the cluster. I am willing to put in my efforts to do the necessary changes required in FuzzyRowFilter for my requirement. If you know of any other easier & equally optimized way to do the same then please share that. -- Thanks & Regards, Anil Gupta