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 8F07311797 for ; Mon, 21 Jul 2014 16:43:25 +0000 (UTC) Received: (qmail 65716 invoked by uid 500); 21 Jul 2014 16:43:23 -0000 Delivered-To: apmail-hbase-user-archive@hbase.apache.org Received: (qmail 65647 invoked by uid 500); 21 Jul 2014 16:43:23 -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 65633 invoked by uid 99); 21 Jul 2014 16:43:23 -0000 Received: from nike.apache.org (HELO nike.apache.org) (192.87.106.230) by apache.org (qpsmtpd/0.29) with ESMTP; Mon, 21 Jul 2014 16:43:23 +0000 X-ASF-Spam-Status: No, hits=-2.3 required=5.0 tests=RCVD_IN_DNSWL_MED,SPF_PASS X-Spam-Check-By: apache.org Received-SPF: pass (nike.apache.org: domain of jiao.tao@oracle.com designates 141.146.126.69 as permitted sender) Received: from [141.146.126.69] (HELO aserp1040.oracle.com) (141.146.126.69) by apache.org (qpsmtpd/0.29) with ESMTP; Mon, 21 Jul 2014 16:43:20 +0000 Received: from ucsinet21.oracle.com (ucsinet21.oracle.com [156.151.31.93]) by aserp1040.oracle.com (Sentrion-MTA-4.3.2/Sentrion-MTA-4.3.2) with ESMTP id s6LGgo99003737 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=OK); Mon, 21 Jul 2014 16:42:52 GMT Received: from userz7021.oracle.com (userz7021.oracle.com [156.151.31.85]) by ucsinet21.oracle.com (8.14.4+Sun/8.14.4) with ESMTP id s6LGgn0w026165 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=FAIL); Mon, 21 Jul 2014 16:42:50 GMT Received: from abhmp0013.oracle.com (abhmp0013.oracle.com [141.146.116.19]) by userz7021.oracle.com (8.14.4+Sun/8.14.4) with ESMTP id s6LGgn9J026146; Mon, 21 Jul 2014 16:42:49 GMT Received: from [144.25.174.70] (/144.25.174.70) by default (Oracle Beehive Gateway v4.0) with ESMTP ; Mon, 21 Jul 2014 09:42:49 -0700 Message-ID: <53CD42E5.6000905@oracle.com> Date: Mon, 21 Jul 2014 09:42:13 -0700 From: Jane Tao Organization: Oracle Corporation User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:17.0) Gecko/20130307 Thunderbird/17.0.4 MIME-Version: 1.0 To: stack@duboce.net CC: user@hbase.apache.org Subject: Re: BucketCache Configuration References: <53C6F75C.60108@oracle.com> <1405548870.94850.YahooMailNeo@web190104.mail.sg3.yahoo.com> <53C845D3.9020908@oracle.com> <53C9B1C1.1070305@oracle.com> In-Reply-To: Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-Source-IP: ucsinet21.oracle.com [156.151.31.93] X-Virus-Checked: Checked by ClamAV on apache.org Hi Stack, Does what you suggested apply to HBase 0.94.6? Thanks, Jane On 7/18/2014 5:11 PM, Stack wrote: > On Fri, Jul 18, 2014 at 4:46 PM, Jane Tao wrote: > >> Hi there, >> >> Our goal is to fully utilize the free RAM on each node/region server for >> HBase. At the same time, we do not want to incur too much pressure from GC >> (garbage collection). Based on Ted's sugguestion, we are trying to using >> bucket cache. >> >> However, we are not sure: >> > Sorry. Config is a little complicated at the moment. It has had some > cleanup in trunk. Meantime... > > > >> - The relation between XX:MaxDirectMemorySize and java heap size. Is >> MaxDirectMemorySize part of java heap size ? >> > > No. It is the maximum for how much the JVM should use OFFHEAP. Here is a > bit of a note I just added to the refguide: > > > The default maximum direct memory varies by JVM. > Traditionally it is 64M > or some relation to allocated heap size (-Xmx) or no > limit at all (JDK7 apparently). > HBase servers use direct memory, in particular > short-circuit reading, the hosted DFSClient will > allocate direct memory buffers. If you do offheap > block caching, you'll > be making use of direct memory. Starting your JVM, > make sure > the -XX:MaxDirectMemorySize setting > in > conf/hbase-env.sh is set to some > value that is > higher than what you have allocated to your offheap > blockcache > (hbase.bucketcache.size). It > should be larger than your offheap block > cache and then some for DFSClient usage (How much the > DFSClient uses is not > easy to quantify; it is the number of open hfiles * > hbase.dfs.client.read.shortcircuit.buffer.size > where hbase.dfs.client.read.shortcircuit.buffer.size > is set to 128k in HBase -- see hbase-default.xml > default configurations). > > > > >> - The relation between XX:MaxDirectMemorySize and hbase.bucketcache.size. >> Are they equal? >> > XX:MaxDirectMemorySize should be larger than hbase.bucketcache.size. They > should not be equal. See note above for why. > > > >> - How to adjust hbase.bucketcache.percentage.in.combinedcache? >> >> > Or just leave it as is. To adjust, just set it to other than the default > which is 0.9 (0.9 of hbase.bucketcache.size). This configuration has been > removed from trunk because it is confusing. > > > >> Right now, we have the following configuration. Does it make sense? >> >> - java heap size of each hbase region server to 12 GB >> - -XX:MaxDirectMemorySize to be 6GB >> > Why not set it to 48G since you have the RAM? > > > >> - hbase-site.xml : >> >> hbase.offheapcache.percentage >> 0 >> >> > This setting is not needed. 0 is the default. > > >> >> hbase.bucketcache.ioengine >> offheap >> >> >> hbase.bucketcache.percentage.in.combinedcache >> 0.8 >> >> > Or you could just undo this setting and go with the default which is 0.9. > > >> >> hbase.bucketcache.size >> 6144 >> >> >> > Adjust this to be 40000? (smile). > Let us know how it goes. > > What version of HBase you running? Thanks. > > St.Ack > > > >> Thanks, >> Jane >> >> >> On 7/17/2014 3:05 PM, Ted Yu wrote: >> >>> Have you considered using BucketCache ? >>> >>> Please read 9.6.4.1 under >>> http://hbase.apache.org/book.html#regionserver.arch >>> >>> Note: remember to verify the config values against the hbase release >>> you're >>> using. >>> >>> Cheers >>> >>> >>> On Thu, Jul 17, 2014 at 2:53 PM, Jane Tao wrote: >>> >>> Hi Ted, >>>> In my case, there is a 6 Node HBase cluster setup (running on Oracle >>>> BDA). >>>> Each node has plenty of RAM (64GB) and CPU cores. Several articles seem >>>> to >>>> suggest >>>> that it is not a good idea to allocate too much RAM to region server's >>>> heap setting. >>>> >>>> If each region server has 10GB heap and there is only one region server >>>> per node, then >>>> I have 10x6=60GB for the whole HBase. This setting is good for ~100M rows >>>> but starts >>>> to incur lots of GC activities on region servers when loading billions of >>>> rows. >>>> >>>> Basically, I need a configuration that can fully utilize the free RAM on >>>> each node for HBase. >>>> >>>> Thanks, >>>> Jane >>>> On 7/16/2014 4:17 PM, Ted Yu wrote: >>>> >>>> Jane: >>>>> Can you briefly describe the use case where multiple region servers are >>>>> needed on the same host ? >>>>> >>>>> Cheers >>>>> >>>>> >>>>> >>>>> On Wed, Jul 16, 2014 at 3:14 PM, Dhaval Shah < >>>>> prince_mithibai@yahoo.co.in >>>>> wrote: >>>>> >>>>> Its certainly possible (atleast with command line) but probably very >>>>> >>>>>> messy. You will need to have different ports, different log files, >>>>>> different pid files, possibly even different configs on the same >>>>>> machine. >>>>>> >>>>>> >>>>>> Regards, >>>>>> Dhaval >>>>>> >>>>>> >>>>>> ________________________________ >>>>>> From: Jane Tao >>>>>> To: user@hbase.apache.org >>>>>> Sent: Wednesday, 16 July 2014 6:06 PM >>>>>> Subject: multiple region servers at one machine >>>>>> >>>>>> >>>>>> Hi there, >>>>>> >>>>>> Is it possible to run multiple region servers at one machine/node? If >>>>>> this is possible, how to start multiple region servers with command >>>>>> lines or cloudera manager? >>>>>> >>>>>> Thanks, >>>>>> Jane >>>>>> >>>>>> >>>>>> -- >>>>>> >>>>>> -- >>>> >>>> >> -- >> >> --