spark-submit
spark-submit是用于提交并运行【已开发完成的Spark程序】
本文默认以Yarn模式演示和讲解
基础语法
语法:spark-submit [可选选项] <Jar包 | Python文件 | R文件> 参数
spark-submit \
--master yarn \
……
hdfs://node1:8020/spark/app/pyspark_core_wordcount_args.py \
argv1 \
argv2
可选选项
基础选项
参数 | 作用 | 默认值 |
---|
–master | 用于指定当前程序运行的模式(local、Standalone、yarn、Mesos、K8s) | local[*] |
–deploy-mode | 用于指定Driver进程运行的位置(client和cluster) | client |
–name | 用于指定当前程序的名称 | 运行的文件名 |
–jars | 用于指定当前程序额外使用的一些jar包。例如MySQL驱动包、JSON解析包 | |
–conf | 用于临时修改Spark程序中其他的配置 | |
Driver资源选项
参数 | 作用 | 默认值 |
---|
–driver-cores | 指定Driver进程运行时,能够使用多少核CPU | 1 |
—driver-memory | 指定Driver进程运行时,能够使用多少内存 | 1024M |
–supervise | 当Driver进程故障,强制自动重启 | |
Executor资源选项
参数 | 作用 | 默认值 |
---|
–num-executors | YARN模式下指定Executor进程的个数 | 1 |
–executor-cores | 指定每个Executor运行时,能够使用多少核CPU | 1 |
–executor-memory | 指定每个Executor进程运行时,能够使用多少内存 | 1024M |
–queue | 指定提交到哪个队列中运行 | |
案例脚本
/export/server/spark/bin/spark-submit \
--master yarn \
--deploy-mode cluster \
--driver-cores 1 \
--driver-memory 512M \
--supervise \
--num-executors 1 \
--executor-cores 1 \
--executor-memory 1G \
hdfs://node1:8020/spark/app/py/pyspark_core_word_args.py \
argv1 \
argv2