[
https://issues.apache.org/jira/browse/YARN-18?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13506529#comment-13506529
]
Junping Du commented on YARN-18:
--------------------------------
Hi Arun, Thanks for your review on this patch. This patch works with YARN-19 to
make YARN can aware "node-group" level (the layer between host and rack which
is mostly for cloud/virtualization use case) data locality. In previous work on
Common and HDFS part for "node-group", Nicholas suggest me to divide changes
into "pluggable" and "plug-in" patches which make previous 2 layers (host/rack)
more pluggable and support new layer in plug-in which can be enabled with
specific configuration.
So for this patch, it tries to make locality related interface/class can be
extensible with node-group layer like: ScheduledRequests, RMNodeImpl,
SchedulerNode, etc. Also, it make some methods can be overridden in sub-class
like scheduler's assignContainer() method. In sub class, we can make it
allocate container for nodegroup-local tasks before allocating rack-local
tasks. Also, this patch add more unit tests. Please let me know if anything
here make you confusing. Thanks!
> Make locatlity in YARN's container assignment and task scheduling pluggable
> for other deployment topology
> ---------------------------------------------------------------------------------------------------------
>
> Key: YARN-18
> URL: https://issues.apache.org/jira/browse/YARN-18
> Project: Hadoop YARN
> Issue Type: New Feature
> Affects Versions: 2.0.3-alpha
> Reporter: Junping Du
> Assignee: Junping Du
> Labels: features
> Attachments:
> HADOOP-8474-ContainerAssignmentTaskScheduling-pluggable.patch,
> MAPREDUCE-4309.patch, MAPREDUCE-4309-v2.patch, MAPREDUCE-4309-v3.patch,
> MAPREDUCE-4309-v4.patch, MAPREDUCE-4309-v5.patch, MAPREDUCE-4309-v6.patch,
> MAPREDUCE-4309-v7.patch, YARN-18.patch, YARN-18-v2.patch
>
>
> There are several classes in YARN’s container assignment and task scheduling
> algorithms that relate to data locality which were updated to give preference
> to running a container on other locality besides node-local and rack-local
> (like nodegroup-local). This propose to make these data structure/algorithms
> pluggable, like: SchedulerNode, RMNodeImpl, etc. The inner class
> ScheduledRequests was made a package level class to it would be easier to
> create a subclass, ScheduledRequestsWithNodeGroup.
--
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