voldemort.client.rebalance
Class RebalanceController
java.lang.Object
voldemort.client.rebalance.RebalanceController
public class RebalanceController
- extends java.lang.Object
Executes a RebalancePlan.
Constructor Summary |
RebalanceController(java.lang.String bootstrapUrl,
int maxParallelRebalancing,
long proxyPauseSec)
|
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
MAX_PARALLEL_REBALANCING
public static final int MAX_PARALLEL_REBALANCING
- See Also:
- Constant Field Values
PROXY_PAUSE_IN_SECONDS
public static final long PROXY_PAUSE_IN_SECONDS
RebalanceController
public RebalanceController(java.lang.String bootstrapUrl,
int maxParallelRebalancing,
long proxyPauseSec)
getPlan
public RebalancePlan getPlan(Cluster finalCluster,
java.util.List<StoreDefinition> finalStoreDefs,
int batchSize)
- Construct a plan for the specified final cluster/stores & batchSize given
the current cluster/stores & configuration of the RebalanceController.
- Parameters:
finalCluster
- finalStoreDefs
- Needed for zone expansion/shrinking.batchSize
-
- Returns:
- RebalancePlan comprised of one or more batches.
getPlan
public RebalancePlan getPlan(Cluster finalCluster,
int batchSize)
- Construct a plan for the specified final cluster & batchSize given the
current cluster/stores & configuration of the RebalanceController.
- Parameters:
finalCluster
- batchSize
-
- Returns:
- RebalancePlan comprised of one or more batches.
rebalance
public void rebalance(RebalancePlan rebalancePlan)
- Validate the plan, validate the cluster, and then kick off rebalance.
- Parameters:
rebalancePlan
-
getAdminClient
public AdminClient getAdminClient()
getCurrentCluster
public Cluster getCurrentCluster()
getCurrentStoreDefs
public java.util.List<StoreDefinition> getCurrentStoreDefs()
stop
public void stop()
Jay Kreps, Roshan Sumbaly, Alex Feinberg, Bhupesh Bansal, Lei Gao, Chinmay Soman, Vinoth Chandar, Zhongjie Wu