public class AvailableSpaceBlockPlacementPolicy
extends org.apache.hadoop.hdfs.server.blockmanagement.BlockPlacementPolicyDefault
Constructor and Description |
---|
AvailableSpaceBlockPlacementPolicy() |
Modifier and Type | Method and Description |
---|---|
protected org.apache.hadoop.hdfs.server.blockmanagement.DatanodeDescriptor |
chooseDataNode(String scope,
Collection<org.apache.hadoop.net.Node> excludedNode)
Choose a datanode from the given scope.
|
protected org.apache.hadoop.hdfs.server.blockmanagement.DatanodeDescriptor |
chooseDataNode(String scope,
Collection<org.apache.hadoop.net.Node> excludedNode,
org.apache.hadoop.fs.StorageType type)
Choose a datanode from the given scope with specified
storage type.
|
protected DatanodeStorageInfo |
chooseLocalStorage(org.apache.hadoop.net.Node localMachine,
Set<org.apache.hadoop.net.Node> excludedNodes,
long blocksize,
int maxNodesPerRack,
List<DatanodeStorageInfo> results,
boolean avoidStaleNodes,
EnumMap<org.apache.hadoop.fs.StorageType,Integer> storageTypes,
boolean fallbackToLocalRack)
Choose localMachine as the target.
|
protected int |
compareDataNode(org.apache.hadoop.hdfs.server.blockmanagement.DatanodeDescriptor a,
org.apache.hadoop.hdfs.server.blockmanagement.DatanodeDescriptor b,
boolean isBalanceLocal)
Compare the two data nodes.
|
void |
initialize(org.apache.hadoop.conf.Configuration conf,
org.apache.hadoop.hdfs.server.blockmanagement.FSClusterStats stats,
org.apache.hadoop.net.NetworkTopology clusterMap,
org.apache.hadoop.hdfs.server.blockmanagement.Host2NodesMap host2datanodeMap)
Used to setup a BlockPlacementPolicy object.
|
addToExcludedNodes, chooseFavouredNodes, chooseLocalOrFavoredStorage, chooseLocalRack, chooseLocalStorage, chooseRandom, chooseRandom, chooseRemoteRack, chooseReplicasToDelete, chooseReplicaToDelete, chooseTarget, chooseTarget, chooseTargetInOrder, getExcludeSlowNodesEnabled, getMaxNodesPerRack, getMinBlocksForWrite, isMovable, pickupReplicaSet, setExcludeSlowNodesEnabled, setMinBlocksForWrite, verifyBlockPlacement
public void initialize(org.apache.hadoop.conf.Configuration conf, org.apache.hadoop.hdfs.server.blockmanagement.FSClusterStats stats, org.apache.hadoop.net.NetworkTopology clusterMap, org.apache.hadoop.hdfs.server.blockmanagement.Host2NodesMap host2datanodeMap)
org.apache.hadoop.hdfs.server.blockmanagement.BlockPlacementPolicy
initialize
in class org.apache.hadoop.hdfs.server.blockmanagement.BlockPlacementPolicyDefault
conf
- the configuration objectstats
- retrieve cluster status from hereclusterMap
- cluster topologyprotected org.apache.hadoop.hdfs.server.blockmanagement.DatanodeDescriptor chooseDataNode(String scope, Collection<org.apache.hadoop.net.Node> excludedNode, org.apache.hadoop.fs.StorageType type)
org.apache.hadoop.hdfs.server.blockmanagement.BlockPlacementPolicyDefault
chooseDataNode
in class org.apache.hadoop.hdfs.server.blockmanagement.BlockPlacementPolicyDefault
protected DatanodeStorageInfo chooseLocalStorage(org.apache.hadoop.net.Node localMachine, Set<org.apache.hadoop.net.Node> excludedNodes, long blocksize, int maxNodesPerRack, List<DatanodeStorageInfo> results, boolean avoidStaleNodes, EnumMap<org.apache.hadoop.fs.StorageType,Integer> storageTypes, boolean fallbackToLocalRack) throws org.apache.hadoop.hdfs.server.blockmanagement.BlockPlacementPolicy.NotEnoughReplicasException
org.apache.hadoop.hdfs.server.blockmanagement.BlockPlacementPolicyDefault
chooseLocalStorage
in class org.apache.hadoop.hdfs.server.blockmanagement.BlockPlacementPolicyDefault
org.apache.hadoop.hdfs.server.blockmanagement.BlockPlacementPolicy.NotEnoughReplicasException
protected org.apache.hadoop.hdfs.server.blockmanagement.DatanodeDescriptor chooseDataNode(String scope, Collection<org.apache.hadoop.net.Node> excludedNode)
org.apache.hadoop.hdfs.server.blockmanagement.BlockPlacementPolicyDefault
chooseDataNode
in class org.apache.hadoop.hdfs.server.blockmanagement.BlockPlacementPolicyDefault
protected int compareDataNode(org.apache.hadoop.hdfs.server.blockmanagement.DatanodeDescriptor a, org.apache.hadoop.hdfs.server.blockmanagement.DatanodeDescriptor b, boolean isBalanceLocal)
Copyright © 2008–2024 Apache Software Foundation. All rights reserved.