【Spark】源码分析之SparkContext
一、概述
SaprkContext非常重要,是Spark提交任务到集群的入口
SparkContext中没有main方法,在SparkContext主构造器中,主要做一下四件事情:
1. 调用createSparkEnv()创建SparkEnv,SparkEnv中能够得到ActorSystem对象,用于创建Actor
2. 创建TaskSchedule(用于创建Task),对任务提交的url进行模式匹配,然后到TaskScheduleImpl中去具体实现,然后创建SparkDeployScheduleBackend(后端调度器),并初始化
3. 创建DAGSchedule,用于切分stage
4. 启动。taskSchedule.start()
二、附Saprk部分源码
1. createSparkEnv
2. 在上图createSparkEnv中调用的createDriverEnv
3. createTaskSchedule,DAGScheduler,以及启动方法taskScheduler.start()