[ 
https://issues.apache.org/jira/browse/HDFS-2576?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13642189#comment-13642189
 ] 

Tsz Wo (Nicholas), SZE commented on HDFS-2576:
----------------------------------------------

- In BlockPlacementPolicyDefault, it should use the oldExcludedNodes when 
choosing the remaining nodes.  Also, what should happen if a node is in both 
favoredNodes and excludedNodes?

- In BlockPlacementPolicy and BlockPlacementPolicyDefault, use 
Collections.<DatanodeDescriptor>emptyList() instead of new 
ArrayList<DatanodeDescriptor>().

- Change void resolveNetworkLocation(DatanodeDescriptor) to String 
resolveNetworkLocation(DatanodeID).  Then, we only need to create DatanodeID 
but not DatanodeDescriptor in the new resolveNetworkLocation(String) method.

- Move getDatanodeDescriptor(String address) from BlockManager to 
DatanodeManager.
                
> Namenode should have a favored nodes hint to enable clients to have control 
> over block placement.
> -------------------------------------------------------------------------------------------------
>
>                 Key: HDFS-2576
>                 URL: https://issues.apache.org/jira/browse/HDFS-2576
>             Project: Hadoop HDFS
>          Issue Type: New Feature
>            Reporter: Pritam Damania
>            Assignee: Devaraj Das
>             Fix For: 2.0.5-beta
>
>         Attachments: hdfs-2576-1.txt, hdfs-2576-trunk-1.patch, 
> hdfs-2576-trunk-2.patch, hdfs-2576-trunk-7.1.patch, hdfs-2576-trunk-7.patch, 
> hdfs-2576-trunk-8.1.patch, hdfs-2576-trunk-8.patch
>
>
> Sometimes Clients like HBase are required to dynamically compute the 
> datanodes it wishes to place the blocks for a file for higher level of 
> locality. For this purpose there is a need of a way to give the Namenode a 
> hint in terms of a favoredNodes parameter about the locations where the 
> client wants to put each block. The proposed solution is a favored nodes 
> parameter in the addBlock() method and in the create() file method to enable 
> the clients to give the hints to the NameNode about the locations of each 
> replica of the block. Note that this would be just a hint and finally the 
> NameNode would look at disk usage, datanode load etc. and decide whether it 
> can respect the hints or not.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

Reply via email to