【发布时间】:2018-02-16 16:23:35
【问题描述】:
我正在按照说明使用初始化脚本启动 Google DataProc 集群来启动 jupyter notebook。
如何在 Jupyter 笔记本(尤其是 pyspark)中生成的 SparkContext 中包含额外的 JAR 文件(例如 spark-xml)?
【问题讨论】:
标签: apache-spark jupyter-notebook google-cloud-dataproc
我正在按照说明使用初始化脚本启动 Google DataProc 集群来启动 jupyter notebook。
如何在 Jupyter 笔记本(尤其是 pyspark)中生成的 SparkContext 中包含额外的 JAR 文件(例如 spark-xml)?
【问题讨论】:
标签: apache-spark jupyter-notebook google-cloud-dataproc
答案取决于您要加载的 jar。例如,您可以在创建集群时将 spark-xml 与以下内容一起使用:
$ gcloud dataproc clusters create [cluster-name] \
--zone [zone] \
--initialization-actions \
gs://dataproc-initialization-actions/jupyter/jupyter.sh \
--properties spark:spark.jars.packages=com.databricks:spark-xml_2.11:0.4.1
要指定多个 Maven 坐标,您需要将 gcloud 字典分隔符从 ',' 交换为其他字符(因为我们需要使用它来分隔要安装的包):
$ gcloud dataproc clusters create [cluster-name] \
--zone [zone] \
--initialization-actions \
gs://dataproc-initialization-actions/jupyter/jupyter.sh \
--properties=^#^spark:spark.jars.packages=artifact1,artifact2,artifact3
转义字符如何更改的详细信息可以在 gcloud 中找到:
$ gcloud help topic escaping
【讨论】: