码迷,mamicode.com
首页 > 编程语言 > 详细

task分配算法核心原理描述

时间:2017-05-05 23:04:50      阅读:178      评论:0      收藏:0      [点我收藏+]

标签:task

  1. 把stage生成的每个task创建一个taskset对象

  2. 双重for循环,遍历所有taskset,以及每种本地化级别

  3. 本地化级别有:

    1.process_local:进程本地化RDD的partition和task进入同一个executor中,速度最快

    2.node_local:RDD的partition和task不在一个executor上,但是在一个worker上

    3.NO_PERF:没有所谓的本地化级别

    4.RACK_LOCAL:机架本地化,至少RDD的partition和task在一个机架上

    5.任意本地化级别

  4. task优先选择最优的本地化级别

  5. 调用tasksetmanager的resourceOffer方法,去找到在这个executor上,哪些task可以启动,

  6. 放入taskset数组给指定的executor启动task

task分配算法核心原理描述

标签:task

原文地址:http://beyond520.blog.51cto.com/10540356/1922487

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!