Go to file
Michael Stack 010012cbcb HBASE-18946 Stochastic load balancer assigns replica regions to the same RS
Added new bulk assign createRoundRobinAssignProcedure to complement
the existing createAssignProcedure. The former asks the balancer for
target servers to set into the created AssignProcedures. The latter
sets no target server into AssignProcedure. When no target server
is specified, we make effort at assign-time at trying to deploy the
region to its old location if there was one.

The new round robin assign procedure creator does not do this. Use
the new round robin method on table create or reenabling offline
regions. Use the old assign in ServerCrashProcedure or in
EnableTable so there is a chance we retain locality.

Bulk preassigning passing all to-be-assigned to the balancer in one
go is good for ensuring good distribution especially when read
replicas in the mix.

The old assign was single-assign scoped so region replicas could
end up on the same server.

M hbase-server/src/main/java/org/apache/hadoop/hbase/master/assignment/AssignProcedure.java
 Cleanup around forceNewPlan. Was confusing.
 Added a Comparator to sort AssignProcedures so meta and system tables
 come ahead of user-space tables.

M hbase-server/src/main/java/org/apache/hadoop/hbase/master/assignment/AssignmentManager.java b/hbase-server/src/main/java/org/apache/hadoop/hbase/master/assignment/AssignmentManager.java
 Remove the forceNewPlan argument on createAssignProcedure. Didn't make
 sense given we were creating a new AssignProcedure; the arg had no
 effect.

 (createRoundRobinAssignProcedures) Recast to feed all regions to the balancer in
 bulk and to sort the return so meta and system tables take precedence.

Miscellaneous fixes including keeping the Master around until all
RegionServers are down, documentation on how assignment retention
works, etc.
2017-12-15 08:53:41 -08:00
bin HBASE-19114 Split out o.a.h.h.zookeeper from hbase-server and hbase-client 2017-11-17 13:20:18 -08:00
conf HBASE-19114 Split out o.a.h.h.zookeeper from hbase-server and hbase-client 2017-11-17 13:20:18 -08:00
dev-support HBASE-19489 Adds QUICK_HADOOPCHECK flag to check against only the latest maintenance releases in "hadoopcheck". Updates hadoop version to 3.0.0-beta1. 2017-12-12 23:22:04 -08:00
hbase-annotations HBASE-19373 Fixed remaining Checkstyle error in hbase-annotations 2017-12-08 23:18:52 +01:00
hbase-archetypes HBASE-19114 Split out o.a.h.h.zookeeper from hbase-server and hbase-client 2017-11-17 13:20:18 -08:00
hbase-assembly HBASE-19114 Split out o.a.h.h.zookeeper from hbase-server and hbase-client 2017-11-17 13:20:18 -08:00
hbase-backup HBASE-19267 Remove compiler-plugin mapping executions as it breaks Java8 detection 2017-12-14 15:11:19 -05:00
hbase-build-configuration HBASE-17823 Migrate to Apache Yetus Audience Annotations 2017-09-12 20:53:30 -05:00
hbase-build-support HBASE-19180 Removed unused imports from AlwaysPasses 2017-12-08 22:58:27 +01:00
hbase-checkstyle HBASE-19262 Revisit checkstyle rules 2017-11-16 09:43:08 +08:00
hbase-client HBASE-19462 Deprecate all addImmutable methods in Put 2017-12-14 14:15:54 -08:00
hbase-common HBASE-19267 Remove compiler-plugin mapping executions as it breaks Java8 detection 2017-12-14 15:11:19 -05:00
hbase-endpoint HBASE-19472 Remove ArrayUtil Class 2017-12-13 19:02:07 +08:00
hbase-examples HBASE-19462 Deprecate all addImmutable methods in Put 2017-12-14 14:15:54 -08:00
hbase-external-blockcache HBASE-19267 Remove compiler-plugin mapping executions as it breaks Java8 detection 2017-12-14 15:11:19 -05:00
hbase-hadoop-compat HBASE-19267 Remove compiler-plugin mapping executions as it breaks Java8 detection 2017-12-14 15:11:19 -05:00
hbase-hadoop2-compat HBASE-19267 Remove compiler-plugin mapping executions as it breaks Java8 detection 2017-12-14 15:11:19 -05:00
hbase-http HBASE-19267 Remove compiler-plugin mapping executions as it breaks Java8 detection 2017-12-14 15:11:19 -05:00
hbase-it HBASE-19267 Remove compiler-plugin mapping executions as it breaks Java8 detection 2017-12-14 15:11:19 -05:00
hbase-mapreduce HBASE-19267 Remove compiler-plugin mapping executions as it breaks Java8 detection 2017-12-14 15:11:19 -05:00
hbase-metrics HBASE-18925 Update mockito dependency from mockito-all:1.10.19 to mockito-core:2.1.0 for JDK8 support. 2017-11-01 14:21:38 -07:00
hbase-metrics-api HBASE-18925 Update mockito dependency from mockito-all:1.10.19 to mockito-core:2.1.0 for JDK8 support. 2017-11-01 14:21:38 -07:00
hbase-native-client HBASE-14087 Ensure correct ASF headers for docs/code 2015-07-29 14:25:43 -05:00
hbase-procedure HBASE-18946 Stochastic load balancer assigns replica regions to the same RS 2017-12-15 08:53:41 -08:00
hbase-protocol HBASE-19267 Remove compiler-plugin mapping executions as it breaks Java8 detection 2017-12-14 15:11:19 -05:00
hbase-protocol-shaded HBASE-19000 Group multiple block cache clear requests per server 2017-12-13 07:47:09 -08:00
hbase-replication HBASE-19267 Remove compiler-plugin mapping executions as it breaks Java8 detection 2017-12-14 15:11:19 -05:00
hbase-resource-bundle HBASE-19489 Adds QUICK_HADOOPCHECK flag to check against only the latest maintenance releases in "hadoopcheck". Updates hadoop version to 3.0.0-beta1. 2017-12-12 23:22:04 -08:00
hbase-rest HBASE-19462 Deprecate all addImmutable methods in Put 2017-12-14 14:15:54 -08:00
hbase-rsgroup HBASE-19267 Remove compiler-plugin mapping executions as it breaks Java8 detection 2017-12-14 15:11:19 -05:00
hbase-server HBASE-18946 Stochastic load balancer assigns replica regions to the same RS 2017-12-15 08:53:41 -08:00
hbase-shaded HBASE-18925 Update mockito dependency from mockito-all:1.10.19 to mockito-core:2.1.0 for JDK8 support. 2017-11-01 14:21:38 -07:00
hbase-shell HBASE-19267 Remove compiler-plugin mapping executions as it breaks Java8 detection 2017-12-14 15:11:19 -05:00
hbase-spark HBASE-19387 Fix Hbase-spark Arm64 SnappyError 2017-12-08 09:22:59 -08:00
hbase-spark-it HBASE-18782 Module untangling work 2017-09-10 18:10:56 -07:00
hbase-testing-util HBASE-19349 Introduce wrong version depencency of servlet-api jar 2017-12-07 17:50:30 -08:00
hbase-thrift HBASE-19462 Deprecate all addImmutable methods in Put 2017-12-14 14:15:54 -08:00
hbase-zookeeper HBASE-19267 Remove compiler-plugin mapping executions as it breaks Java8 detection 2017-12-14 15:11:19 -05:00
src HBASE-18988 Add release managers to reference guide 2017-12-10 21:36:47 +01:00
.gitattributes HBASE-6816. [WINDOWS] line endings on checkout for .sh files 2013-01-23 19:30:14 +00:00
.gitignore HBASE-19175 Added linklint files to gitignore 2017-11-07 08:25:48 +01:00
.pylintrc HBASE-18041 Add .pylintrc to HBase 2017-06-28 12:22:37 -05:00
CHANGES.txt HBASE-18548 Move sources of website gen and check jobs into source control 2017-08-10 14:48:14 -07:00
LICENSE.txt HBASE-18548 Move sources of website gen and check jobs into source control 2017-08-10 14:48:14 -07:00
NOTICE.txt HBASE-18548 Move sources of website gen and check jobs into source control 2017-08-10 14:48:14 -07:00
README.txt HBASE-18548 Move sources of website gen and check jobs into source control 2017-08-10 14:48:14 -07:00
pom.xml HBASE-19489 Adds QUICK_HADOOPCHECK flag to check against only the latest maintenance releases in "hadoopcheck". Updates hadoop version to 3.0.0-beta1. 2017-12-12 23:22:04 -08:00

README.txt

Apache HBase [1] is an open-source, distributed, versioned, column-oriented
store modeled after Google' Bigtable: A Distributed Storage System for
Structured Data by Chang et al.[2]  Just as Bigtable leverages the distributed
data storage provided by the Google File System, HBase provides Bigtable-like
capabilities on top of Apache Hadoop [3].

To get started using HBase, the full documentation for this release can be
found under the doc/ directory that accompanies this README.  Using a browser,
open the docs/index.html to view the project home page (or browse to [1]).
The hbase 'book' at http://hbase.apache.org/book.html has a 'quick start'
section and is where you should being your exploration of the hbase project.

The latest HBase can be downloaded from an Apache Mirror [4].

The source code can be found at [5]

The HBase issue tracker is at [6]

Apache HBase is made available under the Apache License, version 2.0 [7]

The HBase mailing lists and archives are listed here [8].

The HBase distribution includes cryptographic software. See the export control
notice here [9].

1. http://hbase.apache.org
2. http://research.google.com/archive/bigtable.html
3. http://hadoop.apache.org
4. http://www.apache.org/dyn/closer.cgi/hbase/
5. https://hbase.apache.org/source-repository.html
6. https://hbase.apache.org/issue-tracking.html
7. http://hbase.apache.org/license.html
8. http://hbase.apache.org/mail-lists.html
9. https://hbase.apache.org/export_control.html