[
https://issues.apache.org/jira/browse/HDFS-5157?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13763719#comment-13763719
]
Tsz Wo (Nicholas), SZE commented on HDFS-5157:
----------------------------------------------
> ... However, #1 is more flexible, as each datanode can have its own different
> VolumeChoosingPolicy, ...
I think #2 can also achieve it. If we use #1 and suppose we have two different
VolumeChoosingPolicies, then we setup VCP1 in some DNs and VCP2 in some other
DNs. For #2, we may have a BlockPlacementPolicy that it first chooses DNs and
then chooses storages. The BlockPlacementPolicy needs to be configurable in a
way that it chooses a storage for each DN according to the configuration. So
it can choose some DNs in one way and some other DNs in another way.
Since #2 has a global view of the entire cluster, it seems that #2 is more
powerful. One drawback of #2 is that it may increase the load of NN. Since
the number of storages is in order of tens/hundreds of thousands. I think it
should be okay.
> Datanode should allow choosing the target storage
> -------------------------------------------------
>
> Key: HDFS-5157
> URL: https://issues.apache.org/jira/browse/HDFS-5157
> Project: Hadoop HDFS
> Issue Type: Sub-task
> Components: datanode
> Affects Versions: Heterogeneous Storage (HDFS-2832)
> Reporter: Arpit Agarwal
> Assignee: Junping Du
> Attachments: HDFS-5157-v1.patch, HDFS-5157-v2.patch
>
>
> Datanode should allow should choosing a target Storage or target Storage Type
> as a parameter when creating a new block. Currently there are two ways in
> which the target volume is chosen (via {{VolumeChoosingPolicy#chooseVolume}}.
> # AvailableSpaceVolumeChoosingPolicy
> # RoundRobinVolumeChoosingPolicy
> BlockReceiver and receiveBlock should also accept a new parameter for target
> storage or storage type.
--
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