摘要: 在创建taskScheduler的时候SparkContext.createTaskScheduler(this, master),进行了 new SparkDeploySchedulerBackend()的步骤,在SparkDeploySchedulerBackend的84行,执行了app运行使用 阅读全文
posted @ 2016-12-20 11:25 花心土豆 阅读(307) 评论(0) 推荐(0) 编辑
摘要: 在任务启动时,sparksubmit已经通过反射的方式调用了用户提交任务的主类中的main方法,所以,本节以wordcount为例讲解在wordcount中主要由以下几步:创建SparkConf,设置名字创建SparkContent,书写程序程序逻辑,启动任务停止任务所以最重要的源码分析应该在new SparkContent()这个步骤里在281行定义了createSparkEnv()方法,用来创... 阅读全文
posted @ 2016-12-20 11:23 花心土豆 阅读(258) 评论(0) 推荐(0) 编辑
摘要: 在脚本spark-submit中调用SparkSubmit的main方法在main方法中执行如下:获取提交参数,繁琐就打印通过提交的action匹配是什么行为如果是提交任务,执行submit(args)方法在submit(args)方法中执行如下:准备运行环境定义doRunMain()方法调用runmain()方法,执行用户提交主类的main()方法调用doRunMain()方法 阅读全文
posted @ 2016-12-20 11:22 花心土豆 阅读(234) 评论(0) 推荐(0) 编辑
摘要: 在worker启动时,通过脚本start-slave.sh脚本中调用main()在main()中封装参数,调用startRpcEnvAndEndpoint()创建RpcEnv在startRpcEnvAndEndpoint()中创建RpcEnv和endpiont,并实例化Worker,执行Worker 阅读全文
posted @ 2016-12-20 11:21 花心土豆 阅读(247) 评论(0) 推荐(0) 编辑
摘要: 1、在start-master.sh脚本中调用Mater.scala中的main方法 2、在main方法中封装spark参数,并调用startRpcEnvAndEndpoint()创建RpcEnv 3、在startRpcEnvAndEndpoint中创建RpcEnv(AkkaSystem),创建ma 阅读全文
posted @ 2016-12-20 11:20 花心土豆 阅读(261) 评论(0) 推荐(0) 编辑