Optionale Jupyter-Komponente für Managed Service for Apache Spark

Sie können zusätzliche Komponenten wie Jupyter installieren, wenn Sie einen Managed Service for Apache Spark Cluster mit dem Feature Optionale Komponenten erstellen. Auf dieser Seite wird die Jupyter-Komponente erläutert.

Die Jupyter-Komponente ist ein webbasiertes Einzelnutzer-Notebook für interaktive Datenanalysen und unterstützt die JupyterLab -Webbenutzeroberfläche. Die Jupyter-Webbenutzeroberfläche ist über Port 8123 auf dem ersten Masterknoten des Clusters verfügbar.

Notebooks für mehrere Nutzer starten Sie können eine Vertex AI Workbench-Instanz mit Managed Service for Apache Spark-Unterstützung erstellen oder das Managed Service for Apache Spark JupyterLab-Plug-in auf einer VM installieren, um Notebooks für mehrere Nutzer bereitzustellen.

Jupyter konfigurieren Jupyter kann durch Angabe von dataproc:jupyter Clusterattributen konfiguriert werden. Um das Risiko der Remotecodeausführung über unsichere Notebookserver APIs zu verringern, ist die Standardeinstellung für das Clusterattribut dataproc:jupyter.listen.all.interfaces false. Dadurch werden Verbindungen zu localhost (127.0.0.1) eingeschränkt, wenn das Component Gateway aktiviert ist. Die Aktivierung des Component Gateway ist erforderlich, wenn die Jupyter-Komponente installiert wird.

Das Jupyter Notebook verwendet einen Python-Kernel zur Ausführung von Spark-Code und einen PySpark-Kernel. Notebooks werden standardmäßig im Managed Service for Apache Spark-Staging-Bucket in Cloud Storage gespeichert. Dieser Bucket wird vom Nutzer festgelegt oder bei der Clustererstellung automatisch generiert . Der Speicherort kann bei der Clustererstellung mit dem dataproc:jupyter.notebook.gcs.dir Clusterattribut geändert werden.

Mit Datendateien arbeiten Mit einem Jupyter-Notebook kann auf einfache Weise mit Datendateien gearbeitet werden, die in Cloud Storage hochgeladen wurden . Da der Cloud Storage-Connector auf einem Managed Service for Apache Spark-Cluster vorinstalliert ist, können Sie direkt in Ihrem Notebook auf die Dateien verweisen. Das im Folgenden aufgeführte Beispiel zeigt den Zugriff auf CSV-Dateien in Cloud Storage:

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

Weitere PySpark-Beispiele finden Sie unter Generische Laden- und Speichern-Funktionen.

Jupyter installieren

Installieren Sie die Komponente, wenn Sie einen Managed Service for Apache Spark-Cluster erstellen. Für die Jupyter-Komponente muss das Managed Service for Apache Spark Component Gateway aktiviert sein.

Console

  1. Aktivieren Sie die Komponente.
    • Öffnen Sie in der Google Cloud Console die Seite Managed Service for Apache Spark Cluster erstellen. Der Bereich Cluster einrichten ist ausgewählt.
    • Im Bereich Komponenten :

gcloud CLI

Verwenden Sie zum Erstellen eines Managed Service for Apache Spark-Clusters, der die Jupyter-Komponente enthält, verwenden Sie den gcloud dataproc clusters create cluster-name Befehl mit dem --optional-components Flag.

Beispiel für die aktuelle Standard-Bildversion

Im folgenden Beispiel wird die Jupyter-Komponente auf einem Cluster installiert, der die aktuelle Standard-Image-Version verwendet.

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

REST API

Die Jupyter-Komponente kann über die Managed Service for Apache Spark API mit SoftwareConfig.Component als Teil einer clusters.create Anfrage installiert werden.

Jupyter-UI und JupyterLab-UI öffnen

Klicken Sie auf die Google Cloud Links zum Component Gateway in der Console, um in Ihrem lokalen Browser das Jupyter-Notebook oder die JupyterLab-UI zu öffnen, die auf dem Clustermaster ausgeführt werden.

Wählen Sie „GCS“ oder „Lokales Laufwerk“ aus, um an beiden Orten ein neues Jupyter-Notebook zu erstellen.

GPUs an Master- und Worker-Knoten anhängen

Sie können den Master- und Worker-Knoten Ihres Clusters GPUs hinzufügen , wenn Sie ein Jupyter-Notebook für folgende Aufgaben verwenden:

  1. Daten in Spark vorverarbeiten, dann einen DataFrame auf dem Master erfassen und TensorFlow ausführen
  2. Spark zur parallelen Orchestrierung von TensorFlow-Ausführungen verwenden
  3. Tensorflow-on-YARN ausführen
  4. In anderen ML-Szenarien verwenden, die GPUs verwenden