搞懂spark-submit参数及应用程序提交(详细)

本文详细介绍了如何使用spark-submit提交Spark应用程序,包括捆绑应用程序依赖、启动方式和参数详解。强调了client和cluster模式的区别,client模式适用于本地调试,而cluster模式适合生产环境,避免大量网络通信。此外,还提到了在cluster模式下添加额外jar的处理方法。
摘要由CSDN通过智能技术生成

提交申请

spark的bin目录中的spark submit脚本用于在集群上启动应用程序。它可以通过一个统一的接口使用Spark支持的所有集群管理器,这样您就不必特别为每个集群管理器配置应用程序。

捆绑应用程序的依赖项

如果代码依赖于其他项目,则需要将它们与应用程序一起打包,以便将代码分发到Spark集群。为此,创建一个包含代码及其依赖项的程序集jar(或“uber”jar)。sbt和Maven都有汇编插件。创建程序集jar时,将Spark和Hadoop列为提供的依赖项;这些依赖项不需要绑定,因为它们是由集群管理器在运行时提供的。一旦有了一个组装好的jar,就可以在传递jar时调用bin/spark提交脚本,如图所示。

对于Python,可以使用spark-submit的--py-files参数增加.py、.zip.egg 文件与应用程序一块被分发。如果依赖多个Python文件,建议将它们打包到.zip或中.egg

使用spark submit启动应用程序

捆绑用户应用程序后,可以使用bin/spark-submit提交脚本启动它。此脚本负责使用Spark及其依赖项设置路径,并且可以支持Spark支持的不同群集管理器和部署模式:

./bin/spark-submit \
  --class <main-class> \
  --master <master-url> \
  --deploy-mode <deploy-mode> \
  --conf <key>=<value> \
  ... # other options
  <application-jar> \
  [application-arguments]

spark-submit 参数详解

在将项目打包之后,可能需要将其提交到大数据平台上去跑,这个时候就涉及到脚本处理。这里主要是有关spark的运行任务…一些常用的提交参数配置如下所示:

参数名

简介

class

spark程序的主类,仅针对 java 或 scala 应用,注意用  全包名+类名

nam
  • 6
    点赞
  • 38
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

data大柳

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值