spark源码之任务提交过程

感谢逃出你的肖生克文章指导。

一般在命令行我们会以spark-submit来提交自己的代码,并会以这个形式提交

./bin/spark-submit \

  --class \

  --master \

  --deploy-mode \

  --conf = \

  ... # other options

  \

  [application-arguments]

代码提交到spark后大概会有三个流程。

1.找到或是设置spark_home变量

2.设置相关相关的一些环境变量,并把参数解析

3.执行我们提交的程序


具体实例参见
https://blog.csdn.net/do_yourself_go_on/article/details/75005204


对部分进行注释补充:

build_command() {"$RUNNER"-Xmx128m -cp"  $LAUNCH_CLASSPATH" org.apache.spark.launcher.Main   "$@"   printf"%d\0"$?}

该操作是spark-class中将参数解析的操作,增加$LAUNCH_CLASSPATH" 是为了给Main程序验证是否是该操作,解析时会把参数都打印到命令端,并把参数放入数组返回。

你可能感兴趣的:(spark源码之任务提交过程)