gpt4 book ai didi

python - 使用 pyspark 提交作业时,如何访问使用 --files 参数上传的静态文件?

转载 作者:太空狗 更新时间:2023-10-29 20:15:23 26 4
gpt4 key购买 nike

例如我有一个文件夹:

/
- test.py
- test.yml

作业被提交到 spark 集群:

gcloud beta dataproc 作业提交 pyspark --files=test.yml "test.py"

test.py 中,我想访问我上传的静态文件。

with open('test.yml') as test_file:
logging.info(test_file.read())

但出现以下异常:

IOError: [Errno 2] No such file or directory: 'test.yml'

如何访问我上传的文件?

最佳答案

可以通过 SparkFiles 访问使用 SparkContext.addFile(和 --files)分发的文件。它提供了两种方法:

  • getRootDirectory() - 返回分布式文件的根目录
  • get(filename) - 返回文件的绝对路径

我不确定是否存在任何 Dataproc 特定限制,但像这样的东西应该可以正常工作:

from pyspark import SparkFiles

with open(SparkFiles.get('test.yml')) as test_file:
logging.info(test_file.read())

关于python - 使用 pyspark 提交作业时,如何访问使用 --files 参数上传的静态文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34939520/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com