spark-submit 提交的参数
spark-submit 是用于提交Spark应用到集群的命令行工具。它允许用户控制Spark应用的各种参数,比如应用名、集群URL、运行模式、资源分配等。
以下是一些常用的 spark-submit 参数:
--master MASTER_URL ,其中 MASTER_URL 可选如下:
local,启1个work线程本地运行应用程序
local[K],启K个work线程本地运行应用程序
local[K,F],启K个work线程本地运行应用程序,且运行中最大容忍F次失败次数
local[*],尽可能多启动cpu逻辑线程本地运行应用程序
local[*,F],尽可能多启动cpu逻辑线程本地运行应用程序,且运行中最大容忍F次失败次数
local-cluster[N,C,M],仅用于单元测试,它在一个JVM中模拟一个分布式集群,其中有N个工作线程,每个工作线程有C个内核,每个工作进程有M MiB的内存。
spark://host:port,连接standalone集群的master节点,端口默认7077
spark://HOST1:PORT1,HOST2:PORT2,连接带有Zookeeper备份的standalone集群的master节点。该列表必须使用Zookeeper设置高可用性集群中的所有主主机,端口默认7077。
mesos://host:port,连接 Mesos 集群,端口默认5050
yarn,连接 YARN 集群,此外--deploy-mode参数决定了是client还是cluster模式
k8s://https://host:port 连接 K8s 集群,此外--deploy-mode参数决定了是client还是cluster模式
--deploy-mode 可选cluster及client。cluster:在work节点上部署driver。client:作为外部client在本地部署driver,默认是client
--driver-memory MEM 分配driver的内存,默认1024M
--executor-memory MEM 分配每个executor的内存,默认1G
--driver-cores NUM driver 可以使用的核数,默认1。注意仅在cluster模式下有效
--total-executor-cores NUM 所有的executor总共的核数。注意仅在Spark standalone 以及 Mesos下生效
--executor-cores NUM 每个executor可以使用的核数,默认1。注意仅在 Spark standalone, YARN以及Kubernetes下生效
--num-executors NUM executor启动的数量,默认2。注意仅在Spark on YARN 以及 Kubernetes下生效
示例代码:
spark-submit \
--master spark://23.195.26.187:7077 \
--deploy-mode cluster \
--conf spark.executor.memory=4g \
--conf spark.cores.max=8 \
--name "MySparkApp" \
--class com.example.MySparkApp \
/path/to/your/sparkapp.jar \
arg1 arg2 arg3
在这个例子中,我们提交了一个名为 MySparkApp 的应用到指定的Spark集群。应用的入口类是 com.example.MySparkApp,位于 /path/to/your/sparkapp.jar。最后的 arg1 arg2 arg3 是传递给应用的参数。
本文来自博客园,作者:业余砖家,转载请注明原文链接:https://www.cnblogs.com/yeyuzhuanjia/p/18196142
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步