All Methods Static Methods Instance Methods Concrete Methods
Modifier and Type |
Method and Description |
boolean |
canPlaceFavoredNodes() |
private Map<RegionInfo,List<ServerName>> |
generateFavoredNodes(Map<RegionInfo,ServerName> primaryRSMap) |
List<ServerName> |
generateFavoredNodes(RegionInfo hri) |
Map<RegionInfo,List<ServerName>> |
generateFavoredNodesRoundRobin(Map<ServerName,List<RegionInfo>> assignmentMap,
List<RegionInfo> regions) |
ServerName |
generateMissingFavoredNode(List<ServerName> favoredNodes) |
ServerName |
generateMissingFavoredNode(List<ServerName> favoredNodes,
List<ServerName> excludeNodes) |
private ServerName |
generateMissingFavoredNodeMultiRack(List<ServerName> favoredNodes) |
private ServerName |
generateMissingFavoredNodeMultiRack(List<ServerName> favoredNodes,
List<ServerName> excludeNodes) |
private ServerName |
generateMissingFavoredNodeSingleRack(List<ServerName> favoredNodes,
List<ServerName> excludeNodes) |
static byte[] |
getFavoredNodes(List<ServerName> serverAddrList) |
static String |
getFavoredNodesAsString(List<ServerName> nodes) |
static ServerName[] |
getFavoredNodesList(byte[] favoredNodes) |
protected String |
getOneRandomRack(Set<String> skipRackSet) |
private ServerName |
getOneRandomServer(String rack) |
protected ServerName |
getOneRandomServer(String rack,
Set<ServerName> skipServerSet)
Gets a random server from the specified rack and skips anything specified.
|
private String |
getRackOfServer(ServerName sn) |
ServerName[] |
getSecondaryAndTertiary(RegionInfo regionInfo,
ServerName primaryRS) |
private List<ServerName> |
getServersFromRack(String rack) |
private int |
getTotalNumberOfRacks() |
void |
initialize() |
private static Put |
makePutFromRegionInfo(RegionInfo regionInfo,
List<ServerName> favoredNodeList)
Generates and returns a Put containing the region info for the catalog table and the servers
|
private Map<ServerName,Set<RegionInfo>> |
mapRSToPrimaries(Map<RegionInfo,ServerName> primaryRSMap) |
private ServerName[] |
multiRackCase(RegionInfo regionInfo,
ServerName primaryRS,
String primaryRack)
Place secondary and tertiary nodes in a multi rack case.
|
private ServerName[] |
multiRackCaseWithRestrictions(Map<ServerName,Set<RegionInfo>> serverToPrimaries,
Map<RegionInfo,ServerName[]> secondaryAndTertiaryMap,
String primaryRack,
ServerName primaryRS,
RegionInfo regionInfo) |
void |
placePrimaryRSAsRoundRobin(Map<ServerName,List<RegionInfo>> assignmentMap,
Map<RegionInfo,ServerName> primaryRSMap,
List<RegionInfo> regions) |
Map<RegionInfo,ServerName[]> |
placeSecondaryAndTertiaryRS(Map<RegionInfo,ServerName> primaryRSMap) |
Map<RegionInfo,ServerName[]> |
placeSecondaryAndTertiaryWithRestrictions(Map<RegionInfo,ServerName> primaryRSMap)
For regions that share the primary, avoid placing the secondary and tertiary
on a same RS.
|
private ServerName[] |
singleRackCase(RegionInfo regionInfo,
ServerName primaryRS,
String primaryRack) |
static void |
updateMetaWithFavoredNodesInfo(Map<RegionInfo,List<ServerName>> regionToFavoredNodes,
org.apache.hadoop.conf.Configuration conf)
Update meta table with favored nodes info
|
static void |
updateMetaWithFavoredNodesInfo(Map<RegionInfo,List<ServerName>> regionToFavoredNodes,
Connection connection)
Update meta table with favored nodes info
|