Maven 如何在GCP中向dataproc集群添加jar依赖项?

Maven 如何在GCP中向dataproc集群添加jar依赖项?,maven,google-cloud-platform,pyspark,google-cloud-dataproc,Maven,Google Cloud Platform,Pyspark,Google Cloud Dataproc,特别是,如何添加spark bigquery连接器,以便从dataproc的Jupyter web界面中查询数据 关键环节: - 目标: 要能够运行以下内容: s = spark.read.bigquery("transactions") s = (s .where("quantity" >= 0) .groupBy(f.col('date')) .agg({'sales_amt':'sum'}) ) df = s.toPandas() 基本上有两种

特别是,如何添加spark bigquery连接器,以便从dataproc的Jupyter web界面中查询数据

关键环节: -

目标: 要能够运行以下内容:

s = spark.read.bigquery("transactions")

s = (s
    .where("quantity" >= 0)
    .groupBy(f.col('date'))
    .agg({'sales_amt':'sum'})
     )

df = s.toPandas()

基本上有两种方法可以实现您的目标:

1在群集创建时: 您必须创建一个初始化脚本(param
--初始化操作
)来安装依赖项。

2在群集创建时: 您可以指定创建集群时要使用的自定义映像。

3作业运行时的: 使用
--jars
参数运行作业时,可以传递其他jar文件:

如果要运行一个简单的.jar依赖项,如scoop.jar,我建议使用(3)

我建议(1)如果在运行作业之前要安装很多软件包。它给你更多的控制


选项(2)肯定会给你完全的控制权,但你必须自己维护映像(应用补丁、升级等),所以除非你真的需要,我不推荐。

我认为你可以编写一个初始化操作将jar下载到/usr/lib/spark/jars中。