Die Vorlage "Spanner für Cloud Storage Text" ist eine Batchpipeline, die Daten aus einer Spanner-Tabelle einliest und als CSV-Textdateien in Cloud Storage schreibt.
Pipelineanforderungen
- Die Spanner-Tabelle mit den Eingabedaten muss vorhanden sein, bevor Sie die Pipeline ausführen.
Vorlagenparameter
Erforderliche Parameter
- spannerTable: Die Spanner-Tabelle, aus der die Daten gelesen werden sollen.
- spannerProjectId: Die ID des Google Cloud-Projekts, das die Spanner-Datenbank enthält, aus der Daten gelesen werden sollen.
- spannerInstanceId: Die Instanz-ID der angeforderten Tabelle.
- spannerDatabaseId: Die Datenbank-ID der angeforderten Tabelle.
- textWritePrefix Das Cloud Storage-Pfadpräfix, das angibt, wohin die Daten geschrieben werden. Beispiel:
gs://mybucket/somefolder/.
Optionale Parameter
- csvTempDirectory: Der Cloud Storage-Pfad, in den temporäre CSV-Dateien geschrieben werden. Beispiel:
gs://your-bucket/your-path. - spannerPriority: Die Anfragepriorität (https://cloud.google.com/spanner/docs/reference/rest/v1/RequestOptions) für Spanner-Aufrufe. Mögliche Werte sind
HIGH,MEDIUMundLOW. Der Standardwert istMEDIUM. - spannerHost: Der Cloud Spanner-Endpunkt, der in der Vorlage aufgerufen werden soll. Wird nur zum Testen verwendet. Beispiel:
https://batch-spanner.googleapis.com. Die Standardeinstellung ist https://batch-spanner.googleapis.com. - spannerSnapshotTime: Der Zeitstempel, der der Version der Spanner-Datenbank entspricht, aus der Sie lesen möchten. Der Zeitstempel muss im Format RFC 3339 (https://tools.ietf.org/html/rfc3339) UTC Zulu Time angegeben werden. Der Zeitstempel muss in der Vergangenheit liegen und die maximale Zeitstempelveralterung (https://cloud.google.com/spanner/docs/timestamp-bounds#maximum_timestamp_staleness) gilt. Beispiel:
1990-12-31T23:59:60ZDie Standardeinstellung ist leer. - dataBoostEnabled: Legen Sie
truefest, damit die Rechenressourcen von Spanner Data Boost verwendet werden, um den Job praktisch ohne Auswirkungen auf Spanner OLTP-Workflows auszuführen. Wenn „true“ festgelegt ist, ist die IAM-Berechtigung (Identity and Access Management)spanner.databases.useDataBoosterforderlich. Weitere Informationen finden Sie in der Data Boost-Übersicht (https://cloud.google.com/spanner/docs/databoost/databoost-overview). Die Standardeinstellung ist "false".
Führen Sie die Vorlage aus.
Console
- Rufen Sie die Dataflow-Seite Job aus Vorlage erstellen auf. Zur Seite "Job aus Vorlage erstellen“
- Geben Sie im Feld Jobname einen eindeutigen Jobnamen ein.
- Optional: Wählen Sie für Regionaler Endpunkt einen Wert aus dem Drop-down-Menü aus. Die Standardregion ist
us-central1.Eine Liste der Regionen, in denen Sie einen Dataflow-Job ausführen können, finden Sie unter Dataflow-Standorte.
- Wählen Sie im Drop-down-Menü Dataflow-Vorlage die Option the Cloud Spanner to Text Files on Cloud Storage templateaus.
- Geben Sie Ihre Parameterwerte in die Parameterfelder ein.
- Klicken Sie auf Job ausführen.
gcloud
Führen Sie die Vorlage in der Shell oder im Terminal aus:
gcloud dataflow jobs run JOB_NAME \ --gcs-location gs://dataflow-templates-REGION_NAME/VERSION/Spanner_to_GCS_Text \ --region REGION_NAME \ --parameters \ spannerProjectId=SPANNER_PROJECT_ID,\ spannerDatabaseId=DATABASE_ID,\ spannerInstanceId=INSTANCE_ID,\ spannerTable=TABLE_ID,\ textWritePrefix=gs://BUCKET_NAME/output/
Ersetzen Sie Folgendes:
JOB_NAME: Ein eindeutiger Jobname Ihrer WahlVERSION: Die Version der Vorlage, die Sie verwenden möchtenSie können die folgenden Werte verwenden:
latestzur Verwendung der neuesten Version der Vorlage, die im nicht datierten übergeordneten Ordner im Bucket verfügbar ist: gs://dataflow-templates-REGION_NAME/latest/- Den Versionsnamen wie
2023-09-12-00_RC00, um eine bestimmte Version der Vorlage zu verwenden. Diese ist verschachtelt im jeweiligen datierten übergeordneten Ordner im Bucket enthalten: gs://dataflow-templates-REGION_NAME/.
REGION_NAME: die Region, in der Sie Ihren Dataflow-Job bereitstellen möchten, z. B.us-central1SPANNER_PROJECT_ID: die Google Cloud Projekt-ID der Spanner-Datenbank, aus der Sie Daten lesen möchtenDATABASE_ID: Die Spanner-Datenbank-IDBUCKET_NAME: der Name Ihres Cloud Storage-BucketsINSTANCE_ID: Die Spanner-Instanz-IDTABLE_ID: Die Spanner-Tabellen-ID
API
Senden Sie eine HTTP-POST-Anfrage, um die Vorlage mithilfe der REST API auszuführen. Weitere Informationen zur API und ihren Autorisierungsbereichen finden Sie unter projects.templates.launch.
POST https://dataflow.googleapis.com/v1b3/projects/PROJECT_ID/locations/LOCATION/templates:launch?gcsPath=gs://dataflow-templates-LOCATION/VERSION/Spanner_to_GCS_Text { "jobName": "JOB_NAME", "parameters": { "spannerProjectId": "SPANNER_PROJECT_ID", "spannerDatabaseId": "DATABASE_ID", "spannerInstanceId": "INSTANCE_ID", "spannerTable": "TABLE_ID", "textWritePrefix": "gs://BUCKET_NAME/output/" }, "environment": { "zone": "us-central1-f" } }
Ersetzen Sie Folgendes:
PROJECT_ID: Die Google Cloud Projekt-ID, in der Sie den Dataflow-Job ausführen möchtenJOB_NAME: Ein eindeutiger Jobname Ihrer WahlVERSION: Die Version der Vorlage, die Sie verwenden möchtenSie können die folgenden Werte verwenden:
latestzur Verwendung der neuesten Version der Vorlage, die im nicht datierten übergeordneten Ordner im Bucket verfügbar ist: gs://dataflow-templates-REGION_NAME/latest/- Den Versionsnamen wie
2023-09-12-00_RC00, um eine bestimmte Version der Vorlage zu verwenden. Diese ist verschachtelt im jeweiligen datierten übergeordneten Ordner im Bucket enthalten: gs://dataflow-templates-REGION_NAME/.
LOCATION: die Region, in der Sie Ihren Dataflow-Job bereitstellen möchten, z. B.us-central1SPANNER_PROJECT_ID: die Google Cloud Projekt-ID der Spanner-Datenbank, aus der Sie Daten lesen möchtenDATABASE_ID: Die Spanner-Datenbank-IDBUCKET_NAME: der Name Ihres Cloud Storage-BucketsINSTANCE_ID: Die Spanner-Instanz-IDTABLE_ID: Die Spanner-Tabellen-ID
Nächste Schritte
- Dataflow-Vorlagen
- Sehen Sie sich die Liste der von Google bereitgestellten Vorlagen an.