You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@hbase.apache.org by ap...@apache.org on 2019/06/20 20:07:14 UTC

[hbase] branch master updated: HBASE-21284 Default limits for PressureAwareCompactionThroughputController are too low

This is an automated email from the ASF dual-hosted git repository.

apurtell pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/hbase.git


The following commit(s) were added to refs/heads/master by this push:
     new 6d08ffc  HBASE-21284 Default limits for PressureAwareCompactionThroughputController are too low
6d08ffc is described below

commit 6d08ffcfc6e646751b35b111389403329b121c89
Author: Mingliang Liu <li...@apache.org>
AuthorDate: Tue Oct 9 18:46:35 2018 -0700

    HBASE-21284 Default limits for PressureAwareCompactionThroughputController are too low
    
    This is a forward port HBASE-21000 from branch-1.
    
    Signed-off-by: Andrew Purtell <ap...@apache.org>
---
 hbase-common/src/main/resources/hbase-default.xml      | 18 ++++++++++++++++++
 .../PressureAwareCompactionThroughputController.java   |  4 ++--
 src/main/asciidoc/_chapters/upgrading.adoc             | 10 +++++-----
 3 files changed, 25 insertions(+), 7 deletions(-)

diff --git a/hbase-common/src/main/resources/hbase-default.xml b/hbase-common/src/main/resources/hbase-default.xml
index 10eb47b..656c679 100644
--- a/hbase-common/src/main/resources/hbase-default.xml
+++ b/hbase-common/src/main/resources/hbase-default.xml
@@ -938,6 +938,24 @@ possible configurations would overwhelm and obscure the important.
     </description>
   </property>
   <property>
+    <name>hbase.hstore.compaction.throughput.lower.bound</name>
+    <value>52428800</value>
+    <description>The target lower bound on aggregate compaction throughput, in bytes/sec. Allows
+    you to tune the minimum available compaction throughput when the
+    PressureAwareCompactionThroughputController throughput controller is active. (It is active by
+    default.)</description>
+  </property>
+  <property>
+    <name>hbase.hstore.compaction.throughput.higher.bound</name>
+    <value>104857600</value>
+    <description>The target upper bound on aggregate compaction throughput, in bytes/sec. Allows
+    you to control aggregate compaction throughput demand when the
+    PressureAwareCompactionThroughputController throughput controller is active. (It is active by
+    default.) The maximum throughput will be tuned between the lower and upper bounds when
+    compaction pressure is within the range [0.0, 1.0]. If compaction pressure is 1.0 or greater
+    the higher bound will be ignored until pressure returns to the normal range.</description>
+  </property>
+  <property>
     <name>hbase.bucketcache.size</name>
     <value></value>
     <description>A float that EITHER represents a percentage of total heap memory
diff --git a/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/throttle/PressureAwareCompactionThroughputController.java b/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/throttle/PressureAwareCompactionThroughputController.java
index 5052f30..1c3952e 100644
--- a/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/throttle/PressureAwareCompactionThroughputController.java
+++ b/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/throttle/PressureAwareCompactionThroughputController.java
@@ -49,13 +49,13 @@ public class PressureAwareCompactionThroughputController extends PressureAwareTh
       "hbase.hstore.compaction.throughput.higher.bound";
 
   private static final long DEFAULT_HBASE_HSTORE_COMPACTION_MAX_THROUGHPUT_HIGHER_BOUND =
-      20L * 1024 * 1024;
+      100L * 1024 * 1024;
 
   public static final String HBASE_HSTORE_COMPACTION_MAX_THROUGHPUT_LOWER_BOUND =
       "hbase.hstore.compaction.throughput.lower.bound";
 
   private static final long DEFAULT_HBASE_HSTORE_COMPACTION_MAX_THROUGHPUT_LOWER_BOUND =
-      10L * 1024 * 1024;
+      50L * 1024 * 1024;
 
   public static final String HBASE_HSTORE_COMPACTION_MAX_THROUGHPUT_OFFPEAK =
       "hbase.hstore.compaction.throughput.offpeak";
diff --git a/src/main/asciidoc/_chapters/upgrading.adoc b/src/main/asciidoc/_chapters/upgrading.adoc
index e8b3236..70e2605 100644
--- a/src/main/asciidoc/_chapters/upgrading.adoc
+++ b/src/main/asciidoc/_chapters/upgrading.adoc
@@ -644,9 +644,9 @@ link:https://issues.apache.org/jira/browse/HBASE-16231[HBASE-16231]).
 [[upgrade2.0.compaction.throughput.limit]]
 .Default Compaction Throughput
 HBase 2.x comes with default limits to the speed at which compactions can execute. This
-limit is defined per RegionServer. In previous versions of HBase, there was no limit to
-the speed at which a compaction could run by default. Applying a limit to the throughput of
-a compaction should ensure more stable operations from RegionServers.
+limit is defined per RegionServer. In previous versions of HBase earlier than 1.5, there
+was no limit to the speed at which a compaction could run by default. Applying a limit
+to the throughput of a compaction should ensure more stable operations from RegionServers.
 
 Take care to notice that this limit is _per RegionServer_, not _per compaction_.
 
@@ -661,9 +661,9 @@ higher the compaction pressure.
 Configuration of this throughput is governed by the following properties.
 
 - The lower bound is defined by `hbase.hstore.compaction.throughput.lower.bound`
-  and defaults to 10 MB/s (`10485760`).
+  and defaults to 50 MB/s (`52428800`).
 - The upper bound is defined by `hbase.hstore.compaction.throughput.higher.bound`
-  and defaults to 20 MB/s (`20971520`).
+  and defaults to 100 MB/s (`104857600`).
 
 To revert this behavior to the unlimited compaction throughput of earlier versions
 of HBase, please set the following property to the implementation that applies no