public class RandomBalancerStrategy extends Object implements BalancerStrategy
BalancerStrategy that
| Constructor and Description |
|---|
RandomBalancerStrategy() |
| Modifier and Type | Method and Description |
|---|---|
ServerHolder |
findDestinationServerToMoveSegment(DataSegment segmentToMove,
ServerHolder sourceServer,
List<ServerHolder> serverHolders)
Finds the best server from the list of
destinationServers to load
the segmentToMove, if it is moved from the sourceServer. |
Iterator<ServerHolder> |
findServersToDropSegment(DataSegment segmentToDrop,
List<ServerHolder> serverHolders)
Finds the best servers to drop the given segment.
|
Iterator<ServerHolder> |
findServersToLoadSegment(DataSegment segmentToLoad,
List<ServerHolder> serverHolders)
Finds the best servers to load the given segment.
|
CoordinatorRunStats |
getAndResetStats()
Returns the stats collected by the strategy in the current run and resets
the stats collector for the next run.
|
public Iterator<ServerHolder> findServersToLoadSegment(DataSegment segmentToLoad, List<ServerHolder> serverHolders)
BalancerStrategyfindServersToLoadSegment in interface BalancerStrategypublic ServerHolder findDestinationServerToMoveSegment(DataSegment segmentToMove, ServerHolder sourceServer, List<ServerHolder> serverHolders)
BalancerStrategydestinationServers to load
the segmentToMove, if it is moved from the sourceServer.
In order to avoid unnecessary moves when the segment is already optimally placed,
include the sourceServer in the list of destinationServers.
findDestinationServerToMoveSegment in interface BalancerStrategypublic Iterator<ServerHolder> findServersToDropSegment(DataSegment segmentToDrop, List<ServerHolder> serverHolders)
BalancerStrategyfindServersToDropSegment in interface BalancerStrategypublic CoordinatorRunStats getAndResetStats()
BalancerStrategygetAndResetStats in interface BalancerStrategyCopyright © 2011–2023 The Apache Software Foundation. All rights reserved.