@InterfaceAudience.Private public class HDFSBlocksDistribution extends Object
| Modifier and Type | Class and Description | 
|---|---|
| static class  | HDFSBlocksDistribution.HostAndWeightStores the hostname and weight for that hostname. | 
| Modifier and Type | Field and Description | 
|---|---|
| private Map<String,HDFSBlocksDistribution.HostAndWeight> | hostAndWeights | 
| private long | uniqueBlocksTotalWeight | 
| Constructor and Description | 
|---|
| HDFSBlocksDistribution()Constructor | 
| Modifier and Type | Method and Description | 
|---|---|
| void | add(HDFSBlocksDistribution otherBlocksDistribution)This will add the distribution from input to this object | 
| private void | addHostAndBlockWeight(String host,
                     long weight)add some weight to a specific host | 
| void | addHostsAndBlockWeight(String[] hosts,
                      long weight)add some weight to a list of hosts, update the value of unique block weight | 
| private void | addUniqueWeight(long weight)add some weight to the total unique weight | 
| float | getBlockLocalityIndex(String host)return the locality index of a given host | 
| Map<String,HDFSBlocksDistribution.HostAndWeight> | getHostAndWeights() | 
| List<String> | getTopHosts()return the sorted list of hosts in terms of their weights | 
| HDFSBlocksDistribution.HostAndWeight[] | getTopHostsWithWeights()return the sorted list of hosts in terms of their weights | 
| long | getUniqueBlocksTotalWeight() | 
| long | getWeight(String host)return the weight for a specific host, that will be the total bytes of all
 blocks on the host | 
| String | toString() | 
private Map<String,HDFSBlocksDistribution.HostAndWeight> hostAndWeights
private long uniqueBlocksTotalWeight
public HDFSBlocksDistribution()
public String toString()
toString in class ObjectObject.toString()public void addHostsAndBlockWeight(String[] hosts, long weight)
hosts - the list of the hostweight - the weightprivate void addUniqueWeight(long weight)
weight - the weightprivate void addHostAndBlockWeight(String host, long weight)
host - the host nameweight - the weightpublic Map<String,HDFSBlocksDistribution.HostAndWeight> getHostAndWeights()
public long getWeight(String host)
host - the host namepublic long getUniqueBlocksTotalWeight()
public float getBlockLocalityIndex(String host)
host - the host namepublic void add(HDFSBlocksDistribution otherBlocksDistribution)
otherBlocksDistribution - the other hdfs blocks distributionpublic List<String> getTopHosts()
public HDFSBlocksDistribution.HostAndWeight[] getTopHostsWithWeights()
Copyright © 2007–2020 The Apache Software Foundation. All rights reserved.