相关疑难解决方法(0)

在google-dataproc的Spark集群中的pyspark作业中使用外部库

我有一个我通过谷歌数据交换机创建的火花簇.我希望能够使用databricks 的csv库(请参阅https://github.com/databricks/spark-csv).所以我首先测试它是这样的:

我开始与我的集群的主节点进行ssh会话,然后我输入:

pyspark --packages com.databricks:spark-csv_2.11:1.2.0
Run Code Online (Sandbox Code Playgroud)

然后它启动了一个pyspark shell,我在其中输入:

df = sqlContext.read.format('com.databricks.spark.csv').options(header='true', inferschema='true').load('gs:/xxxx/foo.csv')
df.show()
Run Code Online (Sandbox Code Playgroud)

它奏效了.

我的下一步是使用以下命令从我的主机启动此作业:

gcloud beta dataproc jobs submit pyspark --cluster <my-dataproc-cluster> my_job.py
Run Code Online (Sandbox Code Playgroud)

但在这里它不起作用,我得到一个错误.我想因为我没有--packages com.databricks:spark-csv_2.11:1.2.0作为一个论点,但我尝试了10种不同的方式来给它,我没有管理.

我的问题是:

  1. 是我键入后安装的databricks csv库 pyspark --packages com.databricks:spark-csv_2.11:1.2.0
  2. 我可以在我的网上写一行job.py来导入它吗?
  3. 或者我应该给我的gcloud命令导入或安装它的params?

import apache-spark pyspark google-cloud-dataproc

6
推荐指数
2
解决办法
4086
查看次数