Wenn Sie das Dataproc-Cluster-Caching aktivieren, werden Cloud Storage-Daten, auf die Ihre Spark-Jobs häufig zugreifen, im Cluster im Cache gespeichert.
Vorteile
- Verbesserte Leistung:Durch Caching kann die Jobleistung verbessert werden, da das Abrufen von Daten aus dem Speicher weniger Zeit in Anspruch nimmt.
- Geringere Speicherkosten: Da Hot-Daten im Cache auf dem lokalen Laufwerk gespeichert werden, werden weniger API-Aufrufe an den Speicher zum Abrufen von Daten gesendet.
Beschränkungen und Anforderungen
- Das Caching gilt nur für Dataproc-Spark-Jobs.
- Es werden nur Cloud Storage-Daten im Cache gespeichert.
- Das Caching gilt nur für Cluster, die die folgenden Anforderungen erfüllen:
- Der Cluster hat einen Master und
n
Worker. Hochverfügbarkeitscluster (HA) und Cluster mit einem einzelnen Knoten werden nicht unterstützt. - Diese Funktion ist in Dataproc in der Compute Engine mit Image-Versionen
2.0.72+ or 2.1.20+
verfügbar. - Jeder Clusterknoten muss lokale SSDs mit der NVMe (Non-Volatile Memory Express)-Schnittstelle haben. Nichtflüchtige Laufwerke (Persistent Disks, PDs) werden nicht unterstützt. Daten werden nur auf lokalen NVME-SSDs im Cache gespeichert.
- Der Cluster verwendet das Standarddienstkonto der VM für die 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 Dataproc-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 in der Compute Engine erstellen von Dataproc.
- Der Bereich Cluster einrichten ist ausgewählt. Wählen Sie im Abschnitt Spark-Leistungsoptimierungen die Option Google Cloud Storage-Caching aktivieren aus.
- Nachdem Sie die Clusterdetails in den entsprechenden Bereichen bestätigt und angegeben haben, klicken Sie auf Erstellen.
gcloud-CLI
Führen Sie den Befehl gcloud dataproc clusters create lokal in einem Terminalfenster oder in Cloud Shell mit der dataproc:dataproc.cluster.caching.enabled=true
Clustereigenschaft 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 die "dataproc:dataproc.cluster.caching.enabled": "true"
als Clustereigenschaft in einer clusters.create-Anfrage enthalten ist.