Dataplex Universal Catalog bietet Vorlagen, die auf Dataflow basieren, um häufige Datenverarbeitungsaufgaben wie Datenaufnahme, -verarbeitung und Verwaltung des Datenlebenszyklus auszuführen. In diesem Leitfaden wird beschrieben, wie Sie Vorlagen für die Datenverarbeitung konfigurieren und ausführen.
Hinweise
Dataplex Universal Catalog-Vorlagen basieren auf Dataflow. Bevor Sie Vorlagen verwenden, müssen Sie die Dataflow APIs aktivieren.
Wichtige Hinweise:
Alle Vorlagen unterstützen allgemeine Dataflow-Pipelineoptionen.
Dataplex Universal Catalog verwendet Data Pipelines, um die durch die Vorlagen definierten Aufgaben zu planen.
Auf der Seite Dataplex Universal Catalog in der Google Cloud -Konsole können Sie nur Aufgaben sehen, die Sie über Dataplex Universal Catalog geplant haben.
Vorlage: Rohdaten in ausgewählte Daten umwandeln
Mit der Vorlage zur Konvertierung von Dateiformaten für Dataplex Universal Catalog werden Daten in einem Cloud Storage-Asset für Dataplex Universal Catalog oder einer Liste von Dataplex Universal Catalog-Entitäten, die in CSV- oder JSON-Formaten gespeichert sind, in Daten im Parquet- oder Avro-Format in einem anderen Dataplex Universal Catalog-Asset konvertiert. Das Partitionslayout wird bei der Konvertierung beibehalten. Außerdem wird die Komprimierung der Ausgabedateien unterstützt.
Vorlagenparameter
Parameter | Beschreibung |
---|---|
inputAssetOrEntitiesList |
Das Dataplex Universal Catalog-Asset oder die Dataplex Universal Catalog-Entitäten, die die Eingabedateien enthalten. Dieser Parameter muss das folgende Format haben:
projects/<name>/locations/<loc>/lakes/<lake-name>/zones/<zone-name>/assets/<asset-name>
oder projects/<name>/locations/<loc>/lakes/<lake-name>/zones/<zone-name>/entities/<entity1-name>,projects/<name>/locations/<loc>/lakes/<lake-name>/zones/<zone-name>/entities/<entity 2 name>... |
outputFileFormat |
Das Ausgabedateiformat in Cloud Storage. Dieser Parameter muss das Format PARQUET oder AVRO haben. |
outputAsset |
Der Name des Dataplex Universal Catalog-Assets, das den Cloud Storage-Bucket enthält, in dem Ausgabedateien gespeichert werden. Dieser Parameter muss das Format projects/<name>/locations/<loc>/lakes/<lake-name>/zones/<zone-name>/assets/<asset-name> haben. Sie finden die outputAsset in der Google Cloud -Console auf dem Tab Details des Dataplex Universal Catalog-Assets. |
outputFileCompression |
Optional: Die Komprimierung der Ausgabedatei. Der Standardwert für diesen Parameter ist SNAPPY . Andere Werte für den Parameter können UNCOMPRESSED , SNAPPY , GZIP oder BZIP2 sein. BZIP2 wird für PARQUET -Dateien nicht unterstützt. |
writeDisposition |
Optional: Gibt die Aktion an, die ausgeführt wird, wenn eine Zieldatei bereits vorhanden ist. Der Standardwert für diesen Parameter ist SKIP . Damit werden nur Dateien verarbeitet, die nicht im Zielverzeichnis vorhanden sind. Andere Werte für den Parameter können OVERWRITE (alle vorhandenen Dateien überschreiben) oder FAIL (nichts verarbeiten und einen Fehler ausgeben, wenn mindestens eine Zieldatei bereits vorhanden ist) sein. |
updateDataplexMetadata |
Optional: Gibt an, ob die Metadaten von Dataplex Universal Catalog für die neu erstellten Entitäten aktualisiert werden sollen. Der Standardwert für diesen Parameter ist Wenn diese Option aktiviert ist, wird das Schema automatisch von der Quelle in die Dataplex-Zielentitäten kopiert und die automatische Dataplex Universal Catalog-Erkennung wird für diese nicht ausgeführt. Verwenden Sie dieses Flag, wenn das Schema der Quelldaten (Rohdaten) von Dataplex verwaltet wird. |
Führen Sie die Vorlage aus.
Console
Rufen Sie in der Google Cloud -Console die Seite Dataplex Universal Catalog auf.
Rufen Sie die Ansicht Prozess auf.
Klicken Sie auf Aufgabe erstellen.
Klicken Sie unter In ausgewählte Formate konvertieren auf Aufgabe erstellen.
Wählen Sie einen Dataplex Universal Catalog-Lake aus.
Geben Sie einen Namen für die Aufgabe an.
Wählen Sie eine Region für die Ausführung von Aufgaben aus.
Geben Sie die erforderlichen Parameter ein.
Klicken Sie auf Weiter.
gcloud
Führen Sie die Vorlage in der Shell oder im Terminal aus:
gcloud beta dataflow flex-template run JOB_NAME \ --project=PROJECT_ID \ --region=REGION_NAME \ --template-file-gcs-location=gs://dataflow-templates-REGION_NAME/latest/flex/Dataplex_File_Format_Conversion_Preview \ --parameters \ inputAssetOrEntitiesList=INPUT_ASSET_OR_ENTITIES_LIST,\ outputFileFormat=OUTPUT_FILE_FORMAT,\ outputAsset=OUTPUT_ASSET
Ersetzen Sie Folgendes:
JOB_NAME: a job name of your choice PROJECT_ID: your template project ID REGION_NAME: region in which to run the job INPUT_ASSET_OR_ENTITIES_LIST: path to your JDBC drivers OUTPUT_FILE_FORMAT: your output file format in Cloud Storage OUTPUT_ASSET: your Dataplex Universal Catalog output asset ID
REST
Senden Sie eine HTTP-POST-Anfrage:
POST https://dataflow.googleapis.com/v1b3/projects/PROJECT_ID/locations/REGION_NAME/flexTemplates:launch { "launch_parameter": { "jobName": "JOB_NAME", "parameters": { "inputAssetOrEntitiesList": "INPUT_ASSET_OR_ENTITIES_LIST", "outputFileFormat": "OUTPUT_FILE_FORMAT", "outputAsset": "OUTPUT_ASSET", }, "containerSpecGcsPath": "gs://dataflow-templates-REGION_NAME/latest/flex/Dataplex_File_Format_Conversion_Preview", } }
Ersetzen Sie Folgendes:
PROJECT_ID: your template project ID REGION_NAME: region in which to run the job JOB_NAME: a job name of your choice INPUT_ASSET_OR_ENTITIES_LIST: path to your JDBC drivers OUTPUT_FILE_FORMAT: your output file format in Cloud Storage OUTPUT_ASSET: your Dataplex Universal Catalog output asset ID
Vorlage: Daten aus einem BigQuery-Asset in ein Cloud Storage-Asset verschieben
Mit der Vorlage „Dataplex Universal Catalog BigQuery zu Cloud Storage“ werden Daten aus einem Dataplex Universal Catalog-BigQuery-Asset in ein Dataplex Universal Catalog-Cloud Storage-Asset in einem mit Dataplex Universal Catalog kompatiblen Layout und Format kopiert. Sie können ein BigQuery-Dataset oder eine Liste von BigQuery-Tabellen angeben, die kopiert werden sollen. Für zusätzliche Flexibilität können Sie mit der Vorlage Daten kopieren, die älter als ein bestimmtes Änderungsdatum sind, und Daten nach dem Kopieren optional aus BigQuery löschen.
Beim Kopieren partitionierter Tabellen aus BigQuery nach Cloud Storage gilt Folgendes:
- Mit der Vorlage werden Partitionen im Hive-Stil im Cloud Storage-Bucket erstellt.
Der Hive-Partitionsschlüssel in BigQuery darf nicht mit einer vorhandenen Spalte identisch sein. Mit der Option
enforceSamePartitionKey
können Sie entweder einen neuen Partitionsschlüssel erstellen oder den vorhandenen Partitionsschlüssel beibehalten, aber die vorhandene Spalte umbenennen. - Bei der Erkennung im Dataplex Universal Catalog wird der Partitionstyp als
string
registriert, wenn eine BigQuery-Tabelle (und eine Tabelle im Dataproc-Metastore) erstellt wird. Das kann sich auf Ihre vorhandenen Partitionsfilter auswirken.
Die Anzahl der Tabellen und Partitionen, die in einem einzelnen Vorlagendurchlauf transformiert werden können, ist auf etwa 300 begrenzt. Die genaue Anzahl hängt von der Länge der Tabellennamen und anderen Faktoren ab.
Vorlagenparameter
Parameter | Beschreibung |
---|---|
sourceBigQueryDataset |
Das BigQuery-Dataset, aus dem Daten in eine andere Speicherebene verschoben werden sollen. Dieser Parameter muss entweder einen Dataplex Universal Catalog-Asset-Namen im Format projects/<name>/locations/<loc>/lakes/<lake-name>/zones/<zone-name>/assets/<asset-name> oder eine BigQuery-Dataset-ID im Format projects/<name>/datasets/<dataset-id> enthalten. |
destinationStorageBucketAssetName |
Der Name des Dataplex Universal Catalog-Assets für den Cloud Storage-Bucket, in den Daten verschoben werden sollen. Dieser Parameter muss dem Format projects/<name>/locations/<loc>/lakes/<lake-name>/zones/<zone-name>/assets/<asset-name> entsprechen. |
tables |
Optional: Eine durch Kommas getrennte Liste von BigQuery-Tabellen, die in Ebenen eingeteilt werden sollen. Wenn keine Liste angegeben ist, werden alle Tabellen in Stufen eingeteilt. Tabellen müssen nur mit ihrem Namen angegeben werden (kein Projekt- oder Dataset-Präfix) und bei Tabellennamen wird die Groß-/Kleinschreibung berücksichtigt. |
exportDataModifiedBeforeDateTime |
Optional: Mit diesem Parameter können Sie Daten verschieben, die älter als dieses Datum (und optional diese Uhrzeit) sind. Bei partitionierten BigQuery-Tabellen werden Partitionen verschoben, die vor diesem Datum/Uhrzeit zuletzt geändert wurden. Bei nicht partitionierten Tabellen wird die Tabelle verschoben, wenn sie vor diesem Datum/Uhrzeit zuletzt geändert wurde. Wenn nicht angegeben, werden alle Tabellen/Partitionen verschoben. Das Datum/die Uhrzeit wird standardmäßig in der Standardzeitzone geparst. Die optionalen Suffixe Z und +HH:mm werden jedoch unterstützt. Dieser Parameter muss das Format YYYY-MM-DD , YYYY-MM-DDTHH:mm:ss oder YYYY-MM-DDTHH:mm:ss+03:00 haben.
Relative Datums-/Uhrzeitangaben werden ebenfalls unterstützt und müssen dem Format -PnDTnHnMn.nS entsprechen (muss mit -P beginnen, was auf eine Zeit in der Vergangenheit hinweist).
|
fileFormat |
Optional: Das Ausgabedateiformat in Cloud Storage. Der Standardwert für diesen Parameter ist PARQUET . Ein weiterer Wert für den Parameter kann AVRO sein. |
fileCompression |
Optional: Die Komprimierung der Ausgabedatei. Der Standardwert für diesen Parameter ist SNAPPY . Andere Werte für den Parameter können UNCOMPRESSED , SNAPPY , GZIP oder BZIP2 sein. BZIP2 wird für PARQUET -Dateien nicht unterstützt. |
deleteSourceData |
Optional: Gibt an, ob Quelldaten nach einem erfolgreichen Export aus BigQuery gelöscht werden sollen. Mögliche Werte sind true und false . Der Standardwert für diesen Parameter ist false . |
partitionIdRegExp |
Optional: Nur Partitionen mit einer Partitions-ID verarbeiten, die mit diesem regulären Ausdruck übereinstimmt. Wenn kein Wert angegeben ist, wird standardmäßig „Alle verarbeiten“ verwendet. |
writeDisposition |
Optional: Gibt die Aktion an, die ausgeführt wird, wenn eine Zieldatei bereits vorhanden ist, d. h., wenn eine oder mehrere Tabellen/Partitionen bereits in eine niedrigere Stufe verschoben wurden. Der Standardwert für diesen Parameter ist SKIP . Das bedeutet, dass nur Tabellen/Partitionen verarbeitet werden, die noch nicht in Tiers eingeteilt wurden. Andere Werte für den Parameter können OVERWRITE (alle vorhandenen Dateien überschreiben) oder FAIL (nichts verarbeiten und einen Fehler ausgeben, wenn mindestens eine Zieldatei bereits vorhanden ist) sein. |
enforceSamePartitionKey |
Optional: Gibt an, ob derselbe Partitionsschlüssel erzwungen werden soll. Aufgrund einer BigQuery-Einschränkung darf der Partitionsschlüssel (im Dateipfad) in einer partitionierten externen Tabelle nicht denselben Namen wie eine der Spalten in der Datei haben. Wenn dieser Parameter auf „true“ gesetzt ist (Standardwert), wird der Partitionsschlüssel der Zieldatei auf den ursprünglichen Namen der Partitionierungsspalte gesetzt und die Spalte in der Datei wird umbenannt. Wenn „false“, wird der Partitionierungsschlüssel umbenannt. Wenn die ursprüngliche Tabelle beispielsweise nach den Spalten Wenn |
updateDataplexMetadata |
Optional: Gibt an, ob die Metadaten von Dataplex Universal Catalog für die neu erstellten Entitäten aktualisiert werden sollen. Der Standardwert für diesen Parameter ist Wenn diese Option aktiviert ist, wird das Schema automatisch von der Quelle in die Dataplex-Zielentitäten kopiert und die automatische Dataplex Universal Catalog-Erkennung wird für diese nicht ausgeführt. Verwenden Sie dieses Flag, wenn Sie das Schema der BigQuery-Quelltabelle verwalten. |
Führen Sie die Vorlage aus.
Console
Rufen Sie in der Google Cloud -Console die Seite Dataplex Universal Catalog auf.
Rufen Sie die Ansicht Prozess auf.
Klicken Sie auf Aufgabe erstellen.
Klicken Sie unter Von BQ- in GCS-Assets verlagern auf Aufgabe erstellen.
Wählen Sie einen Dataplex Universal Catalog-Lake aus.
Geben Sie einen Namen für die Aufgabe an.
Wählen Sie eine Region für die Ausführung von Aufgaben aus.
Geben Sie die erforderlichen Parameter ein.
Klicken Sie auf Weiter.
gcloud
Führen Sie die Vorlage in der Shell oder im Terminal aus:
gcloud beta dataflow flex-template run JOB_NAME \ --project=PROJECT_ID \ --region=REGION_NAME \ --template-file-gcs-location=gs://dataflow-templates-REGION_NAME/latest/flex/Dataplex_BigQuery_to_GCS_Preview \ --parameters \ sourceBigQueryDataset=SOURCE_ASSET_NAME_OR_DATASET_ID,\ destinationStorageBucketAssetName=DESTINATION_ASSET_NAME
Ersetzen Sie Folgendes:
JOB_NAME: a job name of your choice PROJECT_ID: your template project ID REGION_NAME: region in which to run the job SOURCE_ASSET_NAME_OR_DATASET_ID: your Dataplex Universal Catalog asset name for the source BigQuery dataset, or the dataset ID DESTINATION_ASSET_NAME: your Dataplex Universal Catalog asset name for the destination Cloud Storage bucket
REST
Senden Sie eine HTTP-POST-Anfrage:
POST https://dataflow.googleapis.com/v1b3/projects/PROJECT_ID/locations/REGION_NAME/flexTemplates:launch { "launch_parameter": { "jobName": "JOB_NAME", "parameters": { "sourceBigQueryDataset": "SOURCE_ASSET_NAME_OR_DATASET_ID", "destinationStorageBucketAssetName": "DESTINATION_ASSET_NAME", }, "containerSpecGcsPath": "gs://dataflow-templates-REGION_NAME/latest/flex/Dataplex_BigQuery_to_GCS_Preview", } }
Ersetzen Sie Folgendes:
PROJECT_ID: your template project ID REGION_NAME: region in which to run the job JOB_NAME: a job name of your choice SOURCE_ASSET_NAME_OR_DATASET_ID: your Dataplex Universal Catalog asset name for the source BigQuery dataset, or the dataset ID DESTINATION_ASSET_NAME: your Dataplex Universal Catalog asset name for the destination Cloud Storage bucket REGION_NAME: region in which to run the job
Andere von Google Cloudbereitgestellte oder benutzerdefinierte Dataflow-Vorlagen planen
Mit Dataplex Universal Catalog können Sie alle vonGoogle Cloudbereitgestellten Dataflow-Vorlagen oder Ihre benutzerdefinierte Dataflow-Vorlage in der Konsole planen und überwachen.
Planen
Console
Rufen Sie in der Google Cloud -Console die Seite Dataplex Universal Catalog auf.
Rufen Sie die Ansicht Prozess auf.
Klicken Sie auf Aufgabe erstellen.
Klicken Sie unter Dataflow-Pipeline erstellen auf Dataflow-Pipeline erstellen.
Wählen Sie einen Dataplex Universal Catalog-Lake aus.
Geben Sie einen Namen für die Aufgabe an.
Wählen Sie eine Region für die Ausführung der Aufgabe aus.
Wählen Sie eine Dataflow-Vorlage aus.
Geben Sie die erforderlichen Parameter ein.
Klicken Sie auf Weiter.
Überwachen
Console
Rufen Sie in der Google Cloud -Console die Seite Dataplex Universal Catalog auf.
Rufen Sie die Ansicht Prozess auf.
Klicken Sie auf Dataflow-Pipelines.
Nach Lake- oder Pipelinename filtern