Interaktive Sitzungen und Laufzeitprofile erstellen

In diesem Dokument erfahren Sie, wie Sie interaktive Sitzungen und Laufzeitprofile für Managed Service for Apache Spark erstellen, die in der Google Cloud CLI und der Dataproc API als Sitzungsvorlagen bezeichnet werden. Ein Laufzeitprofil ist ein wiederverwendbarer Satz von serverlosen Spark-Laufzeiteinstellungen, z. B. die Rechenstufe und die Executor-Konfiguration, mit denen Sie interaktive Notebooks und Sitzungen erstellen können.

Interaktive Sitzung erstellen

Sie können die Google Cloud CLI oder die Managed Service for Apache Spark API verwenden, um eine interaktive Sitzung für Managed Service for Apache Spark zu erstellen.

gcloud

Mit dem Befehl gcloud beta dataproc sessions create spark SESSION_ID können Sie eine interaktive Managed Service for Apache Spark-Sitzung erstellen:

gcloud beta dataproc sessions create spark SESSION_ID \
    --location=REGION \
    optional flags ...

Ersetzen oder fügen Sie Folgendes hinzu:

REST

Sie können die Managed Service for Apache Spark API-Methode sessions.create verwenden, um eine interaktive Managed Service for Apache Spark-Sitzung zu erstellen. Konfigurieren Sie die folgenden Anfragefelder:

Laufzeitprofil erstellen

Ein Laufzeitprofil für Managed Service for Apache Spark (manchmal auch als Sitzungsvorlage bezeichnet) definiert wiederverwendbare Konfigurationseinstellungen zum Erstellen interaktiver Sitzungen für Managed Service for Apache Spark. Sie können die Google Cloud Console, die gcloud CLI oder die Managed Service for Apache Spark API verwenden, um ein Laufzeitprofil zu erstellen. In der gcloud CLI und der Dataproc API werden Laufzeitprofile als session templates bezeichnet.

Console

So erstellen Sie ein Managed Service for Apache Spark-Laufzeitprofil mit derGoogle Cloud Console:

  1. Rufen Sie in der Google Cloud Console die Seite Laufzeitprofile auf.

    Zu „Laufzeitprofile“

  2. Klicken Sie auf Erstellen.

  3. Konfigurieren Sie auf der Seite Laufzeitprofil erstellen die folgenden primären Einstellungen:

    • Anzeigename: erforderlich. Geben Sie einen Anzeigenamen für das Laufzeitprofil ein oder übernehmen Sie den vorausgefüllten generierten Namen. Der Anzeigename muss mindestens einen Buchstaben oder eine Ziffer enthalten und wird als Anzeigename auf oberster Ebene für alle Sitzungstypen gespeichert, einschließlich Spark Connect. Der Name des Laufzeitprofils ist die Ressourcen-ID und wird automatisch aus dem Anzeigenamen abgeleitet. Dazu werden Buchstaben in Kleinbuchstaben und ungültige Zeichen in Bindestriche umgewandelt. Dies wird als Hinweis unter dem Feld angezeigt. Wenn Sie die Ressourcen-ID unabhängig vom Anzeigenamen anpassen möchten, maximieren Sie Zusätzliche Konfiguration und bearbeiten Sie Laufzeitkonfiguration.

    • Region: erforderlich. Wählen Sie eine verfügbare Compute Engine-Region für Sitzungen aus, die dieses Laufzeitprofil verwenden. Die Standardregion ist us-east4 (früher us-central1) und in der Liste werden Regionsbeschreibungen angezeigt.

    • Beschreibung: optional. Geben Sie eine Beschreibung ein, um das Laufzeitprofil zu identifizieren.

    • Stufe: Wählen Sie die Managed Service for Apache Spark-Stufe für die Ausführung der Arbeitslast aus:

      • Premium: Standard. Optimiert komplexe oder latenzempfindliche Abfragen mit Beschleunigungs-Engines und unterstützt Executor-Formen mit großem Arbeitsspeicher und GPU-Beschleunigung. Wenn Premium ausgewählt ist, wird das Kästchen Lightning Engine aktivieren, um die Leistung zu beschleunigen angezeigt und standardmäßig ausgewählt, um Spark-Jobs mit der Lightning Engine zu beschleunigen. Dadurch wird spark.dataproc.engine=lightningEngine festgelegt.

      • Standard: Bietet eine Standard-Spark-Ausführungsumgebung für die routinemäßige Datenverarbeitung. Interaktive Sitzungen werden immer in der Premium-Stufe ausgeführt. Die Auswahl von Standard wirkt sich nur auf die Batchausführung aus. Wenn Sie Standard auswählen, wird die Lightning Engine deaktiviert, die Maschinentypen werden auf Standard-CPU-Typen (standard-4, standard-8 oder standard-16) beschränkt und es sind HDD (standard)-Laufwerke erforderlich. Wenn Sie von Premium zu Standard wechseln, werden Formen mit großem Arbeitsspeicher oder GPU-Formen auf standard-4 und SSD-Laufwerke auf eine 200 GiB-HDD zurückgesetzt.

    • Executor-Konfiguration: Wählen Sie den Modus für die Computing-Größe und die Maschinenform für die Spark-Executors und den Spark-Treiber aus, die Ihre Arbeitslast ausführen:

      • Allgemein: Standard. Bietet reine CPU-Maschinenformen, die für allgemeine ETL-Arbeitslasten (Extrahieren, Transformieren und Laden) geeignet sind. Wählen Sie in der Liste Executor-Typ einen Typ mit großem Speicher aus, z. B. highmem-4 (Standard) mit 4 vCPUs und 32 GB Arbeitsspeicher, highmem-8 mit 8 vCPUs und 64 GB Arbeitsspeicher oder highmem-16 mit 16 vCPUs und 128 GB Arbeitsspeicher. Alternativ können Sie einen Standardtyp auswählen, z. B. standard-4 mit 4 vCPUs und 16 GB Arbeitsspeicher, standard-8 mit 8 vCPUs und 32 GB Arbeitsspeicher oder standard-16 mit 16 vCPUs und 64 GB Arbeitsspeicher. High Memory-Formen sind nur in der Premium-Stufe verfügbar.

      • Beschleunigt: Bietet GPU-verbundene Maschinenformen, die für Data Science- und KI- oder ML-Trainings- und Inferenzarbeitslasten geeignet sind. Wenn Sie eine beschleunigte Form auswählen, wird die Stufe automatisch auf Premium und die Laufwerksstufe auf SSD (Premium) mit einer Standardgröße von 375 GiB umgestellt. Wählen Sie in der Liste Executor-Typ eine L4-Form mit 4, 8, 12, 16, 24, 48 oder 96 vCPUs oder eine A100-Form wie A100 40GB (12 vCPU) oder A100 80GB (12 vCPU) aus.

  4. Optional: Wenn Sie erweiterte Einstellungen für Laufzeit, Computing, Autoscaling, Metastore, Netzwerk, Sicherheit, Lebenszyklus oder Attribute anpassen möchten, klicken Sie auf Zusätzliche Konfiguration, um den Bereich zu maximieren. Klicken Sie neben einer Kategorie, die Sie anpassen möchten, auf Bearbeiten, konfigurieren Sie die Einstellungen im Bereich und klicken Sie dann auf Speichern:

    • Laufzeitkonfiguration: Konfigurieren Sie die Laufzeit-ID, die Spark-Version, das Container-Image, den Staging-Bucket und das Python-Paket-Repository:

      • Name des Laufzeitprofils: erforderlich. Übernehmen Sie die generierte Ressourcen-ID, die vom Anzeigenamen abgeleitet wurde, oder geben Sie eine benutzerdefinierte ID ein. Die ID muss zwischen 4 und 63 Zeichen lang sein, darf nur Kleinbuchstaben, Ziffern und Bindestriche enthalten, muss mit einem Kleinbuchstaben oder einer Ziffer beginnen und enden und kann nach dem Erstellen des Laufzeitprofils nicht mehr geändert werden.

      • Spark-Laufzeitversion: erforderlich. Wählen Sie eine unterstützte Managed Service for Apache Spark-Laufzeitversion aus.

      • Benutzerdefiniertes Spark-Image: optional. Geben Sie den Artifact Registry- oder Container Registry-URI eines benutzerdefinierten Container-Images ein, das benutzerdefinierte Java- oder Python-Abhängigkeiten enthält.

      • Staging-Bucket: optional. Klicken Sie auf Durchsuchen, um einen Cloud Storage-Staging-Bucket zum Speichern von Arbeitslastabhängigkeiten, Job-Treiberausgaben und Konfigurationsdateien auszuwählen oder zu erstellen. Wenn Sie das Feld leer lassen, verwaltet Managed Service for Apache Spark den Staging-Bucket automatisch (in der Zusammenfassung durch Auto gekennzeichnet).

      • Python-Paket-Repository: optional. Geben Sie den URI eines benutzerdefinierten Repositorys wie https://pypi.org/simple ein, um Python-Pakete zu installieren. Wenn Sie das Feld leer lassen, werden Pakete aus dem von Google verwalteten PyPI-Pull-Through-Cache (Standardzusammenfassung) installiert.

    • Executor- und Treiberkonfiguration: Passen Sie die Rechenstufe, die Laufwerksstufe, die Laufwerksgröße und die separate Treiberkonfiguration an:

      • Stufe: Wählen Sie Premium aus, einschließlich des optionalen Kästchens Lightning Engine aktivieren, um die Leistung zu beschleunigen, oder Standard.

      • Executor-Typ: Wählen Sie eine allgemeine High memory- oder Standard-Maschinenform oder eine beschleunigte L4- oder A100-Maschinenform aus.

      • Laufwerksstufe: Wählen Sie HDD (standard) oder SSD (premium) aus. HDD (standard) ist die Standardeinstellung für CPU-Formen und auf der Standardstufe erforderlich. SSD (premium) ist in der Premium-Stufe für Arbeitslasten mit vielen Shuffle- oder Spill-Vorgängen verfügbar und für beschleunigte GPU-Formen erforderlich.

      • Laufwerkgröße: Wählen Sie eine Laufwerkgröße in GiB aus. HDD (standard) unterstützt 200 GiB bis 1500 GiB in Schritten von 100 GiB, wobei der Standardwert 200 GiB ist. SSD (premium) unterstützt 375 GiB, 750 GiB oder 1500 GiB. Der Standardwert ist 375 GiB.

      • Andere Konfiguration für Treiber verwenden: optional. Standardmäßig verwendet der Treiber dieselbe Maschinenform und Laufwerkskonfiguration wie der Executor. Wählen Sie dieses Kästchen aus, um den Maschinentyp, die Laufwerksstufe und die Laufwerksgröße des Treibers unabhängig voneinander anzupassen.

    • Autoscaling: Konfigurieren Sie die dynamische Ressourcenzuweisung, um Executors basierend auf der Arbeitslast zu skalieren:

      • Aktiviert: Standardmäßig ausgewählt, wodurch spark.dynamicAllocation.enabled festgelegt wird. Entfernen Sie das Häkchen aus diesem Kästchen, um das Autoscaling zu deaktivieren.

      • Anfängliche Executors: Geben Sie die anfängliche Anzahl von Executors ein, wodurch spark.dynamicAllocation.initialExecutors festgelegt wird. Der Standardwert ist 5. Gültige Werte reichen von 2 bis 2000 für Laufzeitversionen 2.3 und früher oder von 0 bis 2000 für Laufzeitversion 3.0 und höher.

      • Mindestanzahl von Executors: Geben Sie die Mindestanzahl von Executors ein, wodurch spark.dynamicAllocation.minExecutors festgelegt wird. Der Standardwert ist 2 für Laufzeitversionen 2.3 und früher oder 0 für Laufzeitversion 3.0 und höher, mit einer Obergrenze von 2000.

      • Maximale Anzahl von Executors: Geben Sie die maximale Anzahl von Executors ein, wodurch spark.dynamicAllocation.maxExecutors festgelegt wird. Der Standardwert ist 1000, der maximal zulässige Wert 2000.

    • Metastore-Konfiguration: Wählen Sie den Metastore aus, der Ihre Dataset-Metadaten verwaltet:

      • Lakehouse-Laufzeitkatalog: Standard. Verwendet einen serverlosen Lakehouse-Laufzeitkatalog im aktuellen Projekt, wobei der Iceberg-REST-Endpunkt standardmäßig aktiviert ist. Sie können die Projekt-ID angeben und entweder eine vorhandene Katalog-ID auswählen oder einen neuen Katalog definieren. Sie können auch das Kästchen Hive-Endpunkt anklicken, um eine Projekt-ID, eine Katalog-ID und einen Katalognamen für den Hive-Endpunkt anzugeben.

      • Dataproc Metastore: Hängt eine verwaltete Dataproc Metastore-Hive Metastore-Instanz (HMS) an. Wählen Sie das Projekt unter Ausgewähltes Projekt und eine Dienstinstanz in der Liste Metastore-Dienst aus.

      • Keine: Deaktiviert die Metastore-Integration für Sitzungen, die dieses Laufzeitprofil verwenden.

    • Netzwerk und Sicherheit: Konfigurieren Sie VPC-Netzwerke, Ausführungsanmeldedaten und Verschlüsselungsschlüssel:

      • Cluster verbinden: Unter Netzwerkkonfiguration wählt die Google Cloud Console automatisch ein geeignetes Netzwerk oder Subnetzwerk in der ausgewählten Region aus. Wenn in der ausgewählten Region kein Standardnetzwerk verfügbar ist, wird automatisch Zusätzliche Konfiguration geöffnet und eine Warnung angezeigt, dass das Standardnetzwerk nicht verfügbar ist. In diesem Fall bleibt die Schaltfläche Erstellen deaktiviert, bis Sie auf Netzwerk konfigurieren klicken und ein verfügbares Subnetzwerk auswählen. Sie können Netzwerke in diesem Projekt auswählen, um ein primäres Netzwerk und ein Subnetzwerk im aktuellen Projekt auszuwählen, oder Vom Hostprojekt freigegebene Netzwerke auswählen, um ein gemeinsam genutztes VPC-Subnetzwerk auszuwählen. Für das ausgewählte Subnetzwerk muss der private Google-Zugriff (PGA) aktiviert sein. Informationen zu den Anforderungen an die Netzwerkverbindung finden Sie unter Offene Subnetzverbindung. Sie können auch optionale Netzwerk-Tags eingeben, um Firewallregeln und Routen auf Arbeitslast-VMs anzuwenden.

      • Notebooks ausführen mit: Wählen Sie Nutzerkonto (Standardeinstellung) aus, um Notebooks mit den Anmeldedaten des Endnutzers auszuführen, oder wählen Sie Dienstkonto aus, um Sitzungen mit einem benutzerdefinierten Dienstkonto auszuführen. Wenn Dienstkonto ausgewählt ist, muss im Feld Dienstkonto ein Dienstkonto angegeben werden.

      • Verschlüsselung: Wählen Sie Google-owned and Google-managed encryption key (Standardeinstellung) oder Cloud KMS-Schlüssel aus, um Arbeitslastdaten mit einem kundenverwalteten Verschlüsselungsschlüssel (CMEK) zu verschlüsseln.

    • Sitzungslebenszyklus: Konfigurieren Sie Limits für die automatische Beendigung von Sitzungen:

      • Maximale Inaktivitätszeit: optional. Geben Sie eine Maximale Inaktivitätszeit ein und wählen Sie eine Einheit für die maximale Inaktivitätszeit in seconds, minutes, hours oder days aus, von 10 Minuten bis 330 Stunden, um anzugeben, wie lange eine Notebook-Sitzung inaktiv bleiben kann, bevor sie automatisch beendet wird.

      • Maximale Sitzungsdauer: optional. Geben Sie eine Menge für die maximale Sitzungsdauer ein und wählen Sie eine Einheit für die maximale Sitzungsdauer in seconds, minutes, hours oder days aus, von 10 Minuten bis 330 Stunden, um die maximale Lebensdauer einer Sitzung anzugeben.

    • Weitere Anpassungen: Fügen Sie benutzerdefinierte Spark-Attribute und Ressourcenlabels hinzu:

      • Spark-Attribute: Optional. Klicken Sie auf Attribut hinzufügen und geben Sie Schlüssel- und Wert-Paare für benutzerdefinierte Spark-Attribute ein. Attribute, die über dedizierte Felder im Formular gesteuert werden (z. B. Rechenstufe, Executor- und Treibergröße, Lightning Engine, spark.dynamicAllocation.* und Lakehouse-Katalogattribute), werden über diese Felder verwaltet und sind in der Liste im freien Format ausgeblendet. Geben Sie in der Google Cloud Konsole nicht das Präfix spark: an.

      • Labels: Optional. Klicken Sie auf Label hinzufügen und geben Sie Paare aus Schlüssel und Wert ein, um dem Laufzeitprofil Labels hinzuzufügen.

  5. Sehen Sie sich die Konfigurationsdetails auf der Karte Zusammenfassung und die geschätzte Nutzung von Datenrecheneinheiten (Data Compute Units, DCUs) auf der Karte Preisschätzung auf der rechten Seite an. Weitere Informationen zu DCU-Gebühren finden Sie unter Preise für Managed Service for Apache Spark.

  6. Klicken Sie auf Erstellen.

gcloud

In der gcloud CLI werden Laufzeitprofile als Sitzungsvorlagen verwaltet. Sie können ein Managed Service for Apache Spark-Laufzeitprofil nicht direkt mit einem create-Befehl in der gcloud CLI erstellen. Sie können jedoch den Befehl gcloud beta dataproc session-templates import verwenden, um ein Laufzeitprofil aus einer YAML-Konfigurationsdatei zu erstellen oder zu aktualisieren. Sie können ein vorhandenes Laufzeitprofil auch mit dem Befehl gcloud beta dataproc session-templates export exportieren.

REST

In der Managed Service for Apache Spark API werden Laufzeitprofile durch SessionTemplate-Ressourcen dargestellt. Sie können die Managed Service for Apache Spark-API-Methode sessionTemplates.create verwenden, um ein Managed Service for Apache Spark-Laufzeitprofil zu erstellen. Konfigurieren Sie die folgenden Anfragefelder: