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 C85DD181C1 for ; Mon, 24 Aug 2015 17:33:08 +0000 (UTC) Received: (qmail 53384 invoked by uid 500); 24 Aug 2015 17:33:06 -0000 Delivered-To: apmail-hbase-user-archive@hbase.apache.org Received: (qmail 53313 invoked by uid 500); 24 Aug 2015 17:33:06 -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 53302 invoked by uid 99); 24 Aug 2015 17:33:06 -0000 Received: from Unknown (HELO spamd4-us-west.apache.org) (209.188.14.142) by apache.org (qpsmtpd/0.29) with ESMTP; Mon, 24 Aug 2015 17:33:06 +0000 Received: from localhost (localhost [127.0.0.1]) by spamd4-us-west.apache.org (ASF Mail Server at spamd4-us-west.apache.org) with ESMTP id 2902DC0332 for ; Mon, 24 Aug 2015 17:33:06 +0000 (UTC) X-Virus-Scanned: Debian amavisd-new at spamd4-us-west.apache.org X-Spam-Flag: NO X-Spam-Score: 3.999 X-Spam-Level: *** X-Spam-Status: No, score=3.999 tagged_above=-999 required=6.31 tests=[HTML_MESSAGE=3, KAM_LAZY_DOMAIN_SECURITY=1, RCVD_IN_MSPIKE_H2=-0.001] autolearn=disabled Received: from mx1-us-east.apache.org ([10.40.0.8]) by localhost (spamd4-us-west.apache.org [10.40.0.11]) (amavisd-new, port 10024) with ESMTP id 6QJp7cz3kHZW for ; Mon, 24 Aug 2015 17:33:04 +0000 (UTC) Received: from mail-qg0-f41.google.com (mail-qg0-f41.google.com [209.85.192.41]) by mx1-us-east.apache.org (ASF Mail Server at mx1-us-east.apache.org) with ESMTPS id 295A542921 for ; Mon, 24 Aug 2015 17:33:04 +0000 (UTC) Received: by qgeh99 with SMTP id h99so31642431qge.0 for ; Mon, 24 Aug 2015 10:33:04 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:mime-version:in-reply-to:references:from:date :message-id:subject:to:content-type; bh=tuAGOxWVWn31YoFSFkZyTQH3KszlvSMnYh2xkxBwy3I=; b=YM9d7QfnyIeUXSZY5qFPkF/y7lAhiNvjpsPE5A2ZPq3RVoEzI5uKS+6Py5peyhhvOy vP67J4f3jOeCxTzNBo5KayUE7mUnJor+J4/KY+QoWQtQN+ejrOFs3trqfi6QNJcdC95B 0nBJP4RR1OAU33cSmPhmV06FH768/EpBGyh84F1w9bQwk7MTbYosMsG0EXXV/Jj/KoVV mDIDSlDfwkP2kwoA/8LFWiCA1LDZONZENQZ0mCbgtzeymQdLg2f92NY3TU3+e4ZjWWP1 rVqT+R1APwv9mch9U2mZE93PFEcyKwdnpHzdLa+Ur7i4/IVhJvLc3j9WHyQBXllEKjRt uxpg== X-Gm-Message-State: ALoCoQn7Mnw2tKRsvuH23QxpeDWEhM5Zx7vcjthxMY5TqJwRx3T4+N4S0Lh6GK3WBUr51oijaHKv X-Received: by 10.140.151.5 with SMTP id 5mr58557100qhx.27.1440437583899; Mon, 24 Aug 2015 10:33:03 -0700 (PDT) MIME-Version: 1.0 Received: by 10.140.31.130 with HTTP; Mon, 24 Aug 2015 10:32:44 -0700 (PDT) In-Reply-To: References: <65196D60-146E-45A0-BFC0-B02B4EFB6578@gmail.com> From: Jean-Marc Spaggiari Date: Mon, 24 Aug 2015 13:32:44 -0400 Message-ID: Subject: Re: optimal size for Hbase.hregion.memstore.flush.size and its impact To: user Content-Type: multipart/alternative; boundary=001a1135275082766a051e1202b9 --001a1135275082766a051e1202b9 Content-Type: text/plain; charset=UTF-8 The split policy also uses the flush size to estimate how to split tables... It's sometime fine to upgrade thise number a bit. Like, to 256MB. But 512 is pretty high.... And 800MB is even more. Big memstores takes more time to get flush and can block the writes if they are not fast enough. If yours are fast enough, then you might be able to stay with 512MB. I don't think 800MB is a good idea... JM 2015-08-24 13:23 GMT-04:00 Vladimir Rodionov : > 1. How many regions per RS? > 2. What is your dfs.block.size? > 3. What is your hbase.regionserver.maxlogs? > > Flush can be requested when: > > 1. Region size exceeds hbase.hregion.memstore.flush.size > 2. Region's memstore is too old (periodic memstore flusher checks the age > of memstore, default is 1hour) Controlled by > hbase.regionserver.optionalcacheflushinterval (in ms) > 3. There too many unflushed changes in a Region. Controlled by > hbase.regionserver.flush.per.changes, default is 30,000,000 > 4. WAL is rolling prematurely, controlled by hbase.regionserver.maxlogs > and dfs.block.size. > > You calculate optimal: hbase.regionserver.maxlogs * dfs.block.size * 0.95 > > hbase.regionserver.global.memstore.upperLimit * HBASE_HEAPSIZE > > I recommend you to enable DEBUG logging and analyze MemStoreFlusher, > PeriodicMemstoreFlusher and HRegion flush related log messages to get idea > why flush was requested on a region(s), what was the region size at that > time. > > I think, in your case it is either premature WAL rolling or too many > changes in a memstore. > > -Vlad > > > On Wed, May 27, 2015 at 1:53 PM, Gautam Borah > wrote: > > > Hi all, > > > > The default size of Hbase.hregion.memstore.flush.size is define as 128 MB > > for Hbase.hregion.memstore.flush.size. Could anyone kindly explain what > > would be the impact if we increase this to a higher value 512 MB or 800 > MB > > or higher. > > > > We have a very write heavy cluster. Also we run periodic end point co > > processor based jobs that operate on the data written in the last 10-15 > > mins, every 10 minute. We are trying to manage the memstore flush > > operations such that the hot data remains in memstore for at least 30-40 > > mins or longer, so that the job hits disk every 3rd or 4th time it tries > to > > operate on the hot data (it does scan). > > > > We have region server heap size of 20 GB and set the, > > > > hbase.regionserver.global.memstore.lowerLimit = .45 > > hbase.regionserver.global.memstore.upperLimit = .55 > > > > We observed that if we set the Hbase.hregion.memstore.flush.size=128MB > > only 10% of the heap is utilized by memstore, after that memstore > flushes. > > > > At Hbase.hregion.memstore.flush.size=512MB, we are able to increase the > > heap utelization to by memstore to 35%. > > > > It would be very helpful for us to understand the implication of higher > > Hbase.hregion.memstore.flush.size for a long running cluster. > > > > Thanks, > > Gautam > --001a1135275082766a051e1202b9--