赞
踩
- spark-submit \
- --master yarn \
- --deploy-mode client \
- --conf spark.driver.maxResultSize=8g
- --conf spark.driver.memory=8g \
- --conf spark.executor.memory=16g \
- --conf spark.debug.maxToStringFields=100 \
- --conf "spark.yarn.dist.archives=hdfs://user/4885/Python-3.6.8.zip#python_env" \
- --conf "spark.pyspark.python=python_env/Python-3.6.8/bin/python3" \
- --conf "spark.pyspark.driver.python=/user/4885/Python-3.6.8/bin/python3" \
- --queue root.default first_pyspark.py
1)使用client模式 需要保证driver和executor上的python版本一致
2)若executor上的python不满足要求,可通过如下参数上传打包好的python到executor上
配置方式1
Python-3.6.8.zip 在本地文件系统
# 上传python包到executor
--archives /user/4885/Python-3.6.8.zip
# 指定executor上python路径
--conf spark.yarn.appMasterEnv.PYSPARK_PYTHON=./python_env/Python-3.6.8/bin/python3
--conf spark.pyspark.python=./python_env/Python-3.6.8/bin/python3
# 指定driver上python路径
--conf spark.pyspark.driver.python=/user/4885/Python-3.6.8/bin/python3
配置方式2
把python包 Python-3.6.8.zip 上传至hdfs,用 spark.yarn.dist.archives 代替 --archives
--conf spark.yarn.dist.archives=hdfs:///user/4885/Python-3.6.8.zip#python_env
--conf spark.pyspark.python=./python_env/Python-3.6.8/bin/python3
--conf spark.pyspark.driver.python=/user/4885/Python-3.6.8/bin/python3
spark-submit --help
主要参数
- --master 设置集群的URL,任务提交到何处执行。
- local 提交到本地服务器执行,分配单个线程
- local[k] 提交到本地服务器执行,分配k个线程
- spark://host:port 提交到standalone模式部署的spark集群中,并指定主节点的IP与端口
- yarn 提交到yarn模式部署的hadoop集群中
- mesos://host:port 提交到mesos模式部署的集群中,并指定主节点的IP与端口
-
-
- --deploy-mode
- client 默认的方式,在客户端上启动driver,这样逻辑运算在client上执行,任务执行在集群上。
- cluster 逻辑运算与任务执行均在集群上,该模式暂不支持mesos集群或python应用程序。
-
-
- --class CLASS_NAME
- 指定应用程序的类入口,即主类。仅针对Java和Scala程序,不作用于python程序。
-
-
- --name NAME 应用程序的名称,用于区分不同的程序
-
-
- --jars JARS
- 用逗号隔开的driver本地jar包列表以及executor类路径,将程序代码及依赖资源打包成jar包。
-
-
- --packages 包含在driver和executor的classpath中的jar包
-
- --exclude-packages 为了避免冲突,指定参数从--packages 中排除的jars包
-
- --py-files PY_FILES
- 逗号隔开的.zip .egg 和 .py文件,这些文件会放置在PYTHONPATH下,该参数仅针对python应用程序。
-
-
- --conf prop=value 指定spark配置属性的值
-
- --properties-file
- 指定需要额外加载的配置文件,用逗号分隔,如果不指定,则默认为 conf/spark-defaults.conf
-
-
- --driver-memory driver程序使用内存大小,默认为1G
- --driver-memory 6g
- --driver-cores 4
-
- --driver-java-options 传递给driver的额外选项
- --driver-library-path 传递给driver的额外的库路径
- --driver-class-path 传递给driver的额外的类路径,用--jars 添加的jar包会自动包含在类路径里
-
-
- --executor-memory 每个executor的内存,默认为1G
- --executor-memory 12g
-
- --executor-cores 15
- --num-executors 10
-
-
-
-
-
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。