viirya commented on pull request #32136:
URL: https://github.com/apache/spark/pull/32136#issuecomment-818919213


   > I don't think we can guarantee it. It's a best effort and tasks should be 
able to run on any executor, thought tasks can have preferred executors 
(locality). Otherwise, we need to revisit many design decisions like how to 
avoid infinite wait, how to auto-scale, etc.
   
   SS is special use-case, especially for stateful tasks. You cannot scale the 
cluster like normal batch job.
   
   > Can you elaborate? If it's a problem of delay scheduling let's fix it 
instead.
   
   In #30812, @zsxwing, @HeartSaVioR and me have a long discussion around using 
locality for stateful tasks. You can see my original approach is to use 
locality, but overall it is considered too hacky and now I share the points 
from them. You may catch up the comments there.
   
   Basically I think the problem is, for a stateful job that we want to evenly 
distribute tasks to all executors and let the executor-task mapping relatively 
stable. With locality, we can only assign tasks to executors blindly. For 
example, the scheduler knows more about executor capacity and knows what 
executors should be assigned with tasks. But in SS, we don't have such info 
(and should not have it too).
   
   
   
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
[email protected]



---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to