启动Google DataProc群集以与Jupyter笔记本一起使用时,如何添加其他jar?

sea*_*avi 3 apache-spark google-cloud-dataproc jupyter-notebook

我正在按照说明使用初始化脚本启动Jupyter Notebook来启动Google DataProc集群。

https://cloud.google.com/blog/big-data/2017/02/google-cloud-platform-for-data-scientists-using-jupyter-notebooks-with-apache-spark-on-google-cloud

如何在Jupyter笔记本(尤其是pyspark)的结果SparkContext中包含额外的JAR文件(例如,spark-xml)?

Ang*_*vis 6

答案取决于您要加载的罐子。例如,创建集群时,可以将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
Run Code Online (Sandbox Code Playgroud)

要指定多个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
Run Code Online (Sandbox Code Playgroud)

可以在gcloud中找到有关如何更改转义符的详细信息:

$ gcloud help topic escaping
Run Code Online (Sandbox Code Playgroud)