Dataplex stellt Vorlagen bereit, die auf Dataflow basieren, um gängige Datenverarbeitungsaufgaben wie Datenaufnahme, -verarbeitung und den Datenlebenszyklus verwaltet. In diesem Leitfaden wird beschrieben, wie Sie Daten konfigurieren und ausführen Vorlagen verarbeitet werden.
Hinweis
Dataplex-Vorlagen basieren auf Dataflow. Aktivieren Sie die Dataflow APIs, bevor Sie Vorlagen verwenden.
Hinweise
Alle Vorlagen unterstützen allgemeine Dataflow-Pipelineoptionen.
Dataplex verwendet Datenpipelines. um die durch die Vorlagen definierten Aufgaben zu planen.
Auf der Seite Dataplex der Google Cloud Console sehen Sie nur Aufgaben, die Sie über Dataplex planen.
Vorlage: Rohdaten in ausgewählte Daten konvertieren
Die Dataplex-Datei zur Konvertierung des Dateiformats konvertiert Daten in eine Dataplex-Cloud Storage-Asset oder eine Liste von Dataplex-Entitäten, die im CSV- oder JSON-Format gespeichert sind, in Parquet oder Avro format-data in einem anderen Dataplex-Asset. 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 sollte 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 sollte
verwenden Sie das folgende Format: PARQUET oder AVRO . |
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 im
Tab „Details “ des Dataplex-Assets. |
outputFileCompression |
Optional: Komprimierung der Ausgabedatei. Der Standardwert für diese
ist SNAPPY . Andere Werte für den Parameter sind UNCOMPRESSED , SNAPPY , GZIP oder BZIP2 . BZIP2 wird nicht unterstützt für
PARQUET Dateien. |
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: 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 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 Process (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
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
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
REST API
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
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", } }
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 eine BigQuery-Dataset oder eine Liste von BigQuery-Tabellen zu kopieren. 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 von partitionierten Tabellen von BigQuery in Cloud Storage:
- Die Vorlage erstellt Partitionen im Hive-Stil im Cloud Storage-Bucket.
In BigQuery darf der Partitionsschlüssel im Hive-Format nicht mit einer vorhandenen Spalte identisch sein. Sie können die Option
enforceSamePartitionKey
, um entweder einen neuen Partitionsschlüssel zu erstellen oder den Partitionsschlüssel an, benennen aber die vorhandene Spalte um. - Dataplex Discovery registriert den Partitionstyp als
string
, wenn eine BigQuery-Tabelle (und eine Tabelle im Dataproc Metastore) erstellt wird. Das kann sich auf Ihre vorhandene Partition auswirken Filter.
Die Anzahl der Tabellen und Partitionen, die transformiert werden können, ist begrenzt mit einer einzelnen Vorlagenausführung durchführen, was etwa 300 entspricht. 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 abgestuft werden sollen. Dieser Parameter
sollte entweder einen Dataplex-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> . |
destinationStorageBucketAssetName |
Der Dataplex-Asset-Name für den Cloud Storage-Bucket
um Daten zu stufen. Dieser Parameter sollte dem Format projects/<name>/locations/<loc>/lakes/<lake-name>/zones/<zone-name>/assets/<asset-name> entsprechen. |
tables |
Optional: Eine durch Kommas getrennte Liste der BigQuery-Tabellen, die in Stufen unterteilt werden sollen. Wenn keine Liste angegeben ist, werden alle Tabellen in Stufen unterteilt. Tabellen sollten nur anhand ihres Namens angegeben werden (kein Projekt-/Dataset-Präfix). Dabei wird die Groß-/Kleinschreibung berücksichtigt. |
exportDataModifiedBeforeDateTime |
Optional: Verwenden Sie diesen Parameter, um Daten zu verschieben, die älter als dieses Datum sind (und
optionale Zeit). Bei partitionierten BigQuery-Tabellen:
der Partitionen wurden vor diesem Datum/dieser Uhrzeit zuletzt geändert. Für nicht partitionierte
Tabellen verschieben, wenn die Tabelle vor diesem Datum bzw. dieser Uhrzeit zuletzt geändert wurde. Falls nicht
verschieben Sie alle Tabellen/Partitionen. 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 oder YYYY-MM-DDTHH:mm:ss oder
YYYY-MM-DDTHH:mm:ss+03:00
Relativ Datum/Uhrzeit wird ebenfalls unterstützt und sollte 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. Standardeinstellung
Der Wert für diesen Parameter ist PARQUET . Ein weiterer Wert für die
kann AVRO sein. |
fileCompression |
Optional: Komprimierung der Ausgabedatei. Der Standardwert für diese
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 aus BigQuery gelöscht werden sollen
nach einem erfolgreichen Export. Mögliche Werte sind true oder
false . Der Standardwert für diesen Parameter ist
false |
partitionIdRegExp |
Optional: Verarbeiten Sie Partitionen mit einer Partitions-ID, die dieser regulären Partitions-ID entspricht. -Ausdruck enthalten. 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., eine oder mehrere Tabellen/Partitionen wurden bereits vorverteilt. Der Standardwert für diesen Parameter ist SKIP .
welche Signale vorhanden sind,
nur die Tabellen/Partitionen zu verarbeiten,
bereits vorab abgestuft. 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: Gibt an, ob derselbe Partitionsschlüssel erzwungen werden soll. Aufgrund eines Aufgrund der BigQuery-Einschränkung ist es nicht möglich, dass die Partition (im Dateipfad) in einer partitionierten externen Tabelle, um denselben als eine der Spalten in der Datei. Wenn dieser Parameter wahr ist (was ist der Standardwert), wird der Partitionierungsschlüssel der Zieldatei auf den und die Spalte in der Datei wird 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 Dataplex-Metadaten für die
neu erstellten Entitäten. Der Standardwert für diesen Parameter ist
Wenn diese Option aktiviert ist, kopiert die Pipeline das Schema automatisch aus der Quelle zu den Dataplex-Zielentitäten und den automatisierten Dataplex Discovery 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 Tier from BQ to GCS Assets (Von BQ- zu GCS-Assets abstufen) auf Create Task (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
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
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
REST API
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
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", } }
Andere von Google bereitgestellte oder benutzerdefinierte Dataflow-Vorlagen planen
Mit Dataplex können Sie alle Von Google Cloud bereitgestellte Dataflow-Vorlagen oder Ihre benutzerdefinierten Dataflow-Vorlage in der Console.
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.
Geben Sie die erforderlichen Parameter an.
Klicken Sie auf Weiter.
Überwachen
Console
Rufen Sie in der Google Cloud Console die Seite Dataplex auf:
Rufen Sie die Ansicht Process (Prozess) auf.
Klicken Sie auf Dataflow-Pipelines.
Nach See- oder Pipelinenamen filtern