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