我使用google dataproc群集来运行spark job,脚本是在python中。
当只有一个脚本(例如test.py)时,我可以使用以下命令提交作业:
gcloud dataproc jobs submit pyspark --cluster analyse ./test.py
但是现在test.py从我自己编写的其他脚本导入模块,我如何在命令中指定依赖?
答案 0 :(得分:1)
您可以使用--py-files选项
见这里: https://cloud.google.com/sdk/gcloud/reference/dataproc/jobs/submit/pyspark
答案 1 :(得分:1)
如果您的结构为
- maindir - lib - lib.py
- run - script.py
您可以在--files标志或--py-files标志中添加其他文件
gcloud dataproc jobs submit pyspark --cluster=clustername --region=regionname --files /lib/lib.py /run/script.py
,您可以将script.py导入为
from lib import something
但是,我不知道有什么方法可以避免繁琐的手动添加文件列表的过程。请检查Submit a python project to dataproc job以获得更详细的说明