blob: 3e524d822d08af5e34a7159bd1049e7b2646118d [file] [log] [blame]
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!-- NewPage -->
<html lang="en">
<head>
<!-- Generated by javadoc -->
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>FavoredStochasticBalancer (Apache HBase 3.0.0-SNAPSHOT API)</title>
<link rel="stylesheet" type="text/css" href="../../../../../../stylesheet.css" title="Style">
<script type="text/javascript" src="../../../../../../script.js"></script>
</head>
<body>
<script type="text/javascript"><!--
try {
if (location.href.indexOf('is-external=true') == -1) {
parent.document.title="FavoredStochasticBalancer (Apache HBase 3.0.0-SNAPSHOT API)";
}
}
catch(err) {
}
//-->
var methods = {"i0":10,"i1":10,"i2":10,"i3":10,"i4":10,"i5":10,"i6":10,"i7":10,"i8":10,"i9":10,"i10":10,"i11":10,"i12":10,"i13":10,"i14":10,"i15":10,"i16":10,"i17":10,"i18":10};
var tabs = {65535:["t0","All Methods"],2:["t2","Instance Methods"],8:["t4","Concrete Methods"]};
var altColor = "altColor";
var rowColor = "rowColor";
var tableTab = "tableTab";
var activeTableTab = "activeTableTab";
</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
<!-- ========= START OF TOP NAVBAR ======= -->
<div class="topNav"><a name="navbar.top">
<!-- -->
</a>
<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
<a name="navbar.top.firstrow">
<!-- -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../../../../../overview-summary.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</li>
<li><a href="class-use/FavoredStochasticBalancer.html">Use</a></li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../../../index-all.html">Index</a></li>
<li><a href="../../../../../../help-doc.html">Help</a></li>
</ul>
</div>
<div class="subNav">
<ul class="navList">
<li><a href="../../../../../../org/apache/hadoop/hbase/master/balancer/ClusterStatusChore.html" title="class in org.apache.hadoop.hbase.master.balancer"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
<li><a href="../../../../../../org/apache/hadoop/hbase/master/balancer/FavoredStochasticBalancer.FavoredNodeLoadPicker.html" title="class in org.apache.hadoop.hbase.master.balancer"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../../../../index.html?org/apache/hadoop/hbase/master/balancer/FavoredStochasticBalancer.html" target="_top">Frames</a></li>
<li><a href="FavoredStochasticBalancer.html" target="_top">No&nbsp;Frames</a></li>
</ul>
<ul class="navList" id="allclasses_navbar_top">
<li><a href="../../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
</ul>
<div>
<script type="text/javascript"><!--
allClassesLink = document.getElementById("allclasses_navbar_top");
if(window==top) {
allClassesLink.style.display = "block";
}
else {
allClassesLink.style.display = "none";
}
//-->
</script>
</div>
<div>
<ul class="subNavList">
<li>Summary:&nbsp;</li>
<li><a href="#nested.class.summary">Nested</a>&nbsp;|&nbsp;</li>
<li><a href="#field.summary">Field</a>&nbsp;|&nbsp;</li>
<li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li><a href="#field.detail">Field</a>&nbsp;|&nbsp;</li>
<li><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.detail">Method</a></li>
</ul>
</div>
<a name="skip.navbar.top">
<!-- -->
</a></div>
<!-- ========= END OF TOP NAVBAR ========= -->
<!-- ======== START OF CLASS DATA ======== -->
<div class="header">
<div class="subTitle">org.apache.hadoop.hbase.master.balancer</div>
<h2 title="Class FavoredStochasticBalancer" class="title">Class FavoredStochasticBalancer</h2>
</div>
<div class="contentContainer">
<ul class="inheritance">
<li><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">java.lang.Object</a></li>
<li>
<ul class="inheritance">
<li><a href="../../../../../../org/apache/hadoop/hbase/master/balancer/BaseLoadBalancer.html" title="class in org.apache.hadoop.hbase.master.balancer">org.apache.hadoop.hbase.master.balancer.BaseLoadBalancer</a></li>
<li>
<ul class="inheritance">
<li><a href="../../../../../../org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.html" title="class in org.apache.hadoop.hbase.master.balancer">org.apache.hadoop.hbase.master.balancer.StochasticLoadBalancer</a></li>
<li>
<ul class="inheritance">
<li>org.apache.hadoop.hbase.master.balancer.FavoredStochasticBalancer</li>
</ul>
</li>
</ul>
</li>
</ul>
</li>
</ul>
<div class="description">
<ul class="blockList">
<li class="blockList">
<dl>
<dt>All Implemented Interfaces:</dt>
<dd>org.apache.hadoop.conf.Configurable, <a href="../../../../../../org/apache/hadoop/hbase/conf/ConfigurationObserver.html" title="interface in org.apache.hadoop.hbase.conf">ConfigurationObserver</a>, <a href="../../../../../../org/apache/hadoop/hbase/favored/FavoredNodesPromoter.html" title="interface in org.apache.hadoop.hbase.favored">FavoredNodesPromoter</a>, <a href="../../../../../../org/apache/hadoop/hbase/master/LoadBalancer.html" title="interface in org.apache.hadoop.hbase.master">LoadBalancer</a>, <a href="../../../../../../org/apache/hadoop/hbase/Stoppable.html" title="interface in org.apache.hadoop.hbase">Stoppable</a></dd>
</dl>
<hr>
<br>
<pre>@InterfaceAudience.Private
public class <a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/FavoredStochasticBalancer.html#line.74">FavoredStochasticBalancer</a>
extends <a href="../../../../../../org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.html" title="class in org.apache.hadoop.hbase.master.balancer">StochasticLoadBalancer</a>
implements <a href="../../../../../../org/apache/hadoop/hbase/favored/FavoredNodesPromoter.html" title="interface in org.apache.hadoop.hbase.favored">FavoredNodesPromoter</a></pre>
<div class="block">An implementation of the <a href="../../../../../../org/apache/hadoop/hbase/master/LoadBalancer.html" title="interface in org.apache.hadoop.hbase.master"><code>LoadBalancer</code></a> that
assigns favored nodes for each region. There is a Primary RegionServer that hosts
the region, and then there is Secondary and Tertiary RegionServers. Currently, the
favored nodes information is used in creating HDFS files - the Primary RegionServer
passes the primary, secondary, tertiary node addresses as hints to the
DistributedFileSystem API for creating files on the filesystem. These nodes are
treated as hints by the HDFS to place the blocks of the file. This alleviates the
problem to do with reading from remote nodes (since we can make the Secondary
RegionServer as the new Primary RegionServer) after a region is recovered. This
should help provide consistent read latencies for the regions even when their
primary region servers die. This provides two
<a href="../../../../../../org/apache/hadoop/hbase/master/balancer/CandidateGenerator.html" title="class in org.apache.hadoop.hbase.master.balancer"><code>CandidateGenerator</code></a></div>
</li>
</ul>
</div>
<div class="summary">
<ul class="blockList">
<li class="blockList">
<!-- ======== NESTED CLASS SUMMARY ======== -->
<ul class="blockList">
<li class="blockList"><a name="nested.class.summary">
<!-- -->
</a>
<h3>Nested Class Summary</h3>
<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Nested Class Summary table, listing nested classes, and an explanation">
<caption><span>Nested Classes</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colLast" scope="col">Class and Description</th>
</tr>
<tr class="altColor">
<td class="colFirst"><code>(package private) class&nbsp;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/balancer/FavoredStochasticBalancer.FavoredNodeLoadPicker.html" title="class in org.apache.hadoop.hbase.master.balancer">FavoredStochasticBalancer.FavoredNodeLoadPicker</a></span></code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>private class&nbsp;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/balancer/FavoredStochasticBalancer.FavoredNodeLocalityPicker.html" title="class in org.apache.hadoop.hbase.master.balancer">FavoredStochasticBalancer.FavoredNodeLocalityPicker</a></span></code>&nbsp;</td>
</tr>
</table>
<ul class="blockList">
<li class="blockList"><a name="nested.classes.inherited.from.class.org.apache.hadoop.hbase.master.balancer.StochasticLoadBalancer">
<!-- -->
</a>
<h3>Nested classes/interfaces inherited from class&nbsp;org.apache.hadoop.hbase.master.balancer.<a href="../../../../../../org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.html" title="class in org.apache.hadoop.hbase.master.balancer">StochasticLoadBalancer</a></h3>
<code><a href="../../../../../../org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.CostFromRegionLoadAsRateFunction.html" title="class in org.apache.hadoop.hbase.master.balancer">StochasticLoadBalancer.CostFromRegionLoadAsRateFunction</a>, <a href="../../../../../../org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.CostFromRegionLoadFunction.html" title="class in org.apache.hadoop.hbase.master.balancer">StochasticLoadBalancer.CostFromRegionLoadFunction</a>, <a href="../../../../../../org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.CostFunction.html" title="class in org.apache.hadoop.hbase.master.balancer">StochasticLoadBalancer.CostFunction</a>, <a href="../../../../../../org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.CPRequestCostFunction.html" title="class in org.apache.hadoop.hbase.master.balancer">StochasticLoadBalancer.CPRequestCostFunction</a>, <a href="../../../../../../org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.LocalityBasedCostFunction.html" title="class in org.apache.hadoop.hbase.master.balancer">StochasticLoadBalancer.LocalityBasedCostFunction</a>, <a href="../../../../../../org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.MemStoreSizeCostFunction.html" title="class in org.apache.hadoop.hbase.master.balancer">StochasticLoadBalancer.MemStoreSizeCostFunction</a>, <a href="../../../../../../org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.MoveCostFunction.html" title="class in org.apache.hadoop.hbase.master.balancer">StochasticLoadBalancer.MoveCostFunction</a>, <a href="../../../../../../org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.PrimaryRegionCountSkewCostFunction.html" title="class in org.apache.hadoop.hbase.master.balancer">StochasticLoadBalancer.PrimaryRegionCountSkewCostFunction</a>, <a href="../../../../../../org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.RackLocalityCostFunction.html" title="class in org.apache.hadoop.hbase.master.balancer">StochasticLoadBalancer.RackLocalityCostFunction</a>, <a href="../../../../../../org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.RandomCandidateGenerator.html" title="class in org.apache.hadoop.hbase.master.balancer">StochasticLoadBalancer.RandomCandidateGenerator</a>, <a href="../../../../../../org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.ReadRequestCostFunction.html" title="class in org.apache.hadoop.hbase.master.balancer">StochasticLoadBalancer.ReadRequestCostFunction</a>, <a href="../../../../../../org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.RegionCountSkewCostFunction.html" title="class in org.apache.hadoop.hbase.master.balancer">StochasticLoadBalancer.RegionCountSkewCostFunction</a>, <a href="../../../../../../org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.RegionReplicaHostCostFunction.html" title="class in org.apache.hadoop.hbase.master.balancer">StochasticLoadBalancer.RegionReplicaHostCostFunction</a>, <a href="../../../../../../org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.RegionReplicaRackCandidateGenerator.html" title="class in org.apache.hadoop.hbase.master.balancer">StochasticLoadBalancer.RegionReplicaRackCandidateGenerator</a>, <a href="../../../../../../org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.RegionReplicaRackCostFunction.html" title="class in org.apache.hadoop.hbase.master.balancer">StochasticLoadBalancer.RegionReplicaRackCostFunction</a>, <a href="../../../../../../org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.ServerLocalityCostFunction.html" title="class in org.apache.hadoop.hbase.master.balancer">StochasticLoadBalancer.ServerLocalityCostFunction</a>, <a href="../../../../../../org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.StoreFileCostFunction.html" title="class in org.apache.hadoop.hbase.master.balancer">StochasticLoadBalancer.StoreFileCostFunction</a>, <a href="../../../../../../org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.TableSkewCostFunction.html" title="class in org.apache.hadoop.hbase.master.balancer">StochasticLoadBalancer.TableSkewCostFunction</a>, <a href="../../../../../../org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.WriteRequestCostFunction.html" title="class in org.apache.hadoop.hbase.master.balancer">StochasticLoadBalancer.WriteRequestCostFunction</a></code></li>
</ul>
<ul class="blockList">
<li class="blockList"><a name="nested.classes.inherited.from.class.org.apache.hadoop.hbase.master.balancer.BaseLoadBalancer">
<!-- -->
</a>
<h3>Nested classes/interfaces inherited from class&nbsp;org.apache.hadoop.hbase.master.balancer.<a href="../../../../../../org/apache/hadoop/hbase/master/balancer/BaseLoadBalancer.html" title="class in org.apache.hadoop.hbase.master.balancer">BaseLoadBalancer</a></h3>
<code><a href="../../../../../../org/apache/hadoop/hbase/master/balancer/BaseLoadBalancer.Cluster.html" title="class in org.apache.hadoop.hbase.master.balancer">BaseLoadBalancer.Cluster</a></code></li>
</ul>
</li>
</ul>
<!-- =========== FIELD SUMMARY =========== -->
<ul class="blockList">
<li class="blockList"><a name="field.summary">
<!-- -->
</a>
<h3>Field Summary</h3>
<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Field Summary table, listing fields, and an explanation">
<caption><span>Fields</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colLast" scope="col">Field and Description</th>
</tr>
<tr class="altColor">
<td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/favored/FavoredNodesManager.html" title="class in org.apache.hadoop.hbase.favored">FavoredNodesManager</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/balancer/FavoredStochasticBalancer.html#fnm">fnm</a></span></code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>private static org.slf4j.Logger</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/balancer/FavoredStochasticBalancer.html#LOG">LOG</a></span></code>&nbsp;</td>
</tr>
</table>
<ul class="blockList">
<li class="blockList"><a name="fields.inherited.from.class.org.apache.hadoop.hbase.master.balancer.StochasticLoadBalancer">
<!-- -->
</a>
<h3>Fields inherited from class&nbsp;org.apache.hadoop.hbase.master.balancer.<a href="../../../../../../org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.html" title="class in org.apache.hadoop.hbase.master.balancer">StochasticLoadBalancer</a></h3>
<code><a href="../../../../../../org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.html#COST_FUNCTIONS_COST_FUNCTIONS_KEY">COST_FUNCTIONS_COST_FUNCTIONS_KEY</a>, <a href="../../../../../../org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.html#KEEP_REGION_LOADS">KEEP_REGION_LOADS</a>, <a href="../../../../../../org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.html#loads">loads</a>, <a href="../../../../../../org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.html#MAX_RUNNING_TIME_KEY">MAX_RUNNING_TIME_KEY</a>, <a href="../../../../../../org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.html#MAX_STEPS_KEY">MAX_STEPS_KEY</a>, <a href="../../../../../../org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.html#MIN_COST_NEED_BALANCE_KEY">MIN_COST_NEED_BALANCE_KEY</a>, <a href="../../../../../../org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.html#namedQueueRecorder">namedQueueRecorder</a>, <a href="../../../../../../org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.html#RANDOM">RANDOM</a>, <a href="../../../../../../org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.html#RUN_MAX_STEPS_KEY">RUN_MAX_STEPS_KEY</a>, <a href="../../../../../../org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.html#STEPS_PER_REGION_KEY">STEPS_PER_REGION_KEY</a></code></li>
</ul>
<ul class="blockList">
<li class="blockList"><a name="fields.inherited.from.class.org.apache.hadoop.hbase.master.balancer.BaseLoadBalancer">
<!-- -->
</a>
<h3>Fields inherited from class&nbsp;org.apache.hadoop.hbase.master.balancer.<a href="../../../../../../org/apache/hadoop/hbase/master/balancer/BaseLoadBalancer.html" title="class in org.apache.hadoop.hbase.master.balancer">BaseLoadBalancer</a></h3>
<code><a href="../../../../../../org/apache/hadoop/hbase/master/balancer/BaseLoadBalancer.html#BALANCER_DECISION_BUFFER_ENABLED">BALANCER_DECISION_BUFFER_ENABLED</a>, <a href="../../../../../../org/apache/hadoop/hbase/master/balancer/BaseLoadBalancer.html#clusterStatus">clusterStatus</a>, <a href="../../../../../../org/apache/hadoop/hbase/master/balancer/BaseLoadBalancer.html#config">config</a>, <a href="../../../../../../org/apache/hadoop/hbase/master/balancer/BaseLoadBalancer.html#DEFAULT_BALANCER_DECISION_BUFFER_ENABLED">DEFAULT_BALANCER_DECISION_BUFFER_ENABLED</a>, <a href="../../../../../../org/apache/hadoop/hbase/master/balancer/BaseLoadBalancer.html#IDLE_SERVER_PREDICATOR">IDLE_SERVER_PREDICATOR</a>, <a href="../../../../../../org/apache/hadoop/hbase/master/balancer/BaseLoadBalancer.html#isByTable">isByTable</a>, <a href="../../../../../../org/apache/hadoop/hbase/master/balancer/BaseLoadBalancer.html#maintenanceMode">maintenanceMode</a>, <a href="../../../../../../org/apache/hadoop/hbase/master/balancer/BaseLoadBalancer.html#masterServerName">masterServerName</a>, <a href="../../../../../../org/apache/hadoop/hbase/master/balancer/BaseLoadBalancer.html#metricsBalancer">metricsBalancer</a>, <a href="../../../../../../org/apache/hadoop/hbase/master/balancer/BaseLoadBalancer.html#MIN_SERVER_BALANCE">MIN_SERVER_BALANCE</a>, <a href="../../../../../../org/apache/hadoop/hbase/master/balancer/BaseLoadBalancer.html#onlySystemTablesOnMaster">onlySystemTablesOnMaster</a>, <a href="../../../../../../org/apache/hadoop/hbase/master/balancer/BaseLoadBalancer.html#overallSlop">overallSlop</a>, <a href="../../../../../../org/apache/hadoop/hbase/master/balancer/BaseLoadBalancer.html#rackManager">rackManager</a>, <a href="../../../../../../org/apache/hadoop/hbase/master/balancer/BaseLoadBalancer.html#regionFinder">regionFinder</a>, <a href="../../../../../../org/apache/hadoop/hbase/master/balancer/BaseLoadBalancer.html#services">services</a>, <a href="../../../../../../org/apache/hadoop/hbase/master/balancer/BaseLoadBalancer.html#slop">slop</a>, <a href="../../../../../../org/apache/hadoop/hbase/master/balancer/BaseLoadBalancer.html#useRegionFinder">useRegionFinder</a></code></li>
</ul>
<ul class="blockList">
<li class="blockList"><a name="fields.inherited.from.class.org.apache.hadoop.hbase.favored.FavoredNodesPromoter">
<!-- -->
</a>
<h3>Fields inherited from interface&nbsp;org.apache.hadoop.hbase.favored.<a href="../../../../../../org/apache/hadoop/hbase/favored/FavoredNodesPromoter.html" title="interface in org.apache.hadoop.hbase.favored">FavoredNodesPromoter</a></h3>
<code><a href="../../../../../../org/apache/hadoop/hbase/favored/FavoredNodesPromoter.html#FAVORED_ALWAYS_ASSIGN_REGIONS">FAVORED_ALWAYS_ASSIGN_REGIONS</a></code></li>
</ul>
<ul class="blockList">
<li class="blockList"><a name="fields.inherited.from.class.org.apache.hadoop.hbase.master.LoadBalancer">
<!-- -->
</a>
<h3>Fields inherited from interface&nbsp;org.apache.hadoop.hbase.master.<a href="../../../../../../org/apache/hadoop/hbase/master/LoadBalancer.html" title="interface in org.apache.hadoop.hbase.master">LoadBalancer</a></h3>
<code><a href="../../../../../../org/apache/hadoop/hbase/master/LoadBalancer.html#BOGUS_SERVER_NAME">BOGUS_SERVER_NAME</a>, <a href="../../../../../../org/apache/hadoop/hbase/master/LoadBalancer.html#HBASE_RSGROUP_LOADBALANCER_CLASS">HBASE_RSGROUP_LOADBALANCER_CLASS</a>, <a href="../../../../../../org/apache/hadoop/hbase/master/LoadBalancer.html#SYSTEM_TABLES_ON_MASTER">SYSTEM_TABLES_ON_MASTER</a>, <a href="../../../../../../org/apache/hadoop/hbase/master/LoadBalancer.html#TABLES_ON_MASTER">TABLES_ON_MASTER</a></code></li>
</ul>
</li>
</ul>
<!-- ======== CONSTRUCTOR SUMMARY ======== -->
<ul class="blockList">
<li class="blockList"><a name="constructor.summary">
<!-- -->
</a>
<h3>Constructor Summary</h3>
<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Constructor Summary table, listing constructors, and an explanation">
<caption><span>Constructors</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colOne" scope="col">Constructor and Description</th>
</tr>
<tr class="altColor">
<td class="colOne"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/balancer/FavoredStochasticBalancer.html#FavoredStochasticBalancer--">FavoredStochasticBalancer</a></span>()</code>&nbsp;</td>
</tr>
</table>
</li>
</ul>
<!-- ========== METHOD SUMMARY =========== -->
<ul class="blockList">
<li class="blockList"><a name="method.summary">
<!-- -->
</a>
<h3>Method Summary</h3>
<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Method Summary table, listing methods, and an explanation">
<caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd">&nbsp;</span></span><span id="t2" class="tableTab"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t4" class="tableTab"><span><a href="javascript:show(8);">Concrete Methods</a></span><span class="tabEnd">&nbsp;</span></span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colLast" scope="col">Method and Description</th>
</tr>
<tr id="i0" class="altColor">
<td class="colFirst"><code>private void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/balancer/FavoredStochasticBalancer.html#addRegionToMap-java.util.Map-org.apache.hadoop.hbase.client.RegionInfo-org.apache.hadoop.hbase.ServerName-">addRegionToMap</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>,<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&gt;&gt;&nbsp;assignmentMapForFavoredNodes,
<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&nbsp;region,
<a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;host)</code>&nbsp;</td>
</tr>
<tr id="i1" class="rowColor">
<td class="colFirst"><code>private void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/balancer/FavoredStochasticBalancer.html#assignRegionToAvailableFavoredNode-java.util.Map-org.apache.hadoop.hbase.client.RegionInfo-org.apache.hadoop.hbase.ServerName-org.apache.hadoop.hbase.ServerName-org.apache.hadoop.hbase.ServerName-">assignRegionToAvailableFavoredNode</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>,<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&gt;&gt;&nbsp;assignmentMapForFavoredNodes,
<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&nbsp;region,
<a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;primaryHost,
<a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;secondaryHost,
<a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;tertiaryHost)</code>&nbsp;</td>
</tr>
<tr id="i2" class="altColor">
<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/master/RegionPlan.html" title="class in org.apache.hadoop.hbase.master">RegionPlan</a>&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/balancer/FavoredStochasticBalancer.html#balanceTable-org.apache.hadoop.hbase.TableName-java.util.Map-">balanceTable</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>,<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&gt;&gt;&nbsp;loadOfOneTable)</code>
<div class="block">Given the cluster state this will try and approach an optimal balance.</div>
</td>
</tr>
<tr id="i3" class="rowColor">
<td class="colFirst"><code>protected void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/balancer/FavoredStochasticBalancer.html#configureGenerators--">configureGenerators</a></span>()</code>&nbsp;</td>
</tr>
<tr id="i4" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/balancer/FavoredStochasticBalancer.html#generateFavoredNodesForDaughter-java.util.List-org.apache.hadoop.hbase.client.RegionInfo-org.apache.hadoop.hbase.client.RegionInfo-org.apache.hadoop.hbase.client.RegionInfo-">generateFavoredNodesForDaughter</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&gt;&nbsp;servers,
<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&nbsp;parent,
<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&nbsp;regionA,
<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&nbsp;regionB)</code>&nbsp;</td>
</tr>
<tr id="i5" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/balancer/FavoredStochasticBalancer.html#generateFavoredNodesForMergedRegion-org.apache.hadoop.hbase.client.RegionInfo-org.apache.hadoop.hbase.client.RegionInfo:A-">generateFavoredNodesForMergedRegion</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&nbsp;merged,
<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>[]&nbsp;mergeParents)</code>&nbsp;</td>
</tr>
<tr id="i6" class="altColor">
<td class="colFirst"><code>private <a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>,<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&gt;&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/balancer/FavoredStochasticBalancer.html#generateFNForRegionsWithoutFN-org.apache.hadoop.hbase.favored.FavoredNodeAssignmentHelper-java.util.List-">generateFNForRegionsWithoutFN</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/favored/FavoredNodeAssignmentHelper.html" title="class in org.apache.hadoop.hbase.favored">FavoredNodeAssignmentHelper</a>&nbsp;helper,
<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&gt;&nbsp;regions)</code>&nbsp;</td>
</tr>
<tr id="i7" class="rowColor">
<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/balancer/FavoredStochasticBalancer.html#getFavoredNodes-org.apache.hadoop.hbase.client.RegionInfo-">getFavoredNodes</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&nbsp;regionInfo)</code>&nbsp;</td>
</tr>
<tr id="i8" class="altColor">
<td class="colFirst"><code>private <a href="https://docs.oracle.com/javase/8/docs/api/java/util/Set.html?is-external=true" title="class or interface in java.util">Set</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/balancer/FavoredStochasticBalancer.html#getInheritedFNForDaughter-org.apache.hadoop.hbase.favored.FavoredNodeAssignmentHelper-java.util.List-org.apache.hadoop.hbase.favored.FavoredNodesPlan.Position-org.apache.hadoop.hbase.favored.FavoredNodesPlan.Position-">getInheritedFNForDaughter</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/favored/FavoredNodeAssignmentHelper.html" title="class in org.apache.hadoop.hbase.favored">FavoredNodeAssignmentHelper</a>&nbsp;helper,
<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&gt;&nbsp;parentFavoredNodes,
<a href="../../../../../../org/apache/hadoop/hbase/favored/FavoredNodesPlan.Position.html" title="enum in org.apache.hadoop.hbase.favored">FavoredNodesPlan.Position</a>&nbsp;primary,
<a href="../../../../../../org/apache/hadoop/hbase/favored/FavoredNodesPlan.Position.html" title="enum in org.apache.hadoop.hbase.favored">FavoredNodesPlan.Position</a>&nbsp;secondary)</code>&nbsp;</td>
</tr>
<tr id="i9" class="rowColor">
<td class="colFirst"><code>private <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/balancer/FavoredStochasticBalancer.html#getOnlineFavoredNodes-java.util.List-java.util.List-">getOnlineFavoredNodes</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&gt;&nbsp;onlineServers,
<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&gt;&nbsp;serversWithoutStartCodes)</code>&nbsp;</td>
</tr>
<tr id="i10" class="altColor">
<td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/balancer/FavoredStochasticBalancer.html#getServerFromFavoredNode-java.util.List-org.apache.hadoop.hbase.ServerName-">getServerFromFavoredNode</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&gt;&nbsp;servers,
<a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;fn)</code>&nbsp;</td>
</tr>
<tr id="i11" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/balancer/FavoredStochasticBalancer.html#initialize--">initialize</a></span>()</code>
<div class="block">Initialize the load balancer.</div>
</td>
</tr>
<tr id="i12" class="altColor">
<td class="colFirst"><code>private void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/balancer/FavoredStochasticBalancer.html#mergeAssignmentMaps-java.util.Map-java.util.Map-">mergeAssignmentMaps</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>,<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&gt;&gt;&nbsp;assignmentMap,
<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>,<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&gt;&gt;&nbsp;otherAssignments)</code>&nbsp;</td>
</tr>
<tr id="i13" class="rowColor">
<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/balancer/FavoredStochasticBalancer.html#randomAssignment-org.apache.hadoop.hbase.client.RegionInfo-java.util.List-">randomAssignment</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&nbsp;regionInfo,
<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&gt;&nbsp;servers)</code>
<div class="block">Used to assign a single region to a random server.</div>
</td>
</tr>
<tr id="i14" class="altColor">
<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>,<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&gt;&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/balancer/FavoredStochasticBalancer.html#retainAssignment-java.util.Map-java.util.List-">retainAssignment</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>,<a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&gt;&nbsp;regions,
<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&gt;&nbsp;servers)</code>
<div class="block">Generates a bulk assignment startup plan, attempting to reuse the existing
assignment information from META, but adjusting for the specified list of
available/online servers available for assignment.</div>
</td>
</tr>
<tr id="i15" class="rowColor">
<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>,<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&gt;&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/balancer/FavoredStochasticBalancer.html#roundRobinAssignment-java.util.List-java.util.List-">roundRobinAssignment</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&gt;&nbsp;regions,
<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&gt;&nbsp;servers)</code>
<div class="block">Generates a bulk assignment plan to be used on cluster startup using a
simple round-robin assignment.</div>
</td>
</tr>
<tr id="i16" class="altColor">
<td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/util/Pair.html" title="class in org.apache.hadoop.hbase.util">Pair</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>,<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&gt;&gt;,<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&gt;&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/balancer/FavoredStochasticBalancer.html#segregateRegionsAndAssignRegionsWithFavoredNodes-java.util.Collection-java.util.List-">segregateRegionsAndAssignRegionsWithFavoredNodes</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&gt;&nbsp;regions,
<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&gt;&nbsp;onlineServers)</code>&nbsp;</td>
</tr>
<tr id="i17" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/balancer/FavoredStochasticBalancer.html#setMasterServices-org.apache.hadoop.hbase.master.MasterServices-">setMasterServices</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/master/MasterServices.html" title="interface in org.apache.hadoop.hbase.master">MasterServices</a>&nbsp;masterServices)</code>
<div class="block">Set the master service.</div>
</td>
</tr>
<tr id="i18" class="altColor">
<td class="colFirst"><code>private void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/balancer/FavoredStochasticBalancer.html#updateFavoredNodesForRegion-org.apache.hadoop.hbase.client.RegionInfo-java.util.List-">updateFavoredNodesForRegion</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&nbsp;regionInfo,
<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&gt;&nbsp;newFavoredNodes)</code>&nbsp;</td>
</tr>
</table>
<ul class="blockList">
<li class="blockList"><a name="methods.inherited.from.class.org.apache.hadoop.hbase.master.balancer.StochasticLoadBalancer">
<!-- -->
</a>
<h3>Methods inherited from class&nbsp;org.apache.hadoop.hbase.master.balancer.<a href="../../../../../../org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.html" title="class in org.apache.hadoop.hbase.master.balancer">StochasticLoadBalancer</a></h3>
<code><a href="../../../../../../org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.html#areSomeRegionReplicasColocated-org.apache.hadoop.hbase.master.balancer.BaseLoadBalancer.Cluster-">areSomeRegionReplicasColocated</a>, <a href="../../../../../../org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.html#composeAttributeName-java.lang.String-java.lang.String-">composeAttributeName</a>, <a href="../../../../../../org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.html#computeCost-org.apache.hadoop.hbase.master.balancer.BaseLoadBalancer.Cluster-double-">computeCost</a>, <a href="../../../../../../org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.html#getCandidateGenerators--">getCandidateGenerators</a>, <a href="../../../../../../org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.html#getCostFunctionNames--">getCostFunctionNames</a>, <a href="../../../../../../org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.html#initCosts-org.apache.hadoop.hbase.master.balancer.BaseLoadBalancer.Cluster-">initCosts</a>, <a href="../../../../../../org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.html#needsBalance-org.apache.hadoop.hbase.TableName-org.apache.hadoop.hbase.master.balancer.BaseLoadBalancer.Cluster-">needsBalance</a>, <a href="../../../../../../org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.html#nextAction-org.apache.hadoop.hbase.master.balancer.BaseLoadBalancer.Cluster-">nextAction</a>, <a href="../../../../../../org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.html#onConfigurationChange-org.apache.hadoop.conf.Configuration-">onConfigurationChange</a>, <a href="../../../../../../org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.html#setCandidateGenerators-java.util.List-">setCandidateGenerators</a>, <a href="../../../../../../org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.html#setClusterMetrics-org.apache.hadoop.hbase.ClusterMetrics-">setClusterMetrics</a>, <a href="../../../../../../org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.html#setConf-org.apache.hadoop.conf.Configuration-">setConf</a>, <a href="../../../../../../org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.html#setSlop-org.apache.hadoop.conf.Configuration-">setSlop</a>, <a href="../../../../../../org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.html#updateCostsWithAction-org.apache.hadoop.hbase.master.balancer.BaseLoadBalancer.Cluster-org.apache.hadoop.hbase.master.balancer.BaseLoadBalancer.Cluster.Action-">updateCostsWithAction</a>, <a href="../../../../../../org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.html#updateMetricsSize-int-">updateMetricsSize</a></code></li>
</ul>
<ul class="blockList">
<li class="blockList"><a name="methods.inherited.from.class.org.apache.hadoop.hbase.master.balancer.BaseLoadBalancer">
<!-- -->
</a>
<h3>Methods inherited from class&nbsp;org.apache.hadoop.hbase.master.balancer.<a href="../../../../../../org/apache/hadoop/hbase/master/balancer/BaseLoadBalancer.html" title="class in org.apache.hadoop.hbase.master.balancer">BaseLoadBalancer</a></h3>
<code><a href="../../../../../../org/apache/hadoop/hbase/master/balancer/BaseLoadBalancer.html#assignMasterSystemRegions-java.util.Collection-java.util.List-">assignMasterSystemRegions</a>, <a href="../../../../../../org/apache/hadoop/hbase/master/balancer/BaseLoadBalancer.html#balanceCluster-java.util.Map-">balanceCluster</a>, <a href="../../../../../../org/apache/hadoop/hbase/master/balancer/BaseLoadBalancer.html#balanceMasterRegions-java.util.Map-">balanceMasterRegions</a>, <a href="../../../../../../org/apache/hadoop/hbase/master/balancer/BaseLoadBalancer.html#createCluster-java.util.List-java.util.Collection-">createCluster</a>, <a href="../../../../../../org/apache/hadoop/hbase/master/balancer/BaseLoadBalancer.html#getConf--">getConf</a>, <a href="../../../../../../org/apache/hadoop/hbase/master/balancer/BaseLoadBalancer.html#getRegionAssignmentsByServer-java.util.Collection-">getRegionAssignmentsByServer</a>, <a href="../../../../../../org/apache/hadoop/hbase/master/balancer/BaseLoadBalancer.html#idleRegionServerExist-org.apache.hadoop.hbase.master.balancer.BaseLoadBalancer.Cluster-">idleRegionServerExist</a>, <a href="../../../../../../org/apache/hadoop/hbase/master/balancer/BaseLoadBalancer.html#isStopped--">isStopped</a>, <a href="../../../../../../org/apache/hadoop/hbase/master/balancer/BaseLoadBalancer.html#postMasterStartupInitialize--">postMasterStartupInitialize</a>, <a href="../../../../../../org/apache/hadoop/hbase/master/balancer/BaseLoadBalancer.html#regionOffline-org.apache.hadoop.hbase.client.RegionInfo-">regionOffline</a>, <a href="../../../../../../org/apache/hadoop/hbase/master/balancer/BaseLoadBalancer.html#regionOnline-org.apache.hadoop.hbase.client.RegionInfo-org.apache.hadoop.hbase.ServerName-">regionOnline</a>, <a href="../../../../../../org/apache/hadoop/hbase/master/balancer/BaseLoadBalancer.html#setRackManager-org.apache.hadoop.hbase.master.RackManager-">setRackManager</a>, <a href="../../../../../../org/apache/hadoop/hbase/master/balancer/BaseLoadBalancer.html#shouldBeOnMaster-org.apache.hadoop.hbase.client.RegionInfo-">shouldBeOnMaster</a>, <a href="../../../../../../org/apache/hadoop/hbase/master/balancer/BaseLoadBalancer.html#stop-java.lang.String-">stop</a>, <a href="../../../../../../org/apache/hadoop/hbase/master/balancer/BaseLoadBalancer.html#updateBalancerStatus-boolean-">updateBalancerStatus</a></code></li>
</ul>
<ul class="blockList">
<li class="blockList"><a name="methods.inherited.from.class.java.lang.Object">
<!-- -->
</a>
<h3>Methods inherited from class&nbsp;java.lang.<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></h3>
<code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#clone--" title="class or interface in java.lang">clone</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#equals-java.lang.Object-" title="class or interface in java.lang">equals</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#finalize--" title="class or interface in java.lang">finalize</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#getClass--" title="class or interface in java.lang">getClass</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#hashCode--" title="class or interface in java.lang">hashCode</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#notify--" title="class or interface in java.lang">notify</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#notifyAll--" title="class or interface in java.lang">notifyAll</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#toString--" title="class or interface in java.lang">toString</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#wait--" title="class or interface in java.lang">wait</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#wait-long-" title="class or interface in java.lang">wait</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#wait-long-int-" title="class or interface in java.lang">wait</a></code></li>
</ul>
<ul class="blockList">
<li class="blockList"><a name="methods.inherited.from.class.org.apache.hadoop.hbase.master.LoadBalancer">
<!-- -->
</a>
<h3>Methods inherited from interface&nbsp;org.apache.hadoop.hbase.master.<a href="../../../../../../org/apache/hadoop/hbase/master/LoadBalancer.html" title="interface in org.apache.hadoop.hbase.master">LoadBalancer</a></h3>
<code><a href="../../../../../../org/apache/hadoop/hbase/master/LoadBalancer.html#isMasterCanHostUserRegions-org.apache.hadoop.conf.Configuration-">isMasterCanHostUserRegions</a>, <a href="../../../../../../org/apache/hadoop/hbase/master/LoadBalancer.html#isSystemTablesOnlyOnMaster-org.apache.hadoop.conf.Configuration-">isSystemTablesOnlyOnMaster</a>, <a href="../../../../../../org/apache/hadoop/hbase/master/LoadBalancer.html#isTablesOnMaster-org.apache.hadoop.conf.Configuration-">isTablesOnMaster</a></code></li>
</ul>
</li>
</ul>
</li>
</ul>
</div>
<div class="details">
<ul class="blockList">
<li class="blockList">
<!-- ============ FIELD DETAIL =========== -->
<ul class="blockList">
<li class="blockList"><a name="field.detail">
<!-- -->
</a>
<h3>Field Detail</h3>
<a name="LOG">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>LOG</h4>
<pre>private static final&nbsp;org.slf4j.Logger <a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/FavoredStochasticBalancer.html#line.77">LOG</a></pre>
</li>
</ul>
<a name="fnm">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>fnm</h4>
<pre>private&nbsp;<a href="../../../../../../org/apache/hadoop/hbase/favored/FavoredNodesManager.html" title="class in org.apache.hadoop.hbase.favored">FavoredNodesManager</a> <a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/FavoredStochasticBalancer.html#line.78">fnm</a></pre>
</li>
</ul>
</li>
</ul>
<!-- ========= CONSTRUCTOR DETAIL ======== -->
<ul class="blockList">
<li class="blockList"><a name="constructor.detail">
<!-- -->
</a>
<h3>Constructor Detail</h3>
<a name="FavoredStochasticBalancer--">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>FavoredStochasticBalancer</h4>
<pre>public&nbsp;<a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/FavoredStochasticBalancer.html#line.74">FavoredStochasticBalancer</a>()</pre>
</li>
</ul>
</li>
</ul>
<!-- ============ METHOD DETAIL ========== -->
<ul class="blockList">
<li class="blockList"><a name="method.detail">
<!-- -->
</a>
<h3>Method Detail</h3>
<a name="initialize--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>initialize</h4>
<pre>public&nbsp;void&nbsp;<a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/FavoredStochasticBalancer.html#line.81">initialize</a>()
throws <a href="../../../../../../org/apache/hadoop/hbase/HBaseIOException.html" title="class in org.apache.hadoop.hbase">HBaseIOException</a></pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../../../org/apache/hadoop/hbase/master/LoadBalancer.html#initialize--">LoadBalancer</a></code></span></div>
<div class="block">Initialize the load balancer. Must be called after setters.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../../../org/apache/hadoop/hbase/master/LoadBalancer.html#initialize--">initialize</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../../org/apache/hadoop/hbase/master/LoadBalancer.html" title="interface in org.apache.hadoop.hbase.master">LoadBalancer</a></code></dd>
<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
<dd><code><a href="../../../../../../org/apache/hadoop/hbase/master/balancer/BaseLoadBalancer.html#initialize--">initialize</a></code>&nbsp;in class&nbsp;<code><a href="../../../../../../org/apache/hadoop/hbase/master/balancer/BaseLoadBalancer.html" title="class in org.apache.hadoop.hbase.master.balancer">BaseLoadBalancer</a></code></dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="../../../../../../org/apache/hadoop/hbase/HBaseIOException.html" title="class in org.apache.hadoop.hbase">HBaseIOException</a></code></dd>
</dl>
</li>
</ul>
<a name="configureGenerators--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>configureGenerators</h4>
<pre>protected&nbsp;void&nbsp;<a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/FavoredStochasticBalancer.html#line.86">configureGenerators</a>()</pre>
</li>
</ul>
<a name="setMasterServices-org.apache.hadoop.hbase.master.MasterServices-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setMasterServices</h4>
<pre>public&nbsp;void&nbsp;<a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/FavoredStochasticBalancer.html#line.94">setMasterServices</a>(<a href="../../../../../../org/apache/hadoop/hbase/master/MasterServices.html" title="interface in org.apache.hadoop.hbase.master">MasterServices</a>&nbsp;masterServices)</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../../../org/apache/hadoop/hbase/master/LoadBalancer.html#setMasterServices-org.apache.hadoop.hbase.master.MasterServices-">LoadBalancer</a></code></span></div>
<div class="block">Set the master service.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../../../org/apache/hadoop/hbase/master/LoadBalancer.html#setMasterServices-org.apache.hadoop.hbase.master.MasterServices-">setMasterServices</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../../org/apache/hadoop/hbase/master/LoadBalancer.html" title="interface in org.apache.hadoop.hbase.master">LoadBalancer</a></code></dd>
<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
<dd><code><a href="../../../../../../org/apache/hadoop/hbase/master/balancer/BaseLoadBalancer.html#setMasterServices-org.apache.hadoop.hbase.master.MasterServices-">setMasterServices</a></code>&nbsp;in class&nbsp;<code><a href="../../../../../../org/apache/hadoop/hbase/master/balancer/BaseLoadBalancer.html" title="class in org.apache.hadoop.hbase.master.balancer">BaseLoadBalancer</a></code></dd>
</dl>
</li>
</ul>
<a name="roundRobinAssignment-java.util.List-java.util.List-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>roundRobinAssignment</h4>
<pre>@NonNull
public&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>,<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&gt;&gt;&nbsp;<a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/FavoredStochasticBalancer.html#line.115">roundRobinAssignment</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&gt;&nbsp;regions,
<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&gt;&nbsp;servers)
throws <a href="../../../../../../org/apache/hadoop/hbase/HBaseIOException.html" title="class in org.apache.hadoop.hbase">HBaseIOException</a></pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from class:&nbsp;<code><a href="../../../../../../org/apache/hadoop/hbase/master/balancer/BaseLoadBalancer.html#roundRobinAssignment-java.util.List-java.util.List-">BaseLoadBalancer</a></code></span></div>
<div class="block">Generates a bulk assignment plan to be used on cluster startup using a
simple round-robin assignment.
<p>
Takes a list of all the regions and all the servers in the cluster and
returns a map of each server to the regions that it should be assigned.
<p>
Currently implemented as a round-robin assignment. Same invariant as load
balancing, all servers holding floor(avg) or ceiling(avg).
TODO: Use block locations from HDFS to place regions with their blocks</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../../../org/apache/hadoop/hbase/master/LoadBalancer.html#roundRobinAssignment-java.util.List-java.util.List-">roundRobinAssignment</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../../org/apache/hadoop/hbase/master/LoadBalancer.html" title="interface in org.apache.hadoop.hbase.master">LoadBalancer</a></code></dd>
<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
<dd><code><a href="../../../../../../org/apache/hadoop/hbase/master/balancer/BaseLoadBalancer.html#roundRobinAssignment-java.util.List-java.util.List-">roundRobinAssignment</a></code>&nbsp;in class&nbsp;<code><a href="../../../../../../org/apache/hadoop/hbase/master/balancer/BaseLoadBalancer.html" title="class in org.apache.hadoop.hbase.master.balancer">BaseLoadBalancer</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>regions</code> - all regions</dd>
<dd><code>servers</code> - all servers</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>map of server to the regions it should take, or emptyMap if no
assignment is possible (ie. no servers)</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="../../../../../../org/apache/hadoop/hbase/HBaseIOException.html" title="class in org.apache.hadoop.hbase">HBaseIOException</a></code></dd>
</dl>
</li>
</ul>
<a name="mergeAssignmentMaps-java.util.Map-java.util.Map-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>mergeAssignmentMaps</h4>
<pre>private&nbsp;void&nbsp;<a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/FavoredStochasticBalancer.html#line.169">mergeAssignmentMaps</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>,<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&gt;&gt;&nbsp;assignmentMap,
<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>,<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&gt;&gt;&nbsp;otherAssignments)</pre>
</li>
</ul>
<a name="generateFNForRegionsWithoutFN-org.apache.hadoop.hbase.favored.FavoredNodeAssignmentHelper-java.util.List-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>generateFNForRegionsWithoutFN</h4>
<pre>private&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>,<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&gt;&gt;&nbsp;<a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/FavoredStochasticBalancer.html#line.187">generateFNForRegionsWithoutFN</a>(<a href="../../../../../../org/apache/hadoop/hbase/favored/FavoredNodeAssignmentHelper.html" title="class in org.apache.hadoop.hbase.favored">FavoredNodeAssignmentHelper</a>&nbsp;helper,
<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&gt;&nbsp;regions)
throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
<dl>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></code></dd>
</dl>
</li>
</ul>
<a name="segregateRegionsAndAssignRegionsWithFavoredNodes-java.util.Collection-java.util.List-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>segregateRegionsAndAssignRegionsWithFavoredNodes</h4>
<pre>private&nbsp;<a href="../../../../../../org/apache/hadoop/hbase/util/Pair.html" title="class in org.apache.hadoop.hbase.util">Pair</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>,<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&gt;&gt;,<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&gt;&gt;&nbsp;<a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/FavoredStochasticBalancer.html#line.205">segregateRegionsAndAssignRegionsWithFavoredNodes</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&gt;&nbsp;regions,
<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&gt;&nbsp;onlineServers)
throws <a href="../../../../../../org/apache/hadoop/hbase/HBaseIOException.html" title="class in org.apache.hadoop.hbase">HBaseIOException</a></pre>
<dl>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="../../../../../../org/apache/hadoop/hbase/HBaseIOException.html" title="class in org.apache.hadoop.hbase">HBaseIOException</a></code></dd>
</dl>
</li>
</ul>
<a name="addRegionToMap-java.util.Map-org.apache.hadoop.hbase.client.RegionInfo-org.apache.hadoop.hbase.ServerName-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>addRegionToMap</h4>
<pre>private&nbsp;void&nbsp;<a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/FavoredStochasticBalancer.html#line.243">addRegionToMap</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>,<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&gt;&gt;&nbsp;assignmentMapForFavoredNodes,
<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&nbsp;region,
<a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;host)</pre>
</li>
</ul>
<a name="getServerFromFavoredNode-java.util.List-org.apache.hadoop.hbase.ServerName-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getServerFromFavoredNode</h4>
<pre>private&nbsp;<a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;<a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/FavoredStochasticBalancer.html#line.258">getServerFromFavoredNode</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&gt;&nbsp;servers,
<a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;fn)</pre>
</li>
</ul>
<a name="assignRegionToAvailableFavoredNode-java.util.Map-org.apache.hadoop.hbase.client.RegionInfo-org.apache.hadoop.hbase.ServerName-org.apache.hadoop.hbase.ServerName-org.apache.hadoop.hbase.ServerName-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>assignRegionToAvailableFavoredNode</h4>
<pre>private&nbsp;void&nbsp;<a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/FavoredStochasticBalancer.html#line.272">assignRegionToAvailableFavoredNode</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>,<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&gt;&gt;&nbsp;assignmentMapForFavoredNodes,
<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&nbsp;region,
<a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;primaryHost,
<a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;secondaryHost,
<a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;tertiaryHost)</pre>
</li>
</ul>
<a name="randomAssignment-org.apache.hadoop.hbase.client.RegionInfo-java.util.List-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>randomAssignment</h4>
<pre>public&nbsp;<a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;<a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/FavoredStochasticBalancer.html#line.312">randomAssignment</a>(<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&nbsp;regionInfo,
<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&gt;&nbsp;servers)
throws <a href="../../../../../../org/apache/hadoop/hbase/HBaseIOException.html" title="class in org.apache.hadoop.hbase">HBaseIOException</a></pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from class:&nbsp;<code><a href="../../../../../../org/apache/hadoop/hbase/master/balancer/BaseLoadBalancer.html#randomAssignment-org.apache.hadoop.hbase.client.RegionInfo-java.util.List-">BaseLoadBalancer</a></code></span></div>
<div class="block">Used to assign a single region to a random server.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../../../org/apache/hadoop/hbase/master/LoadBalancer.html#randomAssignment-org.apache.hadoop.hbase.client.RegionInfo-java.util.List-">randomAssignment</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../../org/apache/hadoop/hbase/master/LoadBalancer.html" title="interface in org.apache.hadoop.hbase.master">LoadBalancer</a></code></dd>
<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
<dd><code><a href="../../../../../../org/apache/hadoop/hbase/master/balancer/BaseLoadBalancer.html#randomAssignment-org.apache.hadoop.hbase.client.RegionInfo-java.util.List-">randomAssignment</a></code>&nbsp;in class&nbsp;<code><a href="../../../../../../org/apache/hadoop/hbase/master/balancer/BaseLoadBalancer.html" title="class in org.apache.hadoop.hbase.master.balancer">BaseLoadBalancer</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>regionInfo</code> - Region for which this selection is being done.</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="../../../../../../org/apache/hadoop/hbase/HBaseIOException.html" title="class in org.apache.hadoop.hbase">HBaseIOException</a></code></dd>
</dl>
</li>
</ul>
<a name="updateFavoredNodesForRegion-org.apache.hadoop.hbase.client.RegionInfo-java.util.List-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>updateFavoredNodesForRegion</h4>
<pre>private&nbsp;void&nbsp;<a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/FavoredStochasticBalancer.html#line.362">updateFavoredNodesForRegion</a>(<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&nbsp;regionInfo,
<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&gt;&nbsp;newFavoredNodes)
throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
<dl>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></code></dd>
</dl>
</li>
</ul>
<a name="retainAssignment-java.util.Map-java.util.List-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>retainAssignment</h4>
<pre>@NonNull
public&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>,<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&gt;&gt;&nbsp;<a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/FavoredStochasticBalancer.html#line.374">retainAssignment</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>,<a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&gt;&nbsp;regions,
<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&gt;&nbsp;servers)
throws <a href="../../../../../../org/apache/hadoop/hbase/HBaseIOException.html" title="class in org.apache.hadoop.hbase">HBaseIOException</a></pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from class:&nbsp;<code><a href="../../../../../../org/apache/hadoop/hbase/master/balancer/BaseLoadBalancer.html#retainAssignment-java.util.Map-java.util.List-">BaseLoadBalancer</a></code></span></div>
<div class="block">Generates a bulk assignment startup plan, attempting to reuse the existing
assignment information from META, but adjusting for the specified list of
available/online servers available for assignment.
<p>
Takes a map of all regions to their existing assignment from META. Also
takes a list of online servers for regions to be assigned to. Attempts to
retain all assignment, so in some instances initial assignment will not be
completely balanced.
<p>
Any leftover regions without an existing server to be assigned to will be
assigned randomly to available servers.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../../../org/apache/hadoop/hbase/master/LoadBalancer.html#retainAssignment-java.util.Map-java.util.List-">retainAssignment</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../../org/apache/hadoop/hbase/master/LoadBalancer.html" title="interface in org.apache.hadoop.hbase.master">LoadBalancer</a></code></dd>
<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
<dd><code><a href="../../../../../../org/apache/hadoop/hbase/master/balancer/BaseLoadBalancer.html#retainAssignment-java.util.Map-java.util.List-">retainAssignment</a></code>&nbsp;in class&nbsp;<code><a href="../../../../../../org/apache/hadoop/hbase/master/balancer/BaseLoadBalancer.html" title="class in org.apache.hadoop.hbase.master.balancer">BaseLoadBalancer</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>regions</code> - regions and existing assignment from meta</dd>
<dd><code>servers</code> - available servers</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>map of servers and regions to be assigned to them, or emptyMap if no
assignment is possible (ie. no servers)</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="../../../../../../org/apache/hadoop/hbase/HBaseIOException.html" title="class in org.apache.hadoop.hbase">HBaseIOException</a></code></dd>
</dl>
</li>
</ul>
<a name="getOnlineFavoredNodes-java.util.List-java.util.List-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getOnlineFavoredNodes</h4>
<pre>private&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&gt;&nbsp;<a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/FavoredStochasticBalancer.html#line.464">getOnlineFavoredNodes</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&gt;&nbsp;onlineServers,
<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&gt;&nbsp;serversWithoutStartCodes)</pre>
</li>
</ul>
<a name="getFavoredNodes-org.apache.hadoop.hbase.client.RegionInfo-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getFavoredNodes</h4>
<pre>public&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&gt;&nbsp;<a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/FavoredStochasticBalancer.html#line.482">getFavoredNodes</a>(<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&nbsp;regionInfo)</pre>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../../../org/apache/hadoop/hbase/favored/FavoredNodesPromoter.html#getFavoredNodes-org.apache.hadoop.hbase.client.RegionInfo-">getFavoredNodes</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../../org/apache/hadoop/hbase/favored/FavoredNodesPromoter.html" title="interface in org.apache.hadoop.hbase.favored">FavoredNodesPromoter</a></code></dd>
</dl>
</li>
</ul>
<a name="generateFavoredNodesForDaughter-java.util.List-org.apache.hadoop.hbase.client.RegionInfo-org.apache.hadoop.hbase.client.RegionInfo-org.apache.hadoop.hbase.client.RegionInfo-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>generateFavoredNodesForDaughter</h4>
<pre>public&nbsp;void&nbsp;<a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/FavoredStochasticBalancer.html#line.497">generateFavoredNodesForDaughter</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&gt;&nbsp;servers,
<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&nbsp;parent,
<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&nbsp;regionA,
<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&nbsp;regionB)
throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../../../org/apache/hadoop/hbase/favored/FavoredNodesPromoter.html#generateFavoredNodesForDaughter-java.util.List-org.apache.hadoop.hbase.client.RegionInfo-org.apache.hadoop.hbase.client.RegionInfo-org.apache.hadoop.hbase.client.RegionInfo-">generateFavoredNodesForDaughter</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../../org/apache/hadoop/hbase/favored/FavoredNodesPromoter.html" title="interface in org.apache.hadoop.hbase.favored">FavoredNodesPromoter</a></code></dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></code></dd>
</dl>
</li>
</ul>
<a name="getInheritedFNForDaughter-org.apache.hadoop.hbase.favored.FavoredNodeAssignmentHelper-java.util.List-org.apache.hadoop.hbase.favored.FavoredNodesPlan.Position-org.apache.hadoop.hbase.favored.FavoredNodesPlan.Position-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getInheritedFNForDaughter</h4>
<pre>private&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Set.html?is-external=true" title="class or interface in java.util">Set</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&gt;&nbsp;<a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/FavoredStochasticBalancer.html#line.527">getInheritedFNForDaughter</a>(<a href="../../../../../../org/apache/hadoop/hbase/favored/FavoredNodeAssignmentHelper.html" title="class in org.apache.hadoop.hbase.favored">FavoredNodeAssignmentHelper</a>&nbsp;helper,
<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&gt;&nbsp;parentFavoredNodes,
<a href="../../../../../../org/apache/hadoop/hbase/favored/FavoredNodesPlan.Position.html" title="enum in org.apache.hadoop.hbase.favored">FavoredNodesPlan.Position</a>&nbsp;primary,
<a href="../../../../../../org/apache/hadoop/hbase/favored/FavoredNodesPlan.Position.html" title="enum in org.apache.hadoop.hbase.favored">FavoredNodesPlan.Position</a>&nbsp;secondary)
throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
<dl>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></code></dd>
</dl>
</li>
</ul>
<a name="generateFavoredNodesForMergedRegion-org.apache.hadoop.hbase.client.RegionInfo-org.apache.hadoop.hbase.client.RegionInfo:A-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>generateFavoredNodesForMergedRegion</h4>
<pre>public&nbsp;void&nbsp;<a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/FavoredStochasticBalancer.html#line.552">generateFavoredNodesForMergedRegion</a>(<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&nbsp;merged,
<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>[]&nbsp;mergeParents)
throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../../../org/apache/hadoop/hbase/favored/FavoredNodesPromoter.html#generateFavoredNodesForMergedRegion-org.apache.hadoop.hbase.client.RegionInfo-org.apache.hadoop.hbase.client.RegionInfo:A-">generateFavoredNodesForMergedRegion</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../../org/apache/hadoop/hbase/favored/FavoredNodesPromoter.html" title="interface in org.apache.hadoop.hbase.favored">FavoredNodesPromoter</a></code></dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></code></dd>
</dl>
</li>
</ul>
<a name="balanceTable-org.apache.hadoop.hbase.TableName-java.util.Map-">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>balanceTable</h4>
<pre>public&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/master/RegionPlan.html" title="class in org.apache.hadoop.hbase.master">RegionPlan</a>&gt;&nbsp;<a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/FavoredStochasticBalancer.html#line.703">balanceTable</a>(<a href="../../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>,<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&gt;&gt;&nbsp;loadOfOneTable)</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from class:&nbsp;<code><a href="../../../../../../org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.html#balanceTable-org.apache.hadoop.hbase.TableName-java.util.Map-">StochasticLoadBalancer</a></code></span></div>
<div class="block">Given the cluster state this will try and approach an optimal balance. This
should always approach the optimal state given enough steps.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../../../org/apache/hadoop/hbase/master/LoadBalancer.html#balanceTable-org.apache.hadoop.hbase.TableName-java.util.Map-">balanceTable</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../../org/apache/hadoop/hbase/master/LoadBalancer.html" title="interface in org.apache.hadoop.hbase.master">LoadBalancer</a></code></dd>
<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
<dd><code><a href="../../../../../../org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.html#balanceTable-org.apache.hadoop.hbase.TableName-java.util.Map-">balanceTable</a></code>&nbsp;in class&nbsp;<code><a href="../../../../../../org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.html" title="class in org.apache.hadoop.hbase.master.balancer">StochasticLoadBalancer</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>tableName</code> - the table to be balanced</dd>
<dd><code>loadOfOneTable</code> - region load of servers for the specific one table</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>List of plans</dd>
</dl>
</li>
</ul>
</li>
</ul>
</li>
</ul>
</div>
</div>
<!-- ========= END OF CLASS DATA ========= -->
<!-- ======= START OF BOTTOM NAVBAR ====== -->
<div class="bottomNav"><a name="navbar.bottom">
<!-- -->
</a>
<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
<a name="navbar.bottom.firstrow">
<!-- -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../../../../../overview-summary.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</li>
<li><a href="class-use/FavoredStochasticBalancer.html">Use</a></li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../../../index-all.html">Index</a></li>
<li><a href="../../../../../../help-doc.html">Help</a></li>
</ul>
</div>
<div class="subNav">
<ul class="navList">
<li><a href="../../../../../../org/apache/hadoop/hbase/master/balancer/ClusterStatusChore.html" title="class in org.apache.hadoop.hbase.master.balancer"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
<li><a href="../../../../../../org/apache/hadoop/hbase/master/balancer/FavoredStochasticBalancer.FavoredNodeLoadPicker.html" title="class in org.apache.hadoop.hbase.master.balancer"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../../../../index.html?org/apache/hadoop/hbase/master/balancer/FavoredStochasticBalancer.html" target="_top">Frames</a></li>
<li><a href="FavoredStochasticBalancer.html" target="_top">No&nbsp;Frames</a></li>
</ul>
<ul class="navList" id="allclasses_navbar_bottom">
<li><a href="../../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
</ul>
<div>
<script type="text/javascript"><!--
allClassesLink = document.getElementById("allclasses_navbar_bottom");
if(window==top) {
allClassesLink.style.display = "block";
}
else {
allClassesLink.style.display = "none";
}
//-->
</script>
</div>
<div>
<ul class="subNavList">
<li>Summary:&nbsp;</li>
<li><a href="#nested.class.summary">Nested</a>&nbsp;|&nbsp;</li>
<li><a href="#field.summary">Field</a>&nbsp;|&nbsp;</li>
<li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li><a href="#field.detail">Field</a>&nbsp;|&nbsp;</li>
<li><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.detail">Method</a></li>
</ul>
</div>
<a name="skip.navbar.bottom">
<!-- -->
</a></div>
<!-- ======== END OF BOTTOM NAVBAR ======= -->
<p class="legalCopy"><small>Copyright &#169; 2007&#x2013;2021 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
</body>
</html>