spark-submit 可以提交任务到 spark 集群执行,也可以提交到 hadoop 的 yarn 集群执行。

1)./spark-shell --help   :不知道如何使用,可通过它查看命令帮助,[]中括号里面的表示可选的。

2)重要参数讲解:

--master    master 的地址,提交任务到哪里执行,例如 spark://host:port,  yarn,  local

--name     这个是指定你的application name  应用名称。

--jars        这个是用comma逗号分隔的一系列包含driver和executor的环境变量的包。

--conf       这个是指定一些配置的参数。

--driver-*   这个是指定driver的memory、class-path等。

--executor-memory   这个是设置executor端的内存。

--executor-core   指定executor的core资源

--driver-core       指定driver的core资源

--queue     生产上肯定是以队列的方式来提交的

--num-executor   指定executor 执行者的个数

-----------------------------------------------------------------------------

原文:https://blog.csdn.net/qq_42064119/article/details/83038811

转自: https://www.cnblogs.com/weiweifeng/p/8073553.html

1. 例子

一个最简单的例子,部署 spark standalone 模式后,提交到本地执行。

./bin/spark-submit \
--master spark://localhost:7077 \
examples/src/main/python/pi.py

如果部署 hadoop,并且启动 yarn 后,spark 提交到 yarn 执行的例子如下。

注意,spark 必须编译成支持 yarn 模式,编译 spark 的命令为:

build/mvn -Pyarn -Phadoop-2.x -Dhadoop.version=2.x.x -DskipTests clean package

其中, 2.x 为 hadoop 的版本号。编译完成后,可执行下面的命令,提交任务到 hadoop yarn 集群执行。

./bin/spark-submit --class org.apache.spark.examples.SparkPi \
--master yarn \
--deploy-mode cluster \
--driver-memory 1g \
--executor-memory 1g \
--executor-cores 1 \
--queue thequeue \
examples/target/scala-2.11/jars/spark-examples*.jar 10

2. spark-submit 详细参数说明

参数名 参数说明
--master  master 的地址,提交任务到哪里执行,例如 spark://host:port,  yarn,  local
--deploy-mode  在本地 (client) 启动 driver 或在 cluster 上启动,默认是 client
--class  应用程序的主类,仅针对 java 或 scala 应用
--name  应用程序的名称
--jars  用逗号分隔的本地 jar 包,设置后,这些 jar 将包含在 driver 和 executor 的 classpath 下
--packages  包含在driver 和executor 的 classpath 中的 jar 的 maven 坐标
--exclude-packages  为了避免冲突 而指定不包含的 package
--repositories  远程 repository
--conf PROP=VALUE

指定 spark 配置属性的值,

例如 -conf spark.executor.extraJavaOptions="-XX:MaxPermSize=256m"

--properties-file  加载的配置文件,默认为 conf/spark-defaults.conf
--driver-memory  Driver内存,默认 1G
--driver-java-options  传给 driver 的额外的 Java 选项
--driver-library-path  传给 driver 的额外的库路径
--driver-class-path  传给 driver 的额外的类路径
--driver-cores  Driver 的核数,默认是1。在 yarn 或者 standalone 下使用
--executor-memory  每个 executor 的内存,默认是1G
--total-executor-cores  所有 executor 总共的核数。仅仅在 mesos 或者 standalone 下使用
--num-executors  启动的 executor 数量。默认为2。在 yarn 下使用
--executor-core  每个 executor 的核数。在yarn或者standalone下使用

最新文章

  1. 自己实现一个简易web服务器
  2. ZooKeeper:数据模型
  3. vuex
  4. 每天一个 Linux 命令(15):tail 命令
  5. 由Selenium1转变为Selenium2所遇到的问题
  6. UCloud EIP 你真的懂得如何使用么? - SegmentFault
  7. A_全然背包
  8. tomcat开始批量——setclasspath.bat
  9. 一个题目涉及到的50个Sql语句
  10. npm run dev 启动错误:Module build failed: Error: No PostCSS Config found in:xxxxxxxxxxxxxx
  11. java io系列03之 ByteArrayOutputStream的简介,源码分析和示例(包括OutputStream)
  12. Python 映射
  13. Codeforces Round #412 C. Success Rate
  14. [原]jenkins(五)---jenkins添加项目
  15. .NET Core开发日志——从搭建开发环境开始
  16. [Robot Framework] 通过RemoteWhiteLibrary启动程序并登录初尝试
  17. 使用JWPL (Java Wikipedia Library)操作维基百科数据
  18. XPATH的几个常用函数
  19. Java 打包下载服务器上选中的文件或目录(带进度条提示)
  20. 【转】mysqldump的锁表的问题

热门文章

  1. KVM之virsh管理虚拟机CPU
  2. Python使用selenium模拟点击(二)
  3. Linux 01 Liunx系统简介
  4. Octave(1)
  5. Why do we name variables in Tensorflow?
  6. CodeForces 768E SG函数 整数划分 Game of Stones
  7. java之数据结构与算法
  8. JS 自定义组件
  9. c语言1博客作业11
  10. stm32中阻塞模式和非阻塞模式 in blocking mode 与 in non-blocking mode区别