Spark Context初始化
一、SparkContext初始化配置
1. 设置conf: SparkConf,每次获取配置时读取conf.clone(),避免运行时改变
2. 检查spark.master/spark.app.name/spark.driver.host/spark.driver.port/spark.jars
3. SparkEnv.create()设置环境
1) 创建名称为"spark"的ActorSystem
2) 设置序列化类
3) 注册各种Manager
4. 设置各种变量,TODO
二、创建并启动TaskScheduler和DAGScheduler
个人浅见:DAGScheduler的作用是将Job分解为Stage,将Stage划分为Task Sets;
TaskScheduler执行Task Sets
1. 创建TaskScheduler
根据master的命名规则决定使用什么模式
[standalone deploy模式]
1) 创建TaskSchedulerImpl
2) 创建SparkDeploySchedulerBackend
3) 两者结合
2. 创建DAGScheduler
三、CoarseGrainedSchedulerBackend和CoarseGrainedExecutorBackend