Managed Service for Apache Spark 可选的 Jupyter 组件

使用可选组件功能创建 Managed Service for Apache Spark 集群时,可以安装 Jupyter 等其他组件。本页面介绍了 Jupyter 组件。

Jupyter 组件是一个基于网页的单用户笔记本,用于交互式数据分析,并支持 JupyterLab 网页界面。您可以通过集群的第一个主节点上的 8123 端口访问 Jupyter 网页界面。

为多个用户启动笔记本。您可以创建启用了 Managed Service for Apache Spark 的 Vertex AI Workbench 实例,也可以在虚拟机上安装 Managed Service for Apache Spark JupyterLab 插件,以便向多个用户提供笔记本。

配置 Jupyter。您可以通过提供 dataproc:jupyter 集群属性来配置 Jupyter。为降低通过不安全的笔记本服务器 API 执行远程代码的风险,默认将 dataproc:jupyter.listen.all.interfaces 集群属性设置为 false。启用组件网关时,该设置会将连接限制为 localhost (127.0.0.1)(安装 Jupyter 组件时必须激活组件网关)。

Jupyter 笔记本提供了一个用于运行 Spark 代码的 Python 内核和一个 PySpark 内核。默认情况下,笔记本保存在 Cloud Storage 的 Managed Service for Apache Spark 暂存存储桶中,该存储桶由用户指定,或在创建集群时自动创建。在创建集群时,通过设置 dataproc:jupyter.notebook.gcs.dir 集群属性来更改该位置。

处理数据文件。您可以使用 Jupyter 笔记本处理已上传到 Cloud Storage 的数据文件。由于 Cloud Storage 连接器已预安装在 Managed Service for Apache Spark 集群上,因此您可以直接在笔记本中引用这些文件。以下示例展示了如何访问 Cloud Storage 中的 CSV 文件:

df = spark.read.csv("gs://bucket/path/file.csv")
df.show()

如需查看 PySpark 示例,请参阅通用加载和保存函数

安装 Jupyter

在创建 Managed Service for Apache Spark 集群时安装该组件。Jupyter 组件需要激活 Managed Service for Apache Spark 组件网关

控制台

  1. 启用组件。
    • 在 Google Cloud 控制台中,打开 Managed Service for Apache Spark 创建集群页面。设置集群面板已处于选中状态。
    • 组件部分中执行以下操作:

gcloud CLI

如需创建包含 Jupyter 组件的 Managed Service for Apache Spark 集群,请使用带有 --optional-components 标志的 gcloud dataproc clusters create cluster-name 命令。

最新默认映像版本的示例

以下示例演示如何在使用最新默认映像版本的集群上安装 Jupyter 组件。

gcloud dataproc clusters create cluster-name \
    --optional-components=JUPYTER \
    --region=region \
    --enable-component-gateway \
    ... other flags

REST API

可以通过 Managed Service for Apache Spark API,将 SoftwareConfig.Component 作为 clusters.create 请求的一部分来安装 Jupyter 组件。

打开 Jupyter 和 JupyterLab 界面

点击 Google Cloud 控制台的组件网关链接,在本地浏览器中打开在集群主节点上运行的 Jupyter 笔记本或 JupyterLab 界面。

选择“GCS”或“Local Disk”在任一位置创建一个新的 Jupyter 笔记本。

将 GPU 挂接到主节点和工作器节点

在使用 Jupyter 笔记本执行以下操作时,您可以向集群的主节点和工作器节点添加 GPU

  1. 在 Spark 中预处理数据,然后将 DataFrame 收集到主节点上并运行 TensorFlow
  2. 使用 Spark 编排 TensorFlow 并行运行
  3. 运行 Tensorflow-on-YARN
  4. 与使用 GPU 的其他机器学习场景搭配使用