Die Vorlage "Cloud Bigtable für Cloud Storage Parquet" ist eine Pipeline, die Daten aus einer Bigtable-Tabelle liest und in einen Cloud Storage-Bucket im Parquet-Format schreibt. Sie können die Vorlage verwenden, um Daten von Bigtable in Cloud Storage zu verschieben.
Pipelineanforderungen
- Die Bigtable-Tabelle muss vorhanden sein.
- Der Cloud Storage-Ausgabe-Bucket muss vorhanden sein, bevor Sie die Pipeline ausführen.
Vorlagenparameter
Erforderliche Parameter
- bigtableProjectId: Die ID des Cloud-Projekts der Cloud Bigtable-Instanz, aus der Sie Daten lesen möchten.
- bigtableInstanceId: Die ID der Cloud Bigtable-Instanz, die die Tabelle enthält.
- bigtableTableId: Die ID der zu exportierenden Cloud Bigtable-Tabelle.
- outputDirectory: Das Pfad- und Dateinamenpräfix zum Schreiben von Ausgabedateien. Muss mit einem Schrägstrich enden. Die DateTime-Formatierung wird verwendet, um den Verzeichnispfad für Datums- und Uhrzeit-Formatierer zu parsen. Beispiel: gs://Ihr-Bucket/Ihr-Pfad.
- filenamePrefix: Das Präfix des Parquet-Dateinamens. "table1-" wird beispielsweise standardmäßig zu: part.
Optionale Parameter
- numShards: Die maximale Anzahl von Ausgabe-Shards, die beim Schreiben erzeugt werden. Eine höhere Anzahl von Shards erhöht den Durchsatz für das Schreiben in Cloud Storage, aber möglicherweise auch höhere Kosten für die Datenaggregation über Shards bei der Verarbeitung von Cloud Storage-Ausgabedateien. Der Standardwert wird von Dataflow festgelegt.
- bigtableAppProfileId : Die ID des Bigtable-Anwendungsprofils, das für den Export verwendet werden soll. Wenn Sie kein Anwendungsprofil angeben, verwendet Bigtable das Standardanwendungsprofil der Instanz: https://cloud.google.com/bigtable/docs/app-profiles#default-app-profile.
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 Bigtable to Parquet 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/Cloud_Bigtable_to_GCS_Parquet \ --region REGION_NAME \ --parameters \ bigtableProjectId=BIGTABLE_PROJECT_ID,\ bigtableInstanceId=INSTANCE_ID,\ bigtableTableId=TABLE_ID,\ outputDirectory=OUTPUT_DIRECTORY,\ filenamePrefix=FILENAME_PREFIX,\ numShards=NUM_SHARDS
Ersetzen Sie dabei Folgendes:
JOB_NAME
: ein eindeutiger Jobname Ihrer WahlVERSION
: Die Version der Vorlage, die Sie verwenden möchtenSie können die folgenden Werte verwenden:
latest
zur 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-central1
BIGTABLE_PROJECT_ID
: Die ID des Google Cloud-Projekts der Bigtable-Instanz, aus der Sie Daten lesen möchten.INSTANCE_ID
: Die ID der Bigtable-Instanz, die die Tabelle enthält.TABLE_ID
: Die ID der zu exportierenden Bigtable-Tabelle.OUTPUT_DIRECTORY
: Der Cloud Storage-Pfad, in den Daten geschrieben werden, z. B.gs://mybucket/somefolder
FILENAME_PREFIX
: Das Präfix des Parquet-Dateinamens, z. B.output-
NUM_SHARDS
: Die Anzahl der auszugebenden Parquet-Dateien, z. B.1
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/Cloud_Bigtable_to_GCS_Parquet { "jobName": "JOB_NAME", "parameters": { "bigtableProjectId": "BIGTABLE_PROJECT_ID", "bigtableInstanceId": "INSTANCE_ID", "bigtableTableId": "TABLE_ID", "outputDirectory": "OUTPUT_DIRECTORY", "filenamePrefix": "FILENAME_PREFIX", "numShards": "NUM_SHARDS" }, "environment": { "zone": "us-central1-f" } }
Ersetzen Sie dabei Folgendes:
PROJECT_ID
: die ID des Google Cloud-Projekts, in dem 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:
latest
zur 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-central1
BIGTABLE_PROJECT_ID
: Die ID des Google Cloud-Projekts der Bigtable-Instanz, aus der Sie Daten lesen möchten.INSTANCE_ID
: Die ID der Bigtable-Instanz, die die Tabelle enthält.TABLE_ID
: Die ID der zu exportierenden Bigtable-Tabelle.OUTPUT_DIRECTORY
: Der Cloud Storage-Pfad, in den Daten geschrieben werden, z. B.gs://mybucket/somefolder
FILENAME_PREFIX
: Das Präfix des Parquet-Dateinamens, z. B.output-
NUM_SHARDS
: Die Anzahl der auszugebenden Parquet-Dateien, z. B.1
Nächste Schritte
- Dataflow-Vorlagen
- Sehen Sie sich die Liste der von Google bereitgestellten Vorlagen an.