Mit dem Managed Service for Apache Spark-Cluster-Caching können Sie die Jobausführung beschleunigen, indem Sie häufig abgerufene Cloud Storage-Daten lokal auf Clusterknoten speichern. Dieser lokale Cache reduziert die Leselatenz und minimiert Cloud Storage API-Anfragen für wiederkehrende Arbeitslasten.
Wenn Sie das Caching für Managed Service for Apache Spark-Cluster aktivieren, speichert der Cluster Cloud Storage-Daten, auf die Ihre Spark-Jobs häufig zugreifen, im Cache.
Vorteile
- Verbesserte Leistung: Das Caching kann die Jobleistung verbessern, da weniger Zeit für das Abrufen von Daten aus dem Speicher aufgewendet werden muss.
- Reduzierte Speicherkosten: Da häufig verwendete Daten auf dem lokalen Laufwerk im Cache gespeichert werden, werden weniger API-Aufrufe an den Speicher gesendet, um Daten abzurufen.
- Anwendbarkeit auf Spark-Jobs: Wenn das Cluster-Caching für einen Cluster aktiviert ist, gilt es für alle Spark-Jobs, die im Cluster ausgeführt werden, unabhängig davon, ob sie an den Managed Service for Apache Spark gesendet oder unabhängig im Cluster ausgeführt werden.
Beschränkungen und Anforderungen
- Das Caching gilt nur für Managed Service for Apache Spark-Jobs.
- Es werden nur Cloud Storage-Daten im Cache gespeichert.
- Caching gilt nur für Cluster, die die folgenden Anforderungen erfüllen:
- Der Cluster hat einen Master und
nWorker (Hochverfügbarkeits- und Einzelknotencluster werden nicht unterstützt). - Dieses Feature ist in den Image-Versionen
2.0.72+,2.1.20+und2.2.0+von Managed Service for Apache Spark verfügbar. - An jeden Clusterknoten müssen lokale SSDs mit der NVME-Schnittstelle (Non-Volatile Memory Express) angehängt sein. Nichtflüchtige Speicher (Persistent Disks, PDs) werden nicht unterstützt. Daten werden nur auf lokalen NVME-SSDs im Cache gespeichert.
- Der Cluster verwendet das VM-Standarddienstkonto zur Authentifizierung. Benutzerdefinierte VM-Dienstkonten werden nicht unterstützt.
- Der Cluster hat einen Master und
Cluster-Caching aktivieren
Sie können das Cluster-Caching aktivieren, wenn Sie einen Managed Service for Apache Spark-Cluster über die Google Cloud Console, die Google Cloud CLI oder die Dataproc API erstellen.
Google Cloud Console
- Öffnen Sie in der Google Cloud Console die Seite Cluster erstellen.
- Klicken Sie auf Zusätzliche Konfiguration, um den Bereich zu maximieren.
- Bearbeiten Sie Anpassung und Sonstiges.
- Klicken Sie im Bereich Clustereigenschaften des geöffneten Bereichs auf + Eigenschaften hinzufügen.
- Wählen Sie in der Liste Präfix die Option dataproc aus und fügen Sie dann den Schlüssel
dataproc.cluster.caching.enabledund den Werttruehinzu.
gcloud-CLI
Führen Sie den Befehl gcloud dataproc clusters create lokal in einem Terminalfenster oder in Cloud Shell mit der Cluster-Property dataproc:dataproc.cluster.caching.enabled=true aus.
Beispiel:
gcloud dataproc clusters create CLUSTER_NAME \ --region=REGION \ --properties dataproc:dataproc.cluster.caching.enabled=true \ --num-master-local-ssds=2 \ --master-local-ssd-interface=NVME \ --num-worker-local-ssds=2 \ --worker-local-ssd-interface=NVME \ other args ...
REST API
Legen Sie SoftwareConfig.properties so fest, dass das Clusterattribut "dataproc:dataproc.cluster.caching.enabled": "true" als Teil einer clusters.create-Anfrage enthalten ist.