Dataplex bietet Vorlagen, die auf Dataflow basieren, um gängige Datenverarbeitungsaufgaben wie die 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-Vorlagen basieren auf Dataflow. Aktivieren Sie die Dataflow APIs, bevor Sie Vorlagen verwenden.
Wichtige Hinweise:
Alle Vorlagen unterstützen gängige Dataflow-Pipelineoptionen.
In Dataplex werden Datenpipelines verwendet, um die in den Vorlagen definierten Aufgaben zu planen.
Sie können nur Aufgaben sehen, die Sie über Dataplex planen, in der Google Cloud -Console auf der Seite Dataplex.
Vorlage: Rohdaten in ausgewählte Daten konvertieren
Mit der Dataplex-Vorlage für die Dateiformatkonvertierung werden Daten in einem Dataplex-Cloud Storage-Asset oder eine Liste von Dataplex-Entitäten, die im CSV- oder JSON-Format gespeichert sind, in Parquet- oder Avro-Formatdaten in einem anderen Dataplex-Asset konvertiert. Das Partitionslayout bleibt bei der Umwandlung erhalten. Außerdem wird die Komprimierung der Ausgabedateien unterstützt.
Vorlagenparameter
Parameter | Beschreibung |
---|---|
inputAssetOrEntitiesList |
Das Dataplex-Asset oder die Dataplex-Entitäten, die die Eingabedateien enthalten. Dieser Parameter muss das Format 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>... haben. |
outputFileFormat |
Das Ausgabedateiformat in Cloud Storage. Dieser Parameter muss das Format PARQUET oder AVRO haben. |
outputAsset |
Der Name des Dataplex-Assets, das den Cloud Storage-Bucket enthält, in dem die 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 „Dataplex-Asset“Details . |
outputFileCompression |
Optional: Komprimierung der Ausgabedatei. Der Standardwert für diesen Parameter ist SNAPPY . Weitere Werte für den Parameter sind UNCOMPRESSED , SNAPPY , GZIP oder BZIP2 . BZIP2 wird für PARQUET -Dateien nicht unterstützt. |
writeDisposition |
Optional: Gibt an, welche Aktion ausgeführt wird, wenn eine Zieldatei bereits vorhanden ist. Der Standardwert für diesen Parameter ist SKIP . Das bedeutet, dass nur Dateien verarbeitet werden, die im Zielverzeichnis nicht vorhanden sind. Andere Werte für den Parameter sind OVERWRITE (vorhandene Dateien überschreiben) oder FAIL (nichts verarbeiten und einen Fehler ausgeben, wenn mindestens eine Zieldatei bereits vorhanden ist). |
updateDataplexMetadata |
Optional: Gibt an, ob die Dataplex-Metadaten für die neu erstellten Entitäten aktualisiert werden sollen. Der Standardwert für diesen Parameter ist Wenn diese Option aktiviert ist, kopiert die Pipeline das Schema automatisch von der Quelle in die Ziel-Dataplex-Entitäten. Die automatische Dataplex-Erkennung wird für sie nicht ausgeführt. Verwenden Sie dieses Flag, wenn das Schema der Quell- (Roh-)Daten von Dataplex verwaltet wird. |
Führen Sie die Vorlage aus.
Console
Rufen Sie in der Google Cloud -Console die Seite Dataplex 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-Lake aus.
Geben Sie einen Aufgabennamen an.
Wählen Sie eine Region für die Aufgabenausführung aus.
Füllen Sie die erforderlichen Parameter aus.
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 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 output asset ID
Vorlage: Daten aus einem BigQuery-Asset in ein Cloud Storage-Asset tiern
Mit der Dataplex-Vorlage „BigQuery für Cloud Storage“ werden Daten aus einem Dataplex BigQuery-Asset in ein Dataplex Cloud Storage-Asset in einem Dataplex-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 mit der Vorlage Daten kopiert werden, die älter als ein bestimmtes Änderungsdatum sind. Außerdem können Daten nach einem erfolgreichen Kopiervorgang optional aus BigQuery gelöscht werden.
Beim Kopieren partitionierter Tabellen aus BigQuery in Cloud Storage gilt Folgendes:
- Mit der Vorlage werden Partitionen im Hive-Format im Cloud Storage-Bucket erstellt.
In BigQuery darf der Hive-Partitionsschlüssel nicht mit einer vorhandenen Spalte identisch sein. Mit der Option
enforceSamePartitionKey
können Sie entweder einen neuen Partitionsschlüssel erstellen oder denselben Partitionsschlüssel beibehalten, aber die vorhandene Spalte umbenennen. - Dataplex Discovery registriert den Partitionstyp als
string
, wenn eine BigQuery-Tabelle (und eine Tabelle im Dataproc Metastore) erstellt wird. Dies kann sich auf Ihre vorhandenen Partitionsfilter auswirken.
Die Anzahl der Tabellen und Partitionen, die in einem einzelnen Vorlagenlauf 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 Stufen unterteilt werden sollen. Dieser Parameter muss entweder den Namen eines Dataplex-Assets im Format projects/<name>/locations/<loc>/lakes/<lake-name>/zones/<zone-name>/assets/<asset-name> oder die ID eines BigQuery-Datasets im Format projects/<name>/datasets/<dataset-id> enthalten. |
destinationStorageBucketAssetName |
Der Name des Dataplex-Assets für den Cloud Storage-Bucket, in den Daten gespeichert werden sollen. Dieser Parameter muss das Format projects/<name>/locations/<loc>/lakes/<lake-name>/zones/<zone-name>/assets/<asset-name> haben. |
tables |
Optional: Eine durch Kommas getrennte Liste der BigQuery-Tabellen, die gruppiert werden sollen. Wenn keine Liste angegeben ist, werden alle Tabellen in Stufen unterteilt. Tabellen müssen nur mit ihrem Namen angegeben werden (kein Projekt- oder Dataset-Präfix). Bei Tabellennamen wird die Groß-/Kleinschreibung berücksichtigt. |
exportDataModifiedBeforeDateTime |
Optional: Mit diesem Parameter werden Daten verschoben, die älter als dieses Datum (und optional diese Uhrzeit) sind. Bei partitionierten BigQuery-Tabellen müssen Sie die Partitionen verschieben, die vor diesem Datum und dieser Uhrzeit zuletzt geändert wurden. Bei nicht partitionierten Tabellen werden Tabellen verschoben, wenn sie vor diesem Datum und dieser Uhrzeit zuletzt geändert wurden. Wenn nicht angegeben, werden alle Tabellen/Partitionen verschoben. Das Datum und die Uhrzeit werden 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.
Relativ Datum/Uhrzeit wird ebenfalls unterstützt und muss dem Format -PnDTnHnMn.nS entsprechen (muss mit -P beginnen, was für eine Zeit in der Vergangenheit steht).
|
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: Komprimierung der Ausgabedatei. Der Standardwert für diesen Parameter ist SNAPPY . Andere Werte für den Parameter sind UNCOMPRESSED , SNAPPY , GZIP oder BZIP2 . BZIP2 wird für PARQUET -Dateien nicht unterstützt. |
deleteSourceData |
Optional: Ob Quelldaten nach einem erfolgreichen Export aus BigQuery gelöscht werden sollen. Werte können true oder false sein. 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 an, was passiert, wenn eine Zieldatei bereits vorhanden ist, d. h., eine oder mehrere Tabellen/Partitionen wurden bereits vorverteilt. Der Standardwert für diesen Parameter ist SKIP . Das bedeutet, dass nur Tabellen/Partitionen verarbeitet werden, die noch nicht vorverteilt wurden. Andere Werte für den Parameter sind OVERWRITE (vorhandene Dateien überschreiben) oder FAIL (nichts verarbeiten und einen Fehler ausgeben, wenn mindestens eine Zieldatei bereits vorhanden ist). |
enforceSamePartitionKey |
Optional: Ob derselbe Partitionsschlüssel erzwungen werden soll. Aufgrund einer BigQuery-Einschränkung kann der Partitionsschlüssel (im Dateipfad) in einer partitionierten externen Tabelle nicht denselben Namen wie eine der Spalten in der Datei haben. Wenn dieser Parameter „wahr“ ist (Standardwert), wird der Partitionsschlüssel der Zieldatei auf den ursprünglichen Partitionsspaltennamen gesetzt und die Spalte in der Datei umbenannt. Wenn „false“ festgelegt ist, wird der Partitionsschlüssel umbenannt. Wenn die ursprüngliche Tabelle beispielsweise nach den Spalten Wenn |
updateDataplexMetadata |
Optional: Gibt an, ob die Dataplex-Metadaten für die neu erstellten Entitäten aktualisiert werden sollen. Der Standardwert für diesen Parameter ist Wenn diese Option aktiviert ist, kopiert die Pipeline das Schema automatisch von der Quelle in die Ziel-Dataplex-Entitäten. Die automatische Dataplex-Entdeckung wird für sie nicht ausgeführt. Verwenden Sie dieses Flag, wenn Sie das Schema der Quell-BigQuery-Tabellen verwalten. |
Führen Sie die Vorlage aus.
Console
Rufen Sie in der Google Cloud -Console die Seite Dataplex 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-Lake aus.
Geben Sie einen Aufgabennamen an.
Wählen Sie eine Region für die Aufgabenausführung aus.
Füllen Sie die erforderlichen Parameter aus.
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 asset name for the source BigQuery dataset, or the dataset ID DESTINATION_ASSET_NAME: your Dataplex 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 asset name for the source BigQuery dataset, or the dataset ID DESTINATION_ASSET_NAME: your Dataplex 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 können Sie in der Console alle vonGoogle Cloudbereitgestellten Dataflow-Vorlagen oder Ihre benutzerdefinierte Dataflow-Vorlage planen und überwachen.
Planen
Console
Rufen Sie in der Google Cloud -Console die Seite Dataplex 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-Lake aus.
Geben Sie einen Aufgabennamen an.
Wählen Sie eine Region aus, in der die Aufgabe ausgeführt werden soll.
Wählen Sie eine Dataflow-Vorlage aus.
Füllen Sie die erforderlichen Parameter aus.
Klicken Sie auf Weiter.
Überwachen
Console
Rufen Sie in der Google Cloud -Console die Seite Dataplex auf.
Rufen Sie die Ansicht Prozess auf.
Klicken Sie auf Dataflow-Pipelines.
Nach See- oder Pipelinenamen filtern