Return-Path: X-Original-To: apmail-hbase-issues-archive@www.apache.org Delivered-To: apmail-hbase-issues-archive@www.apache.org Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by minotaur.apache.org (Postfix) with SMTP id E9E781821C for ; Tue, 16 Jun 2015 18:44:01 +0000 (UTC) Received: (qmail 31793 invoked by uid 500); 16 Jun 2015 18:44:01 -0000 Delivered-To: apmail-hbase-issues-archive@hbase.apache.org Received: (qmail 31751 invoked by uid 500); 16 Jun 2015 18:44:01 -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 31728 invoked by uid 99); 16 Jun 2015 18:44:01 -0000 Received: from arcas.apache.org (HELO arcas.apache.org) (140.211.11.28) by apache.org (qpsmtpd/0.29) with ESMTP; Tue, 16 Jun 2015 18:44:01 +0000 Date: Tue, 16 Jun 2015 18:44:01 +0000 (UTC) From: "Elliott Clark (JIRA)" To: issues@hbase.apache.org Message-ID: In-Reply-To: References: Subject: [jira] [Commented] (HBASE-13876) Improving performance of HeapMemoryManager MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-JIRA-FingerPrint: 30527f35849b9dde25b450d4833f0394 [ https://issues.apache.org/jira/browse/HBASE-13876?page=3Dcom.atlassia= n.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=3D145= 88552#comment-14588552 ]=20 Elliott Clark commented on HBASE-13876: --------------------------------------- +1. lgtm > Improving performance of HeapMemoryManager > ------------------------------------------ > > Key: HBASE-13876 > URL: https://issues.apache.org/jira/browse/HBASE-13876 > Project: HBase > Issue Type: Improvement > Components: hbase, regionserver > Affects Versions: 2.0.0, 1.0.1, 1.1.0, 1.1.1 > Reporter: Abhilash > Assignee: Abhilash > Priority: Minor > Attachments: HBASE-13876-v2.patch, HBASE-13876-v3.patch, HBASE-13= 876-v4.patch, HBASE-13876-v5.patch, HBASE-13876-v6.patch, HBASE-13876-v7.pa= tch, HBASE-13876.patch > > > I am trying to improve the performance of DefaultHeapMemoryTuner by intro= ducing some more checks. The current checks under which the DefaultHeapMemo= ryTuner works are very rare so I am trying to weaken these checks to improv= e its performance. > Check current memstore size and current block cache size. For say if we a= re using less than 50% of currently available block cache size we say bloc= k cache is sufficient and same for memstore. This check will be very effect= ive when server is either load heavy or write heavy. Earlier version just w= aited for number of evictions / number of flushes to be zero which are very= rare. > Otherwise based on percent change in number of cache misses and number of= flushes we increase / decrease memory provided for caching / memstore. Aft= er doing so, on next call of HeapMemoryTuner we verify that last change has= indeed decreased number of evictions / flush either of which it was expect= ed to do. We also check that it does not make the other (evictions / flush)= increase much. I am doing this analysis by comparing percent change (which= is basically nothing but normalized derivative) of number of evictions and= number of flushes during last two periods. The main motive for doing this = was that if we have random reads then we will be having a lot of cache miss= es. But even after increasing block cache we wont be able to decrease numbe= r of cache misses and we will revert back and eventually we will not waste = memory on block caches. This will also help us ignore random short term spi= kes in reads / writes. I have also tried to take care not to tune memory if= do do not have enough hints as unnecessary tuning my slow down the system. -- This message was sent by Atlassian JIRA (v6.3.4#6332)