Pyspark:如何在 Yarn 集群上运行作业时对多个文件使用 --files 标签
Posted
技术标签:
【中文标题】Pyspark:如何在 Yarn 集群上运行作业时对多个文件使用 --files 标签【英文标题】:Pyspark: How to use --files tag for multiple files while running job on Yarn cluster 【发布时间】:2017-08-05 07:16:51 【问题描述】:我是 Spark 的新手,并且使用 python 来使用 pyspark 编写作业。我想在纱线集群上运行我的脚本,并通过发送log4j.properties
来删除详细日志记录,以便使用--files
标签将日志记录级别设置为WARN
。我有一个脚本使用的本地 csv 文件,我也需要包含它。如何使用--files
标签来包含这两个文件?
我正在使用以下命令:
/opt/spark/bin/spark-submit --master yarn --deploy-mode cluster --num-executors 50 --executor-cores 2 --executor-memory 2G --files /opt/spark/conf/log4j.properties ./list.csv ./read_parquet.py
但我收到以下错误:
Error: Cannot load main class from JAR file:/opt/spark/conf/./list.csv
`
【问题讨论】:
【参考方案1】:您可以通过文件路径以这样的字符串发送逗号分隔的文件:
--文件 "filepath1,filepath2,filepath3" \
为我工作!!
【讨论】:
【参考方案2】:您可以删除“。”第二个文件的 / 前面...在这里我删除了它正在工作。
/opt/spark/bin/spark-submit --master yarn --deploy-mode cluster --num-executors 50 --executor-cores 2 --executor-memory 2G --files /opt/spark/conf/log4j.properties /list.csv /read_parquet.py
【讨论】:
以上是关于Pyspark:如何在 Yarn 集群上运行作业时对多个文件使用 --files 标签的主要内容,如果未能解决你的问题,请参考以下文章