火花提交以zip格式传递python文件不起作用

时间:2018-07-05 12:39:56

标签: apache-spark pyspark

我正在尝试使用spark-submit提交Python应用程序,如下所示:

spark-submit \
    --conf spark.submit.pyFiles=path/to/archive.zip \
    --conf spark.app.name=Test123 \
    --conf spark.master=local[2] \
    --conf spark.driver.memory=5G \
    path/to/python_app.py

python_app.py尝试从archive.zip导入模块,但失败并显示ModuleNotFoundError。如果我替换

--conf spark.submit.pyFiles=path/to/archive.zip

--py-files path/to/archive.zip

它按预期工作。真的很奇怪,因为使用--conf可以设置主,驱动程序内存和应用名称。

我在这里想念什么?谢谢!

编辑2018-07-06: 我在Spark版本2.1.32.2.02.3.1中尝试过-这三个版本的问题都是相同的。并且:无论提交local[x]还是yarn,我都有问题。

1 个答案:

答案 0 :(得分:0)

我最近有同样的问题。我相信这里的命名可能会误导人。

设置spark.submit.pyFiles仅表明您要将它们添加到 PYTHONPATH 。但是除了之外,您还需要将那些文件上传到所有执行者的工作目录中。。您可以使用spark.files

对我来说,它能胜任。我正在spark-defauls.conf

中设置这些值