Wenn Sie einen Cluster erstellen, wird HDFS als Standard-Dateisystem verwendet. Sie können dieses Verhalten überschreiben, indem Sie den StandardFS als Cloud Storage-Bucket festlegen. Standardmäßig erstellt Dataproc auch ein Cloud Storage-Staging und einen temporären Cloud Storage-Bucket in Ihrem Projekt oder verwendet vorhandene von Dataproc erstellte Staging- und temporäre Buckets aus vorherigen Anfragen zur Clustererstellung wieder.
Staging-Bucket: Wird zum Staging von Clusterjob-Abhängigkeiten, Job-Treiberausgabe und Clusterkonfigurationsdateien verwendet. Es wird auch eine Ausgabe vom gcloud-Befehl gcloud dataproc clusters diagnose empfangen.
Temporärer Bucket: Wird zum Speichern sitzungsspezifischer Cluster- und Jobdaten wie Spark- und MapReduce-Verlaufsdateien verwendet.
Wenn Sie beim Erstellen eines Clusters keinen Staging- oder temporären Bucket angeben, legt Dataproc einen Cloud Storage-Speicherort in den USA, ASIEN oder der EU für die Staging- und temporären Buckets Ihres Clusters fest, entsprechend der Compute Engine-Zone, in der Ihr Cluster bereitgestellt wird. Danach werden diese Buckets auf Projektebene pro Speicherort erstellt und verwaltet. Von Dataproc erstellte Staging- und temporäre Buckets werden von Clustern in derselben Region gemeinsam genutzt. Die Aufbewahrungsdauer für das vorläufige Löschen in Cloud Storage ist auf 0 Sekunden festgelegt.
Der temporäre Bucket enthält sitzungsspezifische Daten und hat eine Gültigkeitsdauer von 90 Tagen. Der Staging-Bucket, der Konfigurationsdaten und Abhängigkeitsdateien enthalten kann, die von mehreren Clustern benötigt werden, hat keine TTL. Sie können jedoch eine Lebenszyklusregel auf Ihre Abhängigkeitsdateien anwenden (Dateien mit der Dateiendung „.jar“ im Staging-Bucket-Ordner), um das Entfernen Ihrer Abhängigkeitsdateien zu planen, wenn sie von Ihren Clustern nicht mehr benötigt werden.
Eigene Staging- und temporäre Buckets erstellen
Anstatt auf die Erstellung eines standardmäßigen Staging- und temporären Buckets zu warten, können Sie vorhandene Cloud Storage-Buckets angeben, die Dataproc als Staging- und temporären Bucket Ihres Clusters verwendet.
gcloud-Befehl
Führen Sie den Befehl gcloud dataproc clusters create
mit den Flags --bucket
und/oder --temp-bucket
lokal in einem Terminalfenster oder in Cloud Shell aus, um den Staging- und/oder temporären Bucket Ihres Clusters anzugeben.
gcloud dataproc clusters create cluster-name \ --region=region \ --bucket=bucket-name \ --temp-bucket=bucket-name \ other args ...
REST API
Verwenden Sie die Felder ClusterConfig.configBucket
und ClusterConfig.tempBucket
in einer clusters.create-Anfrage zur Angabe der Staging- und temporären Buckets Ihres Clusters.
Console
Öffnen Sie in der Google Cloud Console die Dataproc-Seite Cluster erstellen. Wählen Sie das Feld „Cluster anpassen“ aus und geben Sie dann mit dem Feld „Dateispeicher“ den Staging-Bucket des Clusters an oder wählen Sie ihn aus.
Hinweis: Derzeit wird die Angabe eines temporären Buckets mithilfe der Google Cloud Console nicht unterstützt.
Dataproc verwendet eine definierte Ordnerstruktur für Cloud Storage-Buckets, die Clustern zugeordnet sind. Dataproc unterstützt auch das Hinzufügen weiterer Cluster zu einem Cloud Storage-Bucket. Zum Speichern von Job-Treiberausgaben in Cloud Storage wird folgende Ordnerstruktur verwendet:
cloud-storage-bucket-name - google-cloud-dataproc-metainfo - list of cluster IDs - list of job IDs - list of output logs for a job
Sie können mit dem gcloud
-Befehlszeilentool, der Dataproc API oder der Google Cloud Console den Namen des Staging- und des temporären Buckets eines Clusters auflisten.
Console
- Rufen Sie in der Google Cloud Console auf der Dataproc-Seite Cluster die Clusterdetails auf, einschließlich des Namens des Staging-Buckets des Clusters.
- Filtern Sie in der Google Cloud Console auf der Seite Cloud Storage-Browser nach Ergebnissen, die „dataproc-temp-“ enthalten.
gcloud-Befehl
Führen Sie den gcloud dataproc clusters describe
-Befehl lokal in einem Terminalfenster oder in Cloud Shell aus.
Die mit dem Cluster verknüpften Staging- und temporären Buckets werden in der Ausgabe aufgeführt.
gcloud dataproc clusters describe cluster-name \ --region=region \ ... clusterName: cluster-name clusterUuid: daa40b3f-5ff5-4e89-9bf1-bcbfec ... config: configBucket: dataproc-... ... tempBucket: dataproc-temp...
REST API
Rufen Sie clusters.get auf, um die Clusterdetails einschließlich des Namens der Staging- und temporären Buckets des Clusters aufzulisten.
{ "projectId": "vigilant-sunup-163401", "clusterName": "cluster-name", "config": { "configBucket": "dataproc-...", ... "tempBucket": "dataproc-temp-...", }
defaultFS
Sie können core:fs.defaultFS
auf einen Bucket-Speicherort in Cloud Storage (gs://defaultFS-bucket-name
) festlegen, um Cloud Storage als Standarddateisystem festzulegen. Dadurch wird auch core:fs.gs.reported.permissions
festgelegt, die vom Cloud Storage-Connector zurückgegebene Berechtigung für alle Dateien auf 777
.
Wenn Cloud Storage nicht als Standarddateisystem festgelegt ist, wird HDFS verwendet und das Attribut core:fs.gs.reported.permissions
gibt den Standardwert 700
zurück.
gcloud dataproc clusters create cluster-name \ --properties=core:fs.defaultFS=gs://defaultFS-bucket-name \ --region=region \ --bucket=staging-bucket-name \ --temp-bucket=temp-bucket-name \ other args ...