Daten mit Vorlagen verarbeiten

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.

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 false.

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

  1. Rufen Sie in der Google Cloud -Console die Seite Dataplex Universal Catalog auf.

    Dataplex Universal Catalog aufrufen

  2. Rufen Sie die Ansicht Prozess auf.

  3. Klicken Sie auf Aufgabe erstellen.

  4. Klicken Sie unter In ausgewählte Formate konvertieren auf Aufgabe erstellen.

  5. Wählen Sie einen Dataplex Universal Catalog-Lake aus.

  6. Geben Sie einen Namen für die Aufgabe an.

  7. Wählen Sie eine Region für die Ausführung von Aufgaben aus.

  8. Geben Sie die erforderlichen Parameter ein.

  9. 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 TS und enforceSamePartitionKey=true partitioniert ist, der Zielpfad gs://<bucket>/TS=<partition ID>/<file> lautet und die Spalte in der Datei in TS_pkey umbenannt wird, So können vorhandene Abfragen für dieselben Partitionen in der alten oder der neuen Tabelle ausgeführt werden.

Wenn enforceSamePartitionKey=false, ist der Zielpfad der Datei gs://<bucket>/TS_pid=<partition ID>/<file>, der Spaltenname in der Datei bleibt jedoch TS.

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 false.

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

  1. Rufen Sie in der Google Cloud -Console die Seite Dataplex Universal Catalog auf.

    Dataplex Universal Catalog aufrufen

  2. Rufen Sie die Ansicht Prozess auf.

  3. Klicken Sie auf Aufgabe erstellen.

  4. Klicken Sie unter Von BQ- in GCS-Assets verlagern auf Aufgabe erstellen.

  5. Wählen Sie einen Dataplex Universal Catalog-Lake aus.

  6. Geben Sie einen Namen für die Aufgabe an.

  7. Wählen Sie eine Region für die Ausführung von Aufgaben aus.

  8. Geben Sie die erforderlichen Parameter ein.

  9. 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

  1. Rufen Sie in der Google Cloud -Console die Seite Dataplex Universal Catalog auf.

    Dataplex Universal Catalog aufrufen

  2. Rufen Sie die Ansicht Prozess auf.

  3. Klicken Sie auf Aufgabe erstellen.

  4. Klicken Sie unter Dataflow-Pipeline erstellen auf Dataflow-Pipeline erstellen.

  5. Wählen Sie einen Dataplex Universal Catalog-Lake aus.

  6. Geben Sie einen Namen für die Aufgabe an.

  7. Wählen Sie eine Region für die Ausführung der Aufgabe aus.

  8. Wählen Sie eine Dataflow-Vorlage aus.

  9. Geben Sie die erforderlichen Parameter ein.

  10. Klicken Sie auf Weiter.

Überwachen

Console

  1. Rufen Sie in der Google Cloud -Console die Seite Dataplex Universal Catalog auf.

    Dataplex Universal Catalog aufrufen

  2. Rufen Sie die Ansicht Prozess auf.

  3. Klicken Sie auf Dataflow-Pipelines.

  4. Nach Lake- oder Pipelinename filtern