我试图运行一个简单的hello world python代码在无服务器pyspark上的GCP使用gcloud
(从本地windows机器)。
if __name__ == '__main__':
print("Hello")
这总是会导致错误
=========== Cloud Dataproc Agent Error ===========
java.lang.IllegalArgumentException: Illegal character in path at index 38: gs://my-bucket/dependencies\hello.py
at java.base/java.net.URI.create(URI.java:883)
at com.google.cloud.hadoop.services.agent.job.handler.AbstractJobHandler.registerResourceForDownload(AbstractJobHandler.java:592)
gcloud
命令:
gcloud dataproc batches submit pyspark hello.py --batch=hello-batch-5 --deps-bucket=my-bucket --region=us-central1
经过进一步分析,我发现gcloud
将hello.py文件放在dependencies\hello.py
文件夹{deps-bucket}
下,Java认为反斜杠'\'
是非法的。
有人遇到过类似的情况吗?
1条答案
按热度按时间pcww981p1#
正如@Ronak提到的,你能仔细检查桶名吗?我已经复制了你的任务,只是简单地将你的代码复制到我的Google Cloud shell中。它运行得很好。下次运行时,你能删除依赖项文件夹并再次运行批处理作业吗?
在这里看到我的复制:
运行作业后创建的依赖路径: