Wangda Tan commented on YARN-4287:

Some suggestions
property name (rack-locality-delay)

2) Do you think if is it a good idea to separate old rack-locality-delay 
computation (using getLocalityWaitFactor) and new rack-locality-delay config? 
Now rack-locality-delay = min(old-computed-delay, new-specified-delay), since 
the getLocalityWaitFactor has some flaws, I think we can make this configurable 
so user can choose to use specified or computed.

Pseudo code may look like:
if type is OFF_SWITCH:
  if rack-locality-delay specified:
    delay = rack-locality-delay
    delay = computed-locality-delay
else if type is RACK_LOCAL:
    delay = min(node-locality-delay, computed-or-specified-rack-locality-delay)

bq. When we're getting rackLocal assignments, subsequent rackLocal assignments 
should not be delayed
+1 to the fix, since this is a behavior change, do you think if we need to make 
this configurable? This change could lead to #node-local container allocation 
decreasing in some cases.


> Capacity Scheduler: Rack Locality improvement
> ---------------------------------------------
>                 Key: YARN-4287
>                 URL: https://issues.apache.org/jira/browse/YARN-4287
>             Project: Hadoop YARN
>          Issue Type: Improvement
>          Components: capacityscheduler
>    Affects Versions: 2.7.1
>            Reporter: Nathan Roberts
>            Assignee: Nathan Roberts
>         Attachments: YARN-4287-v2.patch, YARN-4287.patch
> YARN-4189 does an excellent job describing the issues with the current delay 
> scheduling algorithms within the capacity scheduler. The design proposal also 
> seems like a good direction.
> This jira proposes a simple interim solution to the key issue we've been 
> experiencing on a regular basis:
>  - rackLocal assignments trickle out due to nodeLocalityDelay. This can have 
> significant impact on things like CombineFileInputFormat which targets very 
> specific nodes in its split calculations.
> I'm not sure when YARN-4189 will become reality so I thought a simple interim 
> patch might make sense. The basic idea is simple: 
> 1) Separate delays for rackLocal, and OffSwitch (today there is only 1)
> 2) When we're getting rackLocal assignments, subsequent rackLocal assignments 
> should not be delayed
> Patch will be uploaded shortly. No big deal if the consensus is to go 
> straight to YARN-4189. 

This message was sent by Atlassian JIRA

Reply via email to