Python 无法从PySpark将Spark数据帧保存到Google云存储

Python 无法从PySpark将Spark数据帧保存到Google云存储,python,pyspark,google-cloud-storage,Python,Pyspark,Google Cloud Storage,我有一个Spark数据框,我正试图用这行代码保存到Google存储桶中 df.write.format("com.databricks.spark.csv").save('gs://some-test-bucket-delete-me') 但是Pypark引发了以下例外 Py4JJavaError: An error occurred while calling o55.save. : java.lang.RuntimeException: java.lang.ClassNotFoundExc

我有一个Spark数据框,我正试图用这行代码保存到Google存储桶中

df.write.format("com.databricks.spark.csv").save('gs://some-test-bucket-delete-me')
但是Pypark引发了以下例外

Py4JJavaError: An error occurred while calling o55.save.
: java.lang.RuntimeException: java.lang.ClassNotFoundException: Class com.google.cloud.hadoop.fs.gcs.GoogleHadoopFileSystem not found
我所尝试的:

此异常的典型解决方案是确保环境变量
HADOOP\u CLASSPATH
指向
gcs-connector-latest-hadoop2.jar
文件。我尝试过使用Hadoop版本1和版本2 JAR,以防出现问题。我试着在Jupyter笔记本中用

sc._jsc.hadoopConfiguration().set("spark.driver.extraClassPath", "/home/****/hadoop-2.8.2/share/hadoop/common/lib/gcs-connector-latest-hadoop1.jar")
无济于事

如果我尝试从bash中删除hadoop fs-ls gs://gs://some test bucket delete me,该命令会完美返回,这应该表明Google云存储连接可以工作,但由于某种原因,我似乎无法在PySpark中使用该功能

重要的事情:

Spark版本2.2.0

Python 3.6.1::Anaconda自定义(64位)


我正在本地运行PySpark

您应该先运行
gcloud init

然后尝试
df.write.csv('gs://some test bucket delete me/file\u name')