Metadaten mit einer benutzerdefinierten Pipeline importieren

In diesem Dokument wird beschrieben, wie Sie Metadaten aus einem Drittanbietersystem mithilfe der API-Methoden für den Metadatenimport und Ihrer eigenen Pipeline in Knowledge Catalog (ehemals Dataplex Universal Catalog) importieren. Knowledge Catalog-Metadaten bestehen aus Einträgen und ihren Aspekten.

Wenn Sie stattdessen eine von Google Cloudverwaltete Orchestrierungspipeline zum Extrahieren und Importieren von Metadaten verwenden möchten, empfehlen wir eine Pipeline für verwaltete Verbindungen. Bei einer Pipeline für verwaltete Verbindungen stellen Sie Ihren eigenen Connector bereit, der Metadaten extrahiert und eine Ausgabe in einem Format generiert, das als Eingabe für die API-Methoden für den Metadatenimport (die Metadaten-Importdatei) verwendet werden kann. Anschließend verwenden Sie Workflows, um die Pipelineaufgaben zu orchestrieren.

Sie können die folgenden Arten von Metadatenimportjobs ausführen:

  • Vollständige Synchronisierung von Einträgen mit inkrementellem Import ihrer Aspekte. Wird für benutzerdefinierte Einträge unterstützt.
  • Nur inkrementeller Import von Aspekten. Wird für Aspekte unterstützt, die zu benutzerdefinierten Einträgen und Systemeinträgen gehören. Bei benutzerdefinierten Einträgen können Sie sowohl optionale als auch erforderliche Aspekte ändern. Bei Systemeinträgen können Sie optionale Aspekte ändern.

Allgemeine Schritte

So importieren Sie Metadaten mit der Metadata Import API:

  1. Legen Sie den Umfang des Jobs fest.

    Außerdem erfahren Sie, wie Knowledge Catalog die Vergleichslogik und den Synchronisierungsmodus für Einträge und Aspekte anwendet.

  2. Erstellen Sie eine oder mehrere Metadaten-Importdateien, in denen die zu importierenden Daten definiert sind.

  3. Speichern Sie die Metadaten-Importdateien in einem Cloud Storage-Bucket.

  4. Führen Sie einen Metadatenimportjob aus.

Bei den Schritten auf dieser Seite wird davon ausgegangen, dass Sie mit den Metadatenkonzepten von Knowledge Catalog vertraut sind, einschließlich Eintragsgruppen, Eintragstypen und Aspekttypen. Weitere Informationen finden Sie unter Metadaten in Knowledge Catalog.

Hinweis

Führen Sie die Aufgaben in diesem Abschnitt aus, bevor Sie Metadaten importieren.

Erforderliche Rollen

Bitten Sie Ihren Administrator, dem Knowledge Catalog-Dienstkonto die IAM-Rolle Storage-Objekt-Betrachter (roles/storage.objectViewer) und die Berechtigung storage.buckets.get für den Bucket zuzuweisen, damit das Knowledge Catalog-Dienstkonto die erforderlichen Berechtigungen für den Zugriff auf den Cloud Storage-Bucket hat.

Bitten Sie Ihren Administrator, Ihnen die folgenden IAM-Rollen zuzuweisen, um die Berechtigungen zu erhalten, die Sie zur Verwaltung von Metadaten-Importjobs benötigen:

  • Einträge und ihre Aspekte in einem Metadatenjob für die vollständige Synchronisierung von Einträgen ändern:
    • Dataplex Entry Type User (roles/dataplex.entryTypeUser) für den Eintragstyp oder das Projekt, in dem der Eintragstyp definiert ist
    • Dataplex Aspect Type User (roles/dataplex.aspectTypeUser) für den Aspekttyp oder das Projekt, in dem der Aspekttyp definiert ist
  • Erforderliche Aspekte in einem Metadatenjob nur mit Aspekten ändern:
    • Dataplex Entry Type User (roles/dataplex.entryTypeUser) für den Eintragstyp oder das Projekt, in dem der Eintragstyp definiert ist
    • Dataplex Aspect Type User (roles/dataplex.aspectTypeUser) für den Aspekttyp oder das Projekt, in dem der Aspekttyp definiert ist
  • Optionale Aspekte in einem Metadatenjob nur für Aspekte ändern: Dataplex Aspect Type User (roles/dataplex.aspectTypeUser) für den Aspekttyp oder das Projekt, in dem der Aspekttyp definiert ist. Wenn Sie optionale Aspekte in einem Metadatenjob nur für Aspekte ändern, benötigen Sie keine Berechtigungen für den zugehörigen Eintragstyp.
  • Erstellen Sie Metadaten-Importjobs:
  • Metadatenjobs ansehen: Dataplex Metadata Job Viewer (roles/dataplex.metadataJobViewer) für das Projekt
  • Metadatenjobs erstellen, ansehen und abbrechen: Dataplex Metadata Job Owner (roles/dataplex.metadataJobOwner) für das Projekt

Weitere Informationen zum Zuweisen von Rollen finden Sie unter Zugriff auf Projekte, Ordner und Organisationen verwalten.

Sie können die erforderlichen Berechtigungen auch über benutzerdefinierte Rollen oder andere vordefinierte Rollen erhalten.

Google Cloud -Ressourcen erstellen

Bereiten Sie die folgenden Google Cloud Ressourcen vor:

  1. Erstellen Sie Eintragsgruppen für die Einträge, die Sie importieren möchten.
  2. Erstellen Sie Aspekttypen für die Aspekte, die Sie importieren möchten.
  3. Erstellen Sie Eintragstypen für die Einträge, die Sie importieren möchten.
  4. Wenn Sie einen Metadatenjob nur für Aspekte ausführen, erstellen Sie Einträge für die Aspekte, die Sie importieren möchten.
  5. Erstellen Sie einen Cloud Storage-Bucket, um Ihre Metadaten-Importdateien zu speichern.

Komponenten eines Metadatenimportjobs

Berücksichtigen Sie beim Importieren von Metadaten die folgenden Komponenten eines Metadatenjobs:

  • Jobumfang: Die Eintragsgruppen, Eintragstypen und Aspekttypen, die in den Job einbezogen werden sollen.
  • Synchronisierungsmodus: wie die Einträge und Aspekte im Job aktualisiert werden.
  • Metadaten-Importdatei: Eine Datei, in der die Werte für die Einträge und Aspekte im Job definiert sind. Sie können mehrere Metadaten-Importdateien im selben Metadatenjob angeben. Sie speichern die Dateien in Cloud Storage.
  • Vergleichslogik: wie Knowledge Catalog bestimmt, welche Einträge und Aspekte geändert werden sollen.

Jobumfang

Der Jobumfang definiert die Eintragsgruppen, Eintragstypen und Aspekttypen, die in einen Metadatenimportjob einbezogen werden sollen. Wenn Sie Metadaten importieren, ändern Sie die Einträge und Aspekte, die zu Ressourcen im Bereich des Jobs gehören.

Beachten Sie die folgenden Richtlinien, um den Jobumfang zu definieren:

  • Eintragsgruppen: Geben Sie eine oder mehrere Eintragsgruppen an, die in den Job aufgenommen werden sollen. Der Job ändert nur die Einträge und Aspekte, die zu diesen Eintragsgruppen gehören. Die Eintraggruppen und der Job müssen sich in derselben Region befinden.

  • Eintragstypen: Geben Sie einen oder mehrere Eintragstypen an, die in den Job aufgenommen werden sollen. Der Job ändert nur die Einträge und Aspekte, die zu diesen Eintragstypen gehören. Der Standort eines Eintragstyps muss entweder mit dem Standort des Jobs übereinstimmen oder der Eintragstyp muss global sein.

  • Aspekttypen: Geben Sie einen oder mehrere Aspekttypen an, die in den Job einbezogen werden sollen. Der Job ändert nur die Aspekte, die zu diesen Aspekttypen gehören. Der Standort eines Aspekttyps muss entweder mit dem Standort des Jobs übereinstimmen oder der Aspekttyp muss global sein.

Der Jobumfang muss alle Eintragstypen und Aspekttypen enthalten, die Sie in der Metadaten-Importdatei angeben.

Sie geben den Jobumfang an, wenn Sie einen Metadatenjob erstellen.

Synchronisierungsmodus

Der Synchronisierungsmodus gibt an, wie die Einträge und Aspekte in einem Metadatenimportjob aktualisiert werden. Sie geben einen Synchronisierungsmodus für Einträge und Aspekte an. Je nachdem, welche Ressourcen Sie importieren möchten, werden die folgenden Kombinationen von Synchronisierungsmodi unterstützt.

Ziel Synchronisierungsmodus für Einträge Synchronisierungsmodus für Seitenverhältnis Ergebnisse
Einträge und ihre Aspekte importieren FULL INCREMENTAL

Alle Einträge im Bereich des Jobs werden geändert.

Wenn ein Eintrag in Knowledge Catalog vorhanden ist, aber nicht in der Metadatenimportdatei enthalten ist, wird der Eintrag gelöscht, wenn Sie den Metadatenjob ausführen.

Ein Aspekt wird nur geändert, wenn die Metadaten-Importdatei einen Verweis auf den Aspekt im Feld updateMask und im Feld aspectKeys enthält. Weitere Informationen finden Sie unter Struktur eines Importelements.

Nur Aspekte importieren NONE INCREMENTAL

Aspekte werden geändert, wenn sie Teil des Jobumfangs sind und die Metadaten-Importdatei einen Verweis auf die Aspekte im Feld aspectKeys enthält. Siehe Struktur eines Importelements.

Andere Metadaten, die zu Einträgen im Bereich des Jobs gehören, werden nicht geändert.

Sie geben den Synchronisierungsmodus an, wenn Sie einen Metadatenjob erstellen.

Metadaten-Importdatei

Die Metadaten-Importdatei ist eine Sammlung der Einträge und Aspekte, die Sie ändern möchten. Sie definiert die Werte, die für alle Felder festgelegt werden sollen, die zu diesen Einträgen und Aspekten gehören. Sie bereiten die Datei vor, bevor Sie einen Metadatenimportjob ausführen.

Es gelten die folgenden allgemeinen Richtlinien:

  • Sie können mehrere Metadaten-Importdateien im selben Metadatenjob bereitstellen.
  • Wenn Sie einen Metadatenjob für die vollständige Synchronisierung von Einträgen ausführen, werden alle vorhandenen Einträge für alle Ressourcen im Bereich des Jobs vollständig durch die Einträge in der Datei ersetzt. Das bedeutet, dass Sie Werte für alle Einträge in einem Job angeben müssen, nicht nur die Werte, die Sie hinzufügen oder aktualisieren möchten. Wenn Sie eine Liste der aktuellen Einträge in Ihrem Projekt als Ausgangspunkt verwenden möchten, verwenden Sie die API-Methode entries.list.

  • Sie müssen im Rahmen eines Metadatenjobs eine Metadaten-Importdatei bereitstellen. Wenn Sie alle vorhandenen Daten für die Einträge im Bereich des Jobs löschen möchten, stellen Sie eine leere Metadaten-Importdatei bereit.

  • Alle Einträge und Aspekte, die Sie in die Datei aufnehmen, müssen zu den Eintragstypen, Eintragstypen und Aspekttypen gehören, die Sie im Bereich des Jobs definieren.

Verwenden Sie die detaillierten Richtlinien in den folgenden Abschnitten, um eine Metadaten-Importdatei zu erstellen.

Struktur der Datei

Jede Zeile in der Metadaten-Importdatei enthält ein JSON-Objekt, das einem Importelement entspricht. Ein Importelement ist ein Objekt, das die Werte beschreibt, die für einen Eintrag und die zugehörigen Aspekte geändert werden sollen.

Sie können mehrere Importelemente in einer einzigen Metadaten-Importdatei angeben. Geben Sie dasselbe Importelement jedoch nicht mehrmals in einem Metadatenjob an. Verwenden Sie einen Zeilenumbruch (0x0a), um die einzelnen Importelemente voneinander zu trennen.

Eine Metadaten-Importdatei mit einem Zeilenumbruchzeichen zwischen den einzelnen Importelementen sieht so aus:

{ "entry": { "name": "entry 1", #Information about entry 1 }
{ "entry": { "name": "entry 2", #Information about entry 2 }

Struktur eines Importelements

Jedes Importelement in der Metadaten-Importdatei kann die folgenden Felder enthalten (siehe ImportItem). Das folgende Beispiel ist zur besseren Lesbarkeit mit Zeilenumbrüchen formatiert. Wenn Sie die Datei speichern, fügen Sie jedoch nur nach jedem Importelement ein Zeilenumbruchzeichen ein. Fügen Sie keine Zeilenumbrüche zwischen den Feldern eines einzelnen Importelements ein.

{
  "entry": {
    "name": "ENTRY_NAME",
    "entryType": "ENTRY_TYPE",
    "entrySource": {
      "resource": "RESOURCE",
      "system": "SYSTEM",
      "platform": "PLATFORM",
      "displayName": "DISPLAY_NAME",
      "description": "DESCRIPTION",
      "createTime": "ENTRY_CREATE_TIMESTAMP",
      "updateTime": "ENTRY_UPDATE_TIMESTAMP"
    },
    "aspects": {
      "ASPECT": {
        "data": {
          "KEY": "VALUE"
        },
        "aspectSource": {
          "createTime": "ASPECT_CREATE_TIMESTAMP",
          "updateTime": "ASPECT_UPDATE_TIMESTAMP"
        }
      },
      # Additional aspect maps
    },
    "parentEntry": "PARENT_ENTRY",
    "fullyQualifiedName": "FULLY_QUALIFIED_NAME"
  },
  "updateMask": "UPDATE_MASK_FIELDS",
  "aspectKeys": [
    "ASPECT_KEY",
    # Additional aspect keys
  ],
}

Ersetzen Sie Folgendes:

  • entry: Informationen zu einem Eintrag und den zugehörigen Aspekten. In einem Metadatenimportjob, der nur Aspekte enthält, ignoriert Knowledge Catalog alle optionalen Felder für einen Eintrag mit Ausnahme der Aspektzuordnungen.

    • ENTRY_NAME: der relative Ressourcenname des Eintrags im Format projects/PROJECT_ID_OR_NUMBER/locations/LOCATION_ID/entryGroups/ENTRY_GROUP_ID/entries/ENTRY_ID.
    • ENTRY_TYPE: der relative Ressourcenname des Eintragstyps, der zum Erstellen dieses Eintrags verwendet wurde, im Format projects/PROJECT_ID_OR_NUMBER/locations/LOCATION_ID/entryTypes/ENTRY_TYPE_ID.
    • entrySource: Informationen aus dem Quellsystem zur Datenressource, die durch den Eintrag dargestellt wird:
      • RESOURCE: der Name der Ressource im Quellsystem.
      • SYSTEM: der Name des Quellsystems.
      • PLATFORM: die Plattform, die das Quellsystem enthält.
      • DISPLAY_NAME: ein nutzerfreundlicher Anzeigename.
      • DESCRIPTION: Eine Beschreibung des Eintrags.
      • ENTRY_CREATE_TIMESTAMP: der Zeitpunkt, zu dem der Eintrag im Quellsystem erstellt wurde.
      • ENTRY_UPDATE_TIMESTAMP: der Zeitpunkt, zu dem der Eintrag im Quellsystem aktualisiert wurde.
    • aspects: die Aspekte, die dem Eintrag zugeordnet sind. Das aspect-Objekt und seine Daten werden als Aspektkarte bezeichnet.

      • ASPECT: Ein Aspekt, der an den Eintrag angehängt ist. Je nachdem, wie der Aspekt an den Eintrag angehängt ist, verwenden Sie eines der folgenden Formate:

        • Wenn der Aspekt direkt an den Eintrag angehängt ist, geben Sie den relativen Ressourcennamen des Aspekttyps im Format PROJECT_ID_OR_NUMBER.LOCATION_ID.ASPECT_TYPE_ID an.
        • Wenn der Aspekt an den Pfad des Eintrags angehängt ist, geben Sie den Pfad des Aspekttyps im Format PROJECT_ID_OR_NUMBER.LOCATION_ID.ASPECT_TYPE_ID@PATH an.
      • KEY und VALUE: Der Inhalt des Aspekts gemäß der Metadatenvorlage für den Aspekttyp. Der Inhalt muss als UTF-8 codiert sein. Die maximale Größe des Felds beträgt 120 KB. Das Wörterbuch data ist erforderlich, auch wenn es leer ist.

      • ASPECT_CREATE_TIMESTAMP: der Zeitpunkt, zu dem der Aspekt im Quellsystem erstellt wurde.

      • ASPECT_UPDATE_TIMESTAMP: Der Zeitpunkt, zu dem der Aspekt im Quellsystem aktualisiert wurde.

    • PARENT_ENTRY: der Ressourcenname des übergeordneten Eintrags.

    • FULLY_QUALIFIED_NAME: Ein Name für den Eintrag, auf den ein externes System verweisen kann. Weitere Informationen finden Sie unter Voll qualifizierte Namen.

  • UPDATE_MASK_FIELDS: die zu aktualisierenden Felder in Pfaden, die relativ zur Ressource Entry sind. Trennen Sie die einzelnen Felder durch ein Komma.

    Bei einem vollständigen Eintragssynchronisierungsjob enthält Knowledge Catalog die Pfade aller Felder für einen Eintrag, die geändert werden können, einschließlich Aspekte. Das Feld updateMask wird ignoriert, wenn ein Eintrag erstellt oder neu erstellt wird.

    Legen Sie diesen Wert in einem Metadatenjob, der nur Aspekte enthält, auf aspects fest.

  • ASPECT_KEY: die zu ändernden Aspekte. Unterstützt die folgenden Syntaxen:

    • ASPECT_TYPE_REFERENCE: Entspricht dem Aspekttyp für Aspekte, die direkt an den Eintrag angehängt sind.
    • ASPECT_TYPE_REFERENCE@PATH: Stimmt mit dem Aspekttyp und dem angegebenen Pfad überein.
    • ASPECT_TYPE_REFERENCE@*: Entspricht dem Aspekttyp für alle Pfade.
    • *@PATH: stimmt mit allen Aspekttypen im angegebenen Pfad überein.

    Ersetzen Sie ASPECT_TYPE_REFERENCE durch einen Verweis auf den Aspekttyp im Format PROJECT_ID_OR_NUMBER.LOCATION_ID.ASPECT_TYPE_ID.

    Wenn Sie dieses Feld bei einem vollständigen Eintragssynchronisierungsjob leer lassen, wird es so behandelt, als würden Sie genau die Aspekte angeben, die im angegebenen Eintrag vorhanden sind. Knowledge Catalog fügt implizit die Schlüssel für alle erforderlichen Aspekte eines Eintrags hinzu.

Anforderungen für Dateien

Für die Metadaten-Importdatei gelten die folgenden Anforderungen:

  • Die Datei muss als JSON Lines-Datei formatiert sein, also als JSON-Datei mit Zeilenumbrüchen als Trennzeichen. Verwenden Sie ein Zeilenumbruchzeichen (0x0a), um die einzelnen Importelemente voneinander zu trennen.
  • Die Datei muss die UTF-8-Zeichencodierung verwenden.
  • Unterstützte Dateiendungen sind .jsonl und .json.
  • Die Dateigröße jeder Metadaten-Importdatei muss kleiner als 1 GiB sein. Die maximale Gesamtgröße aller Daten im Metadatenjob beträgt 3 GB. Dazu gehören alle mit dem Job verknüpften Dateien und Metadaten.
  • Die Eintragstypen und Aspekttypen, die Sie in der Datei angeben, müssen im Bereich des Metadatenjobs enthalten sein.
  • Die Datei muss in einen Cloud Storage-Bucket hochgeladen werden. Speichern Sie die Datei nicht in einem Ordner mit dem Namen CLOUD_STORAGE_URI/deletions/.

Vergleichslogik

Knowledge Catalog bestimmt, welche Einträge und Aspekte geändert werden sollen, indem die Werte und Zeitstempel, die Sie in der Metadaten-Importdatei angeben, mit den Werten und Zeitstempeln in Ihrem Projekt verglichen werden.

Allgemein aktualisiert Knowledge Catalog die Werte in Ihrem Projekt, wenn mindestens eine vorgeschlagene Änderung in der Metadaten-Importdatei den Status Ihres Projekts ändert, wenn der Job ausgeführt wird, ohne dass veraltete Daten eingeführt werden. Die vorgeschlagene Änderung muss im Feld für die Aktualisierungsmaske oder im Feld für die Aspektschlüssel in der Metadaten-Importdatei referenziert werden.

Die Vergleichslogik variiert je nach Art des ausgeführten Metadatenimportjobs.

Synchronisierungsauftrag für vollständige Einträge

Bei einem Metadatenjob zur vollständigen Synchronisierung von Einträgen führt Knowledge Catalog für jeden Eintrag, der zum Umfang des Jobs gehört, eine der folgenden Aktionen aus:

  • Erstellt einen Eintrag und angehängte Aspekte. Wenn die Metadaten-Importdatei einen Eintrag enthält, der in Ihrem Projekt nicht vorhanden ist, erstellt Knowledge Catalog den Eintrag und die angehängten Aspekte.
  • Löscht einen Eintrag und die angehängten Aspekte. Wenn ein Eintrag in Ihrem Projekt vorhanden ist, aber nicht in der Metadaten-Importdatei enthalten ist, löscht Knowledge Catalog den Eintrag und die zugehörigen Aspekte aus Ihrem Projekt.
  • Aktualisiert einen Eintrag und die angehängten Aspekte. Wenn ein Eintrag sowohl in der Metadaten-Importdatei als auch in Ihrem Projekt vorhanden ist, wertet Knowledge Catalog die Zeitstempel der Eintragsquelle und die Zeitstempel der Aspektquelle aus, die mit dem Eintrag verknüpft sind, um zu bestimmen, welche Werte geändert werden sollen. Anschließend führt Knowledge Catalog einen oder mehrere der folgenden Schritte aus:

    • Erstellt den Eintrag neu. Wenn der Zeitstempel für die Erstellung der Eintragsquelle in der Metadaten-Importdatei aktueller ist als der entsprechende Zeitstempel in Ihrem Projekt, erstellt Knowledge Catalog den Eintrag in Ihrem Projekt neu.
    • Aktualisiert den Eintrag. Wenn der Zeitstempel der letzten Aktualisierung der Eintragsquelle in der Metadaten-Importdatei aktueller ist als der entsprechende Zeitstempel in Ihrem Projekt, aktualisiert Knowledge Catalog den Eintrag in Ihrem Projekt.
    • Erstellt einen Aspekt. Wenn ein Aspekt in Ihrem Projekt nicht vorhanden ist und in einer Aspektzuordnung, dem Feld für die Aktualisierungsmaske und dem Feld für die Aspektschlüssel in der Metadaten-Importdatei enthalten ist, erstellt Knowledge Catalog den Aspekt.
    • Löscht einen Aspekt. Wenn ein Aspekt in Ihrem Projekt vorhanden ist und im Feld für die Aktualisierungsmaske und im Feld für die Aspektschlüssel in der Metadaten-Importdatei enthalten ist, aber nicht in einer Aspektzuordnung, löscht Knowledge Catalog den Aspekt.
    • Aktualisiert einen Aspekt. Wenn ein Aspekt in Ihrem Projekt vorhanden ist und in einer Aspektzuordnung, dem Feld für die Aktualisierungsmaske und dem Feld für die Aspektschlüssel in der Metadaten-Importdatei enthalten ist und der Zeitstempel für die Aktualisierung der Aspektquelle in der Metadaten-Importdatei aktueller ist als der entsprechende Zeitstempel in Ihrem Projekt, aktualisiert Knowledge Catalog den Aspekt.

      Wenn in der Metadaten-Importdatei kein Zeitstempel für die Aktualisierung der Aspektquelle angegeben ist, der entsprechende Eintrag aber für eine Aktualisierung markiert ist, aktualisiert Knowledge Catalog den Aspekt ebenfalls.

      Wenn jedoch mindestens ein Aspekt in der Metadaten-Importdatei einen älteren Zeitstempel als der entsprechende Zeitstempel in Ihrem Projekt hat, nimmt Knowledge Catalog keine Aktualisierungen für den angehängten Eintrag vor.

Job nur für Aspekte

In einem Metadatenjob, der nur Aspekte enthält, führt Knowledge Catalog für jeden Aspekt, der Teil des Jobumfangs ist, eine der folgenden Aktionen aus:

  • Erstellt einen Aspekt. Wenn ein Aspekt in Ihrem Projekt nicht vorhanden ist und in einer Aspektzuordnung, dem Feld für die Aktualisierungsmaske und dem Feld für die Aspektschlüssel in der Metadaten-Importdatei enthalten ist, erstellt Knowledge Catalog den Aspekt.
  • Löscht einen Aspekt. Wenn ein optionaler Aspekt in Ihrem Projekt vorhanden ist und im Feld für die Aktualisierungsmaske und im Feld für die Aspektschlüssel in der Metadaten-Importdatei enthalten ist, aber nicht in einer Aspektzuordnung, löscht Knowledge Catalog den Aspekt.

    Erforderliche Aspekte können nicht gelöscht werden.

  • Aktualisiert einen Aspekt. Wenn ein Aspekt in Ihrem Projekt vorhanden ist und in einer Aspektzuordnung, dem Feld für die Aktualisierungsmaske und dem Feld für die Aspektschlüssel in der Metadaten-Importdatei enthalten ist und der Zeitstempel für die Aktualisierung der Aspektquelle in der Metadaten-Importdatei aktueller ist als der entsprechende Zeitstempel in Ihrem Projekt, aktualisiert Knowledge Catalog den Aspekt.

    Wenn in der Metadaten-Importdatei kein Zeitstempel für die Aktualisierung der Aspektquelle angegeben ist, aktualisiert Knowledge Catalog den Aspekt ebenfalls.

    Knowledge Catalog aktualisiert Aspekte basierend auf dem Zeitstempel der Aktualisierung der Aspektquelle, unabhängig vom Zeitstempel der Aktualisierung der Eintragsquelle des entsprechenden Eintrags.

Metadaten-Importdatei erstellen

Bevor Sie Metadaten importieren, müssen Sie eine Metadaten-Importdatei für Ihren Job erstellen. Gehen Sie dazu so vor:

  1. Bereiten Sie eine Metadaten-Importdatei vor. Folgen Sie dazu den Richtlinien, die zuvor in diesem Dokument beschrieben wurden.
  2. Laden Sie die Datei in einen Cloud Storage-Bucket hoch.

Sie können mehrere Metadaten-Importdateien im selben Metadatenjob bereitstellen. Wenn Sie mehrere Dateien bereitstellen möchten, speichern Sie die Dateien im selben Cloud Storage-Bucket. Wenn Sie den Job ausführen, geben Sie einen Bucket und keine bestimmte Datei an. Knowledge Catalog importiert Metadaten aus allen Dateien, die im Bucket gespeichert sind, einschließlich Dateien in Unterordnern.

Metadatenimportjob ausführen

Nachdem Sie eine Metadaten-Importdatei erstellt haben, führen Sie den Metadaten-Importjob aus.

REST

Verwenden Sie zum Importieren von Metadaten die Methode metadataJobs.create.

Ersetzen Sie diese Werte in den folgenden Anfragedaten:

  • PROJECT_NUMBER: Ihre Projektnummer oder Projekt-ID in Google Cloud .
  • LOCATION_ID: der Google Cloud -Standort, z. B. us-central1.
  • METADATA_JOB_ID: optional. Die Metadaten-Job-ID.
  • CLOUD_STORAGE_URI: der URI des Cloud Storage-Bucket oder -Ordners, der die Metadaten-Importdateien enthält. Weitere Informationen zu den Dateianforderungen finden Sie unter Metadatenimportdatei.

  • ENTRY_GROUP: der relative Ressourcenname der Eintraggruppen, die für den Job relevant sind, im Format projects/PROJECT_ID_OR_NUMBER/locations/LOCATION_ID/entryGroups/ENTRY_GROUP_ID. Weitere Informationen finden Sie unter Jobumfang.
  • ENTRY_TYPE: der relative Ressourcenname eines Eintragstyps, der im Bereich des Jobs liegt, im Format projects/PROJECT_ID_OR_NUMBER/locations/LOCATION_ID/entryTypes/ENTRY_TYPE_ID. Weitere Informationen finden Sie unter Jobumfang.

  • ASPECT_TYPE: der relative Ressourcenname eines Aspekttyps, der für den Job relevant ist, im Format projects/PROJECT_ID_OR_NUMBER/locations/LOCATION_ID/aspectTypes/ASPECT_TYPE_ID. Optional beim Erstellen eines vollständigen Synchronisierungsjobs für Einträge, erforderlich beim Erstellen eines Jobs nur für Aspekte. Weitere Informationen finden Sie unter Jobumfang.
  • ENTRY_SYNC_MODE: der Synchronisierungsmodus für Einträge, z. B. FULL oder NONE. Weitere Informationen finden Sie unter Synchronisierungsmodus.
  • LOG_LEVEL: die Ebene der zu erfassenden Logs, z. B. INFO oder DEBUG. Weitere Informationen finden Sie unter Joblogs ansehen und Fehler beheben.

HTTP-Methode und URL:

POST https://dataplex.googleapis.com/v1/projects/TARGET_PROJECT_NUMBER/locations/LOCATION_ID/metadataJobs?metadataJobId=METADATA_JOB_ID

JSON-Text anfordern:

{
  "type": "IMPORT",
  "import_spec": {
    "source_storage_uri": "gs://CLOUD_STORAGE_URI/",
    "scope": {
      "entryGroups": [
        "ENTRY_GROUP"
      ],
      "entry_types": [
        "ENTRY_TYPE"
      ],
      "aspect_types": [
        "ASPECT_TYPE"
      ]
    },
    "entry_sync_mode": "ENTRY_SYNC_MODE",
    "aspect_sync_mode": "INCREMENTAL",
    "log_level": "LOG_LEVEL"
  }
}

Wenn Sie die Anfrage senden möchten, maximieren Sie eine der folgenden Optionen:

Die Antwort identifiziert einen Vorgang mit langer Ausführungszeit.

Details zu einem Metadatenjob abrufen

So rufen Sie Informationen zu einem Metadatenjob ab, z. B. den Status des Jobs und die Anzahl der geänderten Einträge: Weitere Informationen zur Fehlerbehebung bei einem fehlgeschlagenen Job finden Sie im Abschnitt Joblogs ansehen und Fehler beheben in diesem Dokument.

C#

C#

Bevor Sie dieses Beispiel ausprobieren, folgen Sie der Einrichtungsanleitung für C# in der Kurzanleitung zur Verwendung von Clientbibliotheken für Knowledge Catalog. Weitere Informationen finden Sie in der API-Referenzdokumentation für Knowledge Catalog C#.

Richten Sie zur Authentifizierung bei Knowledge Catalog Standardanmeldedaten für Anwendungen ein. Weitere Informationen finden Sie unter Authentifizierung für eine lokale Entwicklungsumgebung einrichten.

using Google.Cloud.Dataplex.V1;

public sealed partial class GeneratedCatalogServiceClientSnippets
{
    /// <summary>Snippet for GetMetadataJob</summary>
    /// <remarks>
    /// This snippet has been automatically generated and should be regarded as a code template only.
    /// It will require modifications to work:
    /// - It may require correct/in-range values for request initialization.
    /// - It may require specifying regional endpoints when creating the service client as shown in
    ///   https://cloud.google.com/dotnet/docs/reference/help/client-configuration#endpoint.
    /// </remarks>
    public void GetMetadataJobRequestObject()
    {
        // Create client
        CatalogServiceClient catalogServiceClient = CatalogServiceClient.Create();
        // Initialize request argument(s)
        GetMetadataJobRequest request = new GetMetadataJobRequest
        {
            MetadataJobName = MetadataJobName.FromProjectLocationMetadataJob("[PROJECT]", "[LOCATION]", "[METADATAJOB]"),
        };
        // Make the request
        MetadataJob response = catalogServiceClient.GetMetadataJob(request);
    }
}

Go

Go

Bevor Sie dieses Beispiel ausprobieren, folgen Sie der Einrichtungsanleitung für Go in der Kurzanleitung zur Verwendung von Clientbibliotheken für Knowledge Catalog. Weitere Informationen finden Sie in der API-Referenzdokumentation für Knowledge Catalog Go.

Richten Sie zur Authentifizierung bei Knowledge Catalog Standardanmeldedaten für Anwendungen ein. Weitere Informationen finden Sie unter Authentifizierung für eine lokale Entwicklungsumgebung einrichten.


//go:build examples

package main

import (
	"context"

	dataplex "cloud.google.com/go/dataplex/apiv1"
	dataplexpb "cloud.google.com/go/dataplex/apiv1/dataplexpb"
)

func main() {
	ctx := context.Background()
	// This snippet has been automatically generated and should be regarded as a code template only.
	// It will require modifications to work:
	// - It may require correct/in-range values for request initialization.
	// - It may require specifying regional endpoints when creating the service client as shown in:
	//   https://pkg.go.dev/cloud.google.com/go#hdr-Client_Options
	c, err := dataplex.NewCatalogClient(ctx)
	if err != nil {
		// TODO: Handle error.
	}
	defer c.Close()

	req := &dataplexpb.GetMetadataJobRequest{
		// TODO: Fill request struct fields.
		// See https://pkg.go.dev/cloud.google.com/go/dataplex/apiv1/dataplexpb#GetMetadataJobRequest.
	}
	resp, err := c.GetMetadataJob(ctx, req)
	if err != nil {
		// TODO: Handle error.
	}
	// TODO: Use resp.
	_ = resp
}

Java

Java

Bevor Sie dieses Beispiel ausprobieren, folgen Sie der Einrichtungsanleitung für Java in der Kurzanleitung zur Verwendung von Clientbibliotheken für Knowledge Catalog. Weitere Informationen finden Sie in der API-Referenzdokumentation für Knowledge Catalog Java.

Richten Sie zur Authentifizierung bei Knowledge Catalog Standardanmeldedaten für Anwendungen ein. Weitere Informationen finden Sie unter Authentifizierung für eine lokale Entwicklungsumgebung einrichten.

import com.google.cloud.dataplex.v1.CatalogServiceClient;
import com.google.cloud.dataplex.v1.GetMetadataJobRequest;
import com.google.cloud.dataplex.v1.MetadataJob;
import com.google.cloud.dataplex.v1.MetadataJobName;

public class SyncGetMetadataJob {

  public static void main(String[] args) throws Exception {
    syncGetMetadataJob();
  }

  public static void syncGetMetadataJob() throws Exception {
    // This snippet has been automatically generated and should be regarded as a code template only.
    // It will require modifications to work:
    // - It may require correct/in-range values for request initialization.
    // - It may require specifying regional endpoints when creating the service client as shown in
    // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
    try (CatalogServiceClient catalogServiceClient = CatalogServiceClient.create()) {
      GetMetadataJobRequest request =
          GetMetadataJobRequest.newBuilder()
              .setName(MetadataJobName.of("[PROJECT]", "[LOCATION]", "[METADATAJOB]").toString())
              .build();
      MetadataJob response = catalogServiceClient.getMetadataJob(request);
    }
  }
}

Node.js

Node.js

Bevor Sie dieses Beispiel ausprobieren, folgen Sie der Einrichtungsanleitung für Node.js in der Kurzanleitung zur Verwendung von Clientbibliotheken für Knowledge Catalog. Weitere Informationen finden Sie in der API-Referenzdokumentation für Knowledge Catalog Node.js.

Richten Sie zur Authentifizierung bei Knowledge Catalog Standardanmeldedaten für Anwendungen ein. Weitere Informationen finden Sie unter Authentifizierung für eine lokale Entwicklungsumgebung einrichten.

/**
 * This snippet has been automatically generated and should be regarded as a code template only.
 * It will require modifications to work.
 * It may require correct/in-range values for request initialization.
 * TODO(developer): Uncomment these variables before running the sample.
 */
/**
 *  Required. The resource name of the metadata job, in the format
 *  `projects/{project_id_or_number}/locations/{location_id}/metadataJobs/{metadata_job_id}`.
 */
// const name = 'abc123'

// Imports the Dataplex library
const {CatalogServiceClient} = require('@google-cloud/dataplex').v1;

// Instantiates a client
const dataplexClient = new CatalogServiceClient();

async function callGetMetadataJob() {
  // Construct request
  const request = {
    name,
  };

  // Run request
  const response = await dataplexClient.getMetadataJob(request);
  console.log(response);
}

callGetMetadataJob();

Python

Python

Bevor Sie dieses Beispiel ausprobieren, folgen Sie der Einrichtungsanleitung für Python in der Kurzanleitung zur Verwendung von Clientbibliotheken für Knowledge Catalog. Weitere Informationen finden Sie in der API-Referenzdokumentation für Knowledge Catalog Python.

Richten Sie zur Authentifizierung bei Knowledge Catalog Standardanmeldedaten für Anwendungen ein. Weitere Informationen finden Sie unter Authentifizierung für eine lokale Entwicklungsumgebung einrichten.

# This snippet has been automatically generated and should be regarded as a
# code template only.
# It will require modifications to work:
# - It may require correct/in-range values for request initialization.
# - It may require specifying regional endpoints when creating the service
#   client as shown in:
#   https://googleapis.dev/python/google-api-core/latest/client_options.html
from google.cloud import dataplex_v1


def sample_get_metadata_job():
    # Create a client
    client = dataplex_v1.CatalogServiceClient()

    # Initialize request argument(s)
    request = dataplex_v1.GetMetadataJobRequest(
        name="name_value",
    )

    # Make the request
    response = client.get_metadata_job(request=request)

    # Handle the response
    print(response)

Ruby

Ruby

Bevor Sie dieses Beispiel ausprobieren, folgen Sie der Einrichtungsanleitung für Ruby in der Kurzanleitung zur Verwendung von Clientbibliotheken für Knowledge Catalog. Weitere Informationen finden Sie in der API-Referenzdokumentation für Knowledge Catalog Ruby.

Richten Sie zur Authentifizierung bei Knowledge Catalog Standardanmeldedaten für Anwendungen ein. Weitere Informationen finden Sie unter Authentifizierung für eine lokale Entwicklungsumgebung einrichten.

require "google/cloud/dataplex/v1"

##
# Snippet for the get_metadata_job call in the CatalogService service
#
# This snippet has been automatically generated and should be regarded as a code
# template only. It will require modifications to work:
# - It may require correct/in-range values for request initialization.
# - It may require specifying regional endpoints when creating the service
# client as shown in https://cloud.google.com/ruby/docs/reference.
#
# This is an auto-generated example demonstrating basic usage of
# Google::Cloud::Dataplex::V1::CatalogService::Client#get_metadata_job.
#
def get_metadata_job
  # Create a client object. The client can be reused for multiple calls.
  client = Google::Cloud::Dataplex::V1::CatalogService::Client.new

  # Create a request. To set request fields, pass in keyword arguments.
  request = Google::Cloud::Dataplex::V1::GetMetadataJobRequest.new

  # Call the get_metadata_job method.
  result = client.get_metadata_job request

  # The returned object is of type Google::Cloud::Dataplex::V1::MetadataJob.
  p result
end

REST

Verwenden Sie die Methode metadataJobs.get, um Informationen zu einem Metadatenjob abzurufen.

Ersetzen Sie diese Werte in den folgenden Anfragedaten:

  • PROJECT_NUMBER: Ihre Projektnummer oder Projekt-ID in Google Cloud .
  • LOCATION_ID: der Google Cloud -Standort, z. B. us-central1.
  • METADATA_JOB_ID: die Metadaten-Job-ID.

HTTP-Methode und URL:

GET https://dataplex.googleapis.com/v1/projects/TARGET_PROJECT_NUMBER/locations/LOCATION_ID/metadataJobs/METADATA_JOB_ID

Wenn Sie die Anfrage senden möchten, maximieren Sie eine der folgenden Optionen:

Sie sollten eine JSON-Antwort ähnlich wie diese erhalten:

{
  "name": "projects/123456789012/locations/us-central1/metadataJobs/my-metadata-job",
  "uid": "a1b2c3d4-e5f6-7a8b-9c0d-1e2f3a4b5c6d",
  "createTime": "2026-07-17T16:30:15Z",
  "updateTime": "2026-07-17T16:35:15Z",
  "type": "IMPORT",
  "importSpec": {
    "sourceStorageUri": "gs://my-bucket/",
    "scope": {
      "entryGroups": [
        "projects/123456789012/locations/us-central1/entryGroups/my-entry-group"
      ],
      "entryTypes": [
        "projects/123456789012/locations/us-central1/entryTypes/my-entry-type"
      ],
      "aspectTypes": [
        "projects/123456789012/locations/us-central1/aspectTypes/my-aspect-type"
      ]
    },
    "entrySyncMode": "FULL",
    "aspectSyncMode": "INCREMENTAL",
    "logLevel": "INFO"
  },
  "status": {
    "state": "SUCCEEDED"
  },
  "importResult": {
    "deletedEntries": "2",
    "updatedEntries": "5",
    "createdEntries": "10",
    "unchangedEntries": "20",
    "updateTime": "2026-07-17T16:35:15Z"
  }
}

Liste der Metadatenjobs abrufen

Sie können eine Liste der neuesten Metadatenjobs abrufen. Ältere Jobs, die einen Endzustand erreicht haben, werden regelmäßig aus dem System gelöscht.

C#

C#

Bevor Sie dieses Beispiel ausprobieren, folgen Sie der Einrichtungsanleitung für C# in der Kurzanleitung zur Verwendung von Clientbibliotheken für Knowledge Catalog. Weitere Informationen finden Sie in der API-Referenzdokumentation für Knowledge Catalog C#.

Richten Sie zur Authentifizierung bei Knowledge Catalog Standardanmeldedaten für Anwendungen ein. Weitere Informationen finden Sie unter Authentifizierung für eine lokale Entwicklungsumgebung einrichten.

using Google.Api.Gax;
using Google.Api.Gax.ResourceNames;
using Google.Cloud.Dataplex.V1;
using System;

public sealed partial class GeneratedCatalogServiceClientSnippets
{
    /// <summary>Snippet for ListMetadataJobs</summary>
    /// <remarks>
    /// This snippet has been automatically generated and should be regarded as a code template only.
    /// It will require modifications to work:
    /// - It may require correct/in-range values for request initialization.
    /// - It may require specifying regional endpoints when creating the service client as shown in
    ///   https://cloud.google.com/dotnet/docs/reference/help/client-configuration#endpoint.
    /// </remarks>
    public void ListMetadataJobsRequestObject()
    {
        // Create client
        CatalogServiceClient catalogServiceClient = CatalogServiceClient.Create();
        // Initialize request argument(s)
        ListMetadataJobsRequest request = new ListMetadataJobsRequest
        {
            ParentAsLocationName = LocationName.FromProjectLocation("[PROJECT]", "[LOCATION]"),
            Filter = "",
            OrderBy = "",
        };
        // Make the request
        PagedEnumerable<ListMetadataJobsResponse, MetadataJob> response = catalogServiceClient.ListMetadataJobs(request);

        // Iterate over all response items, lazily performing RPCs as required
        foreach (MetadataJob item in response)
        {
            // Do something with each item
            Console.WriteLine(item);
        }

        // Or iterate over pages (of server-defined size), performing one RPC per page
        foreach (ListMetadataJobsResponse page in response.AsRawResponses())
        {
            // Do something with each page of items
            Console.WriteLine("A page of results:");
            foreach (MetadataJob item in page)
            {
                // Do something with each item
                Console.WriteLine(item);
            }
        }

        // Or retrieve a single page of known size (unless it's the final page), performing as many RPCs as required
        int pageSize = 10;
        Page<MetadataJob> singlePage = response.ReadPage(pageSize);
        // Do something with the page of items
        Console.WriteLine($"A page of {pageSize} results (unless it's the final page):");
        foreach (MetadataJob item in singlePage)
        {
            // Do something with each item
            Console.WriteLine(item);
        }
        // Store the pageToken, for when the next page is required.
        string nextPageToken = singlePage.NextPageToken;
    }
}

Go

Go

Bevor Sie dieses Beispiel ausprobieren, folgen Sie der Einrichtungsanleitung für Go in der Kurzanleitung zur Verwendung von Clientbibliotheken für Knowledge Catalog. Weitere Informationen finden Sie in der API-Referenzdokumentation für Knowledge Catalog Go.

Richten Sie zur Authentifizierung bei Knowledge Catalog Standardanmeldedaten für Anwendungen ein. Weitere Informationen finden Sie unter Authentifizierung für eine lokale Entwicklungsumgebung einrichten.


//go:build examples

package main

import (
	"context"

	dataplex "cloud.google.com/go/dataplex/apiv1"
	dataplexpb "cloud.google.com/go/dataplex/apiv1/dataplexpb"
	"google.golang.org/api/iterator"
)

func main() {
	ctx := context.Background()
	// This snippet has been automatically generated and should be regarded as a code template only.
	// It will require modifications to work:
	// - It may require correct/in-range values for request initialization.
	// - It may require specifying regional endpoints when creating the service client as shown in:
	//   https://pkg.go.dev/cloud.google.com/go#hdr-Client_Options
	c, err := dataplex.NewCatalogClient(ctx)
	if err != nil {
		// TODO: Handle error.
	}
	defer c.Close()

	req := &dataplexpb.ListMetadataJobsRequest{
		// TODO: Fill request struct fields.
		// See https://pkg.go.dev/cloud.google.com/go/dataplex/apiv1/dataplexpb#ListMetadataJobsRequest.
	}
	it := c.ListMetadataJobs(ctx, req)
	for {
		resp, err := it.Next()
		if err == iterator.Done {
			break
		}
		if err != nil {
			// TODO: Handle error.
		}
		// TODO: Use resp.
		_ = resp

		// If you need to access the underlying RPC response,
		// you can do so by casting the `Response` as below.
		// Otherwise, remove this line. Only populated after
		// first call to Next(). Not safe for concurrent access.
		_ = it.Response.(*dataplexpb.ListMetadataJobsResponse)
	}
}

Java

Java

Bevor Sie dieses Beispiel ausprobieren, folgen Sie der Einrichtungsanleitung für Java in der Kurzanleitung zur Verwendung von Clientbibliotheken für Knowledge Catalog. Weitere Informationen finden Sie in der API-Referenzdokumentation für Knowledge Catalog Java.

Richten Sie zur Authentifizierung bei Knowledge Catalog Standardanmeldedaten für Anwendungen ein. Weitere Informationen finden Sie unter Authentifizierung für eine lokale Entwicklungsumgebung einrichten.

import com.google.cloud.dataplex.v1.CatalogServiceClient;
import com.google.cloud.dataplex.v1.ListMetadataJobsRequest;
import com.google.cloud.dataplex.v1.LocationName;
import com.google.cloud.dataplex.v1.MetadataJob;

public class SyncListMetadataJobs {

  public static void main(String[] args) throws Exception {
    syncListMetadataJobs();
  }

  public static void syncListMetadataJobs() throws Exception {
    // This snippet has been automatically generated and should be regarded as a code template only.
    // It will require modifications to work:
    // - It may require correct/in-range values for request initialization.
    // - It may require specifying regional endpoints when creating the service client as shown in
    // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
    try (CatalogServiceClient catalogServiceClient = CatalogServiceClient.create()) {
      ListMetadataJobsRequest request =
          ListMetadataJobsRequest.newBuilder()
              .setParent(LocationName.of("[PROJECT]", "[LOCATION]").toString())
              .setPageSize(883849137)
              .setPageToken("pageToken873572522")
              .setFilter("filter-1274492040")
              .setOrderBy("orderBy-1207110587")
              .build();
      for (MetadataJob element : catalogServiceClient.listMetadataJobs(request).iterateAll()) {
        // doThingsWith(element);
      }
    }
  }
}

Node.js

Node.js

Bevor Sie dieses Beispiel ausprobieren, folgen Sie der Einrichtungsanleitung für Node.js in der Kurzanleitung zur Verwendung von Clientbibliotheken für Knowledge Catalog. Weitere Informationen finden Sie in der API-Referenzdokumentation für Knowledge Catalog Node.js.

Richten Sie zur Authentifizierung bei Knowledge Catalog Standardanmeldedaten für Anwendungen ein. Weitere Informationen finden Sie unter Authentifizierung für eine lokale Entwicklungsumgebung einrichten.

/**
 * This snippet has been automatically generated and should be regarded as a code template only.
 * It will require modifications to work.
 * It may require correct/in-range values for request initialization.
 * TODO(developer): Uncomment these variables before running the sample.
 */
/**
 *  Required. The resource name of the parent location, in the format
 *  `projects/{project_id_or_number}/locations/{location_id}`
 */
// const parent = 'abc123'
/**
 *  Optional. The maximum number of metadata jobs to return. The service might
 *  return fewer jobs than this value. If unspecified, at most 10 jobs are
 *  returned. The maximum value is 1,000.
 */
// const pageSize = 1234
/**
 *  Optional. The page token received from a previous `ListMetadataJobs` call.
 *  Provide this token to retrieve the subsequent page of results. When
 *  paginating, all other parameters that are provided to the
 *  `ListMetadataJobs` request must match the call that provided the page
 *  token.
 */
// const pageToken = 'abc123'
/**
 *  Optional. Filter request. Filters are case-sensitive.
 *  The service supports the following formats:
 *  * `labels.key1 = "value1"`
 *  * `labels:key1`
 *  * `name = "value"`
 *  You can combine filters with `AND`, `OR`, and `NOT` operators.
 */
// const filter = 'abc123'
/**
 *  Optional. The field to sort the results by, either `name` or `create_time`.
 *  If not specified, the ordering is undefined.
 */
// const orderBy = 'abc123'

// Imports the Dataplex library
const {CatalogServiceClient} = require('@google-cloud/dataplex').v1;

// Instantiates a client
const dataplexClient = new CatalogServiceClient();

async function callListMetadataJobs() {
  // Construct request
  const request = {
    parent,
  };

  // Run request
  const iterable = dataplexClient.listMetadataJobsAsync(request);
  for await (const response of iterable) {
      console.log(response);
  }
}

callListMetadataJobs();

Python

Python

Bevor Sie dieses Beispiel ausprobieren, folgen Sie der Einrichtungsanleitung für Python in der Kurzanleitung zur Verwendung von Clientbibliotheken für Knowledge Catalog. Weitere Informationen finden Sie in der API-Referenzdokumentation für Knowledge Catalog Python.

Richten Sie zur Authentifizierung bei Knowledge Catalog Standardanmeldedaten für Anwendungen ein. Weitere Informationen finden Sie unter Authentifizierung für eine lokale Entwicklungsumgebung einrichten.

# This snippet has been automatically generated and should be regarded as a
# code template only.
# It will require modifications to work:
# - It may require correct/in-range values for request initialization.
# - It may require specifying regional endpoints when creating the service
#   client as shown in:
#   https://googleapis.dev/python/google-api-core/latest/client_options.html
from google.cloud import dataplex_v1


def sample_list_metadata_jobs():
    # Create a client
    client = dataplex_v1.CatalogServiceClient()

    # Initialize request argument(s)
    request = dataplex_v1.ListMetadataJobsRequest(
        parent="parent_value",
    )

    # Make the request
    page_result = client.list_metadata_jobs(request=request)

    # Handle the response
    for response in page_result:
        print(response)

Ruby

Ruby

Bevor Sie dieses Beispiel ausprobieren, folgen Sie der Einrichtungsanleitung für Ruby in der Kurzanleitung zur Verwendung von Clientbibliotheken für Knowledge Catalog. Weitere Informationen finden Sie in der API-Referenzdokumentation für Knowledge Catalog Ruby.

Richten Sie zur Authentifizierung bei Knowledge Catalog Standardanmeldedaten für Anwendungen ein. Weitere Informationen finden Sie unter Authentifizierung für eine lokale Entwicklungsumgebung einrichten.

require "google/cloud/dataplex/v1"

##
# Snippet for the list_metadata_jobs call in the CatalogService service
#
# This snippet has been automatically generated and should be regarded as a code
# template only. It will require modifications to work:
# - It may require correct/in-range values for request initialization.
# - It may require specifying regional endpoints when creating the service
# client as shown in https://cloud.google.com/ruby/docs/reference.
#
# This is an auto-generated example demonstrating basic usage of
# Google::Cloud::Dataplex::V1::CatalogService::Client#list_metadata_jobs.
#
def list_metadata_jobs
  # Create a client object. The client can be reused for multiple calls.
  client = Google::Cloud::Dataplex::V1::CatalogService::Client.new

  # Create a request. To set request fields, pass in keyword arguments.
  request = Google::Cloud::Dataplex::V1::ListMetadataJobsRequest.new

  # Call the list_metadata_jobs method.
  result = client.list_metadata_jobs request

  # The returned object is of type Gapic::PagedEnumerable. You can iterate
  # over elements, and API calls will be issued to fetch pages as needed.
  result.each do |item|
    # Each element is of type ::Google::Cloud::Dataplex::V1::MetadataJob.
    p item
  end
end

REST

Mit der Methode metadataJobs.list können Sie eine Liste der neuesten Metadatenjobs abrufen.

Metadatenjob abbrechen

Sie können einen Metadatenjob abbrechen, den Sie nicht ausführen möchten.

C#

C#

Bevor Sie dieses Beispiel ausprobieren, folgen Sie der Einrichtungsanleitung für C# in der Kurzanleitung zur Verwendung von Clientbibliotheken für Knowledge Catalog. Weitere Informationen finden Sie in der API-Referenzdokumentation für Knowledge Catalog C#.

Richten Sie zur Authentifizierung bei Knowledge Catalog Standardanmeldedaten für Anwendungen ein. Weitere Informationen finden Sie unter Authentifizierung für eine lokale Entwicklungsumgebung einrichten.

using Google.Cloud.Dataplex.V1;

public sealed partial class GeneratedCatalogServiceClientSnippets
{
    /// <summary>Snippet for CancelMetadataJob</summary>
    /// <remarks>
    /// This snippet has been automatically generated and should be regarded as a code template only.
    /// It will require modifications to work:
    /// - It may require correct/in-range values for request initialization.
    /// - It may require specifying regional endpoints when creating the service client as shown in
    ///   https://cloud.google.com/dotnet/docs/reference/help/client-configuration#endpoint.
    /// </remarks>
    public void CancelMetadataJobRequestObject()
    {
        // Create client
        CatalogServiceClient catalogServiceClient = CatalogServiceClient.Create();
        // Initialize request argument(s)
        CancelMetadataJobRequest request = new CancelMetadataJobRequest
        {
            MetadataJobName = MetadataJobName.FromProjectLocationMetadataJob("[PROJECT]", "[LOCATION]", "[METADATAJOB]"),
        };
        // Make the request
        catalogServiceClient.CancelMetadataJob(request);
    }
}

Go

Go

Bevor Sie dieses Beispiel ausprobieren, folgen Sie der Einrichtungsanleitung für Go in der Kurzanleitung zur Verwendung von Clientbibliotheken für Knowledge Catalog. Weitere Informationen finden Sie in der API-Referenzdokumentation für Knowledge Catalog Go.

Richten Sie zur Authentifizierung bei Knowledge Catalog Standardanmeldedaten für Anwendungen ein. Weitere Informationen finden Sie unter Authentifizierung für eine lokale Entwicklungsumgebung einrichten.


//go:build examples

package main

import (
	"context"

	dataplex "cloud.google.com/go/dataplex/apiv1"
	dataplexpb "cloud.google.com/go/dataplex/apiv1/dataplexpb"
)

func main() {
	ctx := context.Background()
	// This snippet has been automatically generated and should be regarded as a code template only.
	// It will require modifications to work:
	// - It may require correct/in-range values for request initialization.
	// - It may require specifying regional endpoints when creating the service client as shown in:
	//   https://pkg.go.dev/cloud.google.com/go#hdr-Client_Options
	c, err := dataplex.NewCatalogClient(ctx)
	if err != nil {
		// TODO: Handle error.
	}
	defer c.Close()

	req := &dataplexpb.CancelMetadataJobRequest{
		// TODO: Fill request struct fields.
		// See https://pkg.go.dev/cloud.google.com/go/dataplex/apiv1/dataplexpb#CancelMetadataJobRequest.
	}
	err = c.CancelMetadataJob(ctx, req)
	if err != nil {
		// TODO: Handle error.
	}
}

Java

Java

Bevor Sie dieses Beispiel ausprobieren, folgen Sie der Einrichtungsanleitung für Java in der Kurzanleitung zur Verwendung von Clientbibliotheken für Knowledge Catalog. Weitere Informationen finden Sie in der API-Referenzdokumentation für Knowledge Catalog Java.

Richten Sie zur Authentifizierung bei Knowledge Catalog Standardanmeldedaten für Anwendungen ein. Weitere Informationen finden Sie unter Authentifizierung für eine lokale Entwicklungsumgebung einrichten.

import com.google.cloud.dataplex.v1.CancelMetadataJobRequest;
import com.google.cloud.dataplex.v1.CatalogServiceClient;
import com.google.cloud.dataplex.v1.MetadataJobName;
import com.google.protobuf.Empty;

public class SyncCancelMetadataJob {

  public static void main(String[] args) throws Exception {
    syncCancelMetadataJob();
  }

  public static void syncCancelMetadataJob() throws Exception {
    // This snippet has been automatically generated and should be regarded as a code template only.
    // It will require modifications to work:
    // - It may require correct/in-range values for request initialization.
    // - It may require specifying regional endpoints when creating the service client as shown in
    // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
    try (CatalogServiceClient catalogServiceClient = CatalogServiceClient.create()) {
      CancelMetadataJobRequest request =
          CancelMetadataJobRequest.newBuilder()
              .setName(MetadataJobName.of("[PROJECT]", "[LOCATION]", "[METADATAJOB]").toString())
              .build();
      catalogServiceClient.cancelMetadataJob(request);
    }
  }
}

Node.js

Node.js

Bevor Sie dieses Beispiel ausprobieren, folgen Sie der Einrichtungsanleitung für Node.js in der Kurzanleitung zur Verwendung von Clientbibliotheken für Knowledge Catalog. Weitere Informationen finden Sie in der API-Referenzdokumentation für Knowledge Catalog Node.js.

Richten Sie zur Authentifizierung bei Knowledge Catalog Standardanmeldedaten für Anwendungen ein. Weitere Informationen finden Sie unter Authentifizierung für eine lokale Entwicklungsumgebung einrichten.

/**
 * This snippet has been automatically generated and should be regarded as a code template only.
 * It will require modifications to work.
 * It may require correct/in-range values for request initialization.
 * TODO(developer): Uncomment these variables before running the sample.
 */
/**
 *  Required. The resource name of the job, in the format
 *  `projects/{project_id_or_number}/locations/{location_id}/metadataJobs/{metadata_job_id}`
 */
// const name = 'abc123'

// Imports the Dataplex library
const {CatalogServiceClient} = require('@google-cloud/dataplex').v1;

// Instantiates a client
const dataplexClient = new CatalogServiceClient();

async function callCancelMetadataJob() {
  // Construct request
  const request = {
    name,
  };

  // Run request
  const response = await dataplexClient.cancelMetadataJob(request);
  console.log(response);
}

callCancelMetadataJob();

Python

Python

Bevor Sie dieses Beispiel ausprobieren, folgen Sie der Einrichtungsanleitung für Python in der Kurzanleitung zur Verwendung von Clientbibliotheken für Knowledge Catalog. Weitere Informationen finden Sie in der API-Referenzdokumentation für Knowledge Catalog Python.

Richten Sie zur Authentifizierung bei Knowledge Catalog Standardanmeldedaten für Anwendungen ein. Weitere Informationen finden Sie unter Authentifizierung für eine lokale Entwicklungsumgebung einrichten.

# This snippet has been automatically generated and should be regarded as a
# code template only.
# It will require modifications to work:
# - It may require correct/in-range values for request initialization.
# - It may require specifying regional endpoints when creating the service
#   client as shown in:
#   https://googleapis.dev/python/google-api-core/latest/client_options.html
from google.cloud import dataplex_v1


def sample_cancel_metadata_job():
    # Create a client
    client = dataplex_v1.CatalogServiceClient()

    # Initialize request argument(s)
    request = dataplex_v1.CancelMetadataJobRequest(
        name="name_value",
    )

    # Make the request
    client.cancel_metadata_job(request=request)

Ruby

Ruby

Bevor Sie dieses Beispiel ausprobieren, folgen Sie der Einrichtungsanleitung für Ruby in der Kurzanleitung zur Verwendung von Clientbibliotheken für Knowledge Catalog. Weitere Informationen finden Sie in der API-Referenzdokumentation für Knowledge Catalog Ruby.

Richten Sie zur Authentifizierung bei Knowledge Catalog Standardanmeldedaten für Anwendungen ein. Weitere Informationen finden Sie unter Authentifizierung für eine lokale Entwicklungsumgebung einrichten.

require "google/cloud/dataplex/v1"

##
# Snippet for the cancel_metadata_job call in the CatalogService service
#
# This snippet has been automatically generated and should be regarded as a code
# template only. It will require modifications to work:
# - It may require correct/in-range values for request initialization.
# - It may require specifying regional endpoints when creating the service
# client as shown in https://cloud.google.com/ruby/docs/reference.
#
# This is an auto-generated example demonstrating basic usage of
# Google::Cloud::Dataplex::V1::CatalogService::Client#cancel_metadata_job.
#
def cancel_metadata_job
  # Create a client object. The client can be reused for multiple calls.
  client = Google::Cloud::Dataplex::V1::CatalogService::Client.new

  # Create a request. To set request fields, pass in keyword arguments.
  request = Google::Cloud::Dataplex::V1::CancelMetadataJobRequest.new

  # Call the cancel_metadata_job method.
  result = client.cancel_metadata_job request

  # The returned object is of type Google::Protobuf::Empty.
  p result
end

REST

Verwenden Sie zum Abbrechen eines Metadatenjobs die Methode metadataJobs.cancel.

Joblogs ansehen und Fehler beheben

Verwenden Sie Cloud Logging, um Logs für einen Metadatenjob aufzurufen. Weitere Informationen finden Sie unter Knowledge Catalog-Logs überwachen.

Sie konfigurieren die Logebene, wenn Sie einen Metadatenjob erstellen. Folgende Logebenen sind verfügbar:

  • INFO: stellt Logs auf der gesamten Jobebene bereit. Enthält zusammengefasste Logs zu Importelementen, gibt aber nicht an, welches Importelement einen Fehler aufweist.
  • DEBUG: stellt detaillierte Logs für jedes importierte Element bereit. Verwenden Sie das Logging auf Debug-Ebene, um Probleme mit bestimmten Importelementen zu beheben. Verwenden Sie beispielsweise Logging auf Debug-Ebene, um Ressourcen zu identifizieren, die im Jobbereich fehlen, Einträge oder Aspekte, die nicht dem zugehörigen Eintragstyp oder Aspekttyp entsprechen, oder andere Fehlkonfigurationen in der Metadaten-Importdatei.

Validierungsfehler

Knowledge Catalog gleicht die Metadaten-Importdateien mit den aktuellen Metadaten in Ihrem Projekt ab. Wenn ein Validierungsproblem vorliegt, kann der Jobstatus einen der folgenden Statuswerte zurückgeben:

  • FAILED: Tritt auf, wenn die Metadaten-Importdatei einen Fehler enthält. Knowledge Catalog importiert keine Metadaten und der Job schlägt fehl. Beispiele für Fehler in der Metadaten-Importdatei:
    • Ein Element in der Datei kann nicht in ein gültiges Importelement geparst werden.
    • Ein Eintrag oder Aspekt in der Datei gehört zu einer Eintraggruppe, einem Eintragstyp oder einem Aspekttyp, der nicht zum Umfang des Jobs gehört.
    • Der Name eines Eintrags wird im Job mehrmals angegeben.
    • Ein Aspekttyp, der in einer Aspektzuordnung oder den Aspektschlüsseln angegeben ist, verwendet nicht das Format PROJECT_ID_OR_NUMBER.LOCATION_ID.ASPECT_TYPE_ID@OPTIONAL_PATH.
    • Ein erforderlicher Aspekt ist zum Löschen markiert.
  • SUCCEEDED_WITH_ERRORS: Tritt auf, wenn die Metadaten-Importdatei erfolgreich geparst werden kann, aber das Importieren eines Elements in der Datei dazu führen würde, dass ein Eintrag in Ihrem Projekt in einem inkonsistenten Zustand ist. Knowledge Catalog ignoriert solche Einträge, importiert aber die restlichen Metadaten aus der Datei.

Verwenden Sie Joblogs, um den Fehler zu beheben.

Nächste Schritte