关注 spark技术分享,
撸spark源码 玩spark最佳实践

Schedulable

Schedulable

Note
Schedulable is a private[spark] Scala trait. You can find the sources in org.apache.spark.scheduler.Schedulable.

There are currently two types of Schedulable entities in Spark:

Schedulable Contract

Every Schedulable follows the following contract:

  • It has a name.

  • It has a parent Pool (of other Schedulables).

    With the parent property you could build a tree of Schedulables

  • It has a schedulingMode, weight, minShare, runningTasks, priority, stageId.

  • It manages a collection of Schedulables and can add or remove one.

    Note
    schedulableQueue is java.util.concurrent.ConcurrentLinkedQueue.
  • It can query for a Schedulable by name.

  • It can return a sorted collection of TaskSetManagers.

  • It can be informed about lost executors.

    It is called by TaskSchedulerImpl to inform TaskSetManagers about executors being lost.

  • It checks for speculatable tasks.

    Caution
    FIXME What are speculatable tasks?

getSortedTaskSetQueue

schedulableQueue

schedulableQueue is used in SparkContext.getAllPools.

赞(0) 打赏
未经允许不得转载:spark技术分享 » Schedulable
分享到: 更多 (0)

关注公众号:spark技术分享

联系我们联系我们

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

微信扫一扫打赏