结构: 命令 + 选项 + 文件 + 参数
基础选项:优先级:代码中配置【程序特有】 > 参数选项【运行模式、程序名称、资源选项】 > 配置文件【公共配置】
--master:用于指定程序的运行的模式:Local、Standalone、YARN、Mesos、K8s
--deploy-mode:决定了Driver进程运行的位置,两种模式:client【默认】、cluster
--class:运行某个类,用Python写不用管,用于Java/Scala
--name:指定程序的名字,等同于代码中setAppName
--jars:指定额外的第三方依赖包,例如读写MySQL,需要MySQL的驱动包
--conf:指定一些其他配置--conf key=value, 等同于代码中set方法
Spark程序集群模式运行时会启动两种进程:Driver驱动进程 + Executor计算进程,每种进程运行时都需要资源
Driver资源选项
Executor资源选项
--executor-memory:用于指定每个Executor能使用的内存数
--executor-cores:用于指定每个Executor能使用的CPU核心数
--total-executor-cores:用于指定Standalone情况下,所有Executor使用的总CPU核数
--num-executors:用于Spark on YARN情况下,指定启动的Executor的个数
--queue:用于指定将程序提交到哪个队列中运行