Eintragslinks aus einer Google-Tabelle importieren

In diesem Dokument wird beschrieben, wie Sie mit dem Importdienstprogramm für Eintragslinks Eintragslinks (Beziehungen zwischen Glossarbegriffen und Daten-Assets, einschließlich der Eintragslinktypen definition, related und synonym) aus einer Google-Tabelle in Knowledge Catalog (früher Dataplex Universal Catalog) importieren.

Hinweis

Bevor Sie Eintragslinks in Knowledge Catalog importieren, müssen Sie die folgenden Voraussetzungen erfüllen.

Dienstkonto einrichten

Wenn Sie das Importprogramm mit Google Tabellen ausführen möchten, müssen Sie ein Dienstkonto mit den erforderlichen Berechtigungen für den Zugriff auf die Google Sheets API einrichten und Ihre Nutzeranmeldedaten übernehmen:

  1. Identifizieren oder erstellen Sie ein Dienstkonto.

    Wählen Sie ein vorhandenes Dienstkonto aus oder erstellen Sie ein neues in dem Projekt, in dem Sie das Importprogramm ausführen. Weitere Informationen finden Sie unter Dienstkonten erstellen. Notieren Sie sich die E-Mail-Adresse des Dienstkontos (z. B. SERVICE_ACCOUNT_NAME@PROJECT_ID.iam.gserviceaccount.com).

  2. Identitätsübernahme des Dienstkontos konfigurieren.

    Wenn Sie das Import-Utility-Script lokal ausführen möchten, muss Ihr Nutzerkonto die Berechtigung haben, die Identität des Dienstkontos zu übernehmen. Weisen Sie Ihrem Nutzerkonto die Rolle Ersteller von Dienstkonto-Tokens (roles/iam.serviceAccountTokenCreator) für das Dienstkonto zu.

    Weitere Informationen finden Sie unter Zugriff auf Dienstkonten verwalten.

  3. Gewähren Sie dem Dienstkonto Editor Zugriff auf das Google-Tabellenblatt.

    Öffnen Sie die Google-Tabelle, die Sie für den Import verwenden möchten, klicken Sie auf Freigeben und fügen Sie die E-Mail-Adresse des Dienstkontos als Editor hinzu. Mit dieser Berechtigung kann das Dienstkonto Daten aus Ihrem Tabellenblatt lesen oder Daten in Ihr Tabellenblatt schreiben.

Cloud Storage-Bucket erstellen

Erstellen Sie einen Cloud Storage-Bucket, der als Stagingbereich für Importdateien dient.

Erforderliche Rollen

Damit das Dienstkonto die erforderlichen Berechtigungen zum Importieren von Einstiegslinks aus einer Google-Tabelle hat, bitten Sie Ihren Administrator, dem Dienstkonto die folgenden IAM-Rollen zu gewähren:

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

Ihr Administrator kann dem Dienstkonto möglicherweise auch die erforderlichen Berechtigungen über benutzerdefinierte Rollen oder andere vordefinierte Rollen erteilen.

APIs aktivieren

Wenn Sie Eintragslinks importieren möchten, aktivieren Sie die folgenden APIs in Ihrem Projekt:

Rollen, die zum Aktivieren von APIs erforderlich sind

Zum Aktivieren von APIs benötigen Sie die IAM-Rolle „Service Usage-Administrator“ (roles/serviceusage.serviceUsageAdmin), die die Berechtigung serviceusage.services.enable enthält. Weitere Informationen zum Zuweisen von Rollen

APIs aktivieren

Git-Repository einrichten

Klonen Sie das Repository dataplex-labs:

git clone https://github.com/GoogleCloudPlatform/dataplex-labs.git
cd dataplex-labs/dataplex-quickstart-labs/00-resources/scripts/python/business-glossary-import/dataplex-glossary/import

Abhängigkeiten installieren

Installieren Sie die erforderlichen Python-Abhängigkeiten:

pip3 install -r requirements.txt
cd dataplex-glossary

Wenn bei der Installation des Pakets Probleme auftreten, richten Sie eine neue Python-Entwicklungsumgebung ein.

Identitätsübernahme des Dienstkontos authentifizieren und konfigurieren

Initialisieren Sie die Google Cloud CLI und authentifizieren Sie sich mit Standardanmeldedaten für Anwendungen (ADC) und der Identitätsübernahme des Dienstkontos:

# Set your service account email address
SA_EMAIL="SERVICE_ACCOUNT_EMAIL"

# Authenticate ADC using service account impersonation and required scopes
gcloud init
gcloud auth login
gcloud auth application-default login \
  --impersonate-service-account="${SA_EMAIL}" \
  --scopes="https://www.googleapis.com/auth/spreadsheets"

Ersetzen Sie SERVICE_ACCOUNT_EMAIL durch die E-Mail-ID des Dienstkontos. Beispiel:

SERVICE_ACCOUNT_NAME@PROJECT_ID.iam.gserviceaccount.com

Anforderungen an den projektübergreifenden Import

Wenn Sie Links zu Einträgen in mehreren Google Cloud Projekten importieren möchten, muss Ihre Konfiguration die folgenden Anforderungen erfüllen, bevor Sie das Importprogramm ausführen:

  • Projektübergreifende IAM-Berechtigungen konfigurieren: Das Dienstkonto, mit dem das Importskript ausgeführt wird, muss in allen Zielprojekten über ausreichende Berechtigungen verfügen.

  • Einträge müssen vorhanden sein: Die Zieleinträge müssen in den jeweiligen Knowledge Catalog-Projekten vorhanden sein, bevor Sie den Import ausführen.

  • Knowledge Catalog-Dienst-Agents Zugriff auf den Cloud Storage-Bucket gewähren: Die Knowledge Catalog-Dienstkonten in jedem Zielprojekt benötigen Zugriff auf Ihre Cloud Storage-Buckets.

Google-Tabelle für den Import erstellen und strukturieren

Damit ein Bulk-Import erfolgreich ausgeführt werden kann, müssen Sie eine neue Google-Tabelle mit einem genauen Spaltenschema erstellen, damit das Importprogramm Ihre Metadatenfelder erfolgreich parsen und validieren kann. Achten Sie darauf, dass Sie dem Dienstkonto Editor Zugriff auf das Google-Tabellenblatt gewährt haben.

Die erste Zeile des Tabellenblatts muss die folgenden Schemaüberschriften enthalten, die genau so geschrieben werden müssen (Groß-/Kleinschreibung beachten):

Spaltenüberschrift Erforderlich oder optional Beschreibung
entry_link_type Erforderlich Der Wert muss definition, related oder synonym sein.
source_entry Erforderlich Der vollständige Ressourcenpfad des Quelleneintrags im Format:
projects/PROJECT_ID/locations/LOCATION/entryGroups/ENTRYGROUP_NAME/entries/ENTRY_NAME
target_entry Erforderlich Der vollständige Ressourcenpfad des Zieleintrags im Format:
projects/PROJECT_ID/locations/LOCATION/entryGroups/ENTRYGROUP_NAME/entries/ENTRY_NAME
source_path Optional Spalten- oder Feldpfad für Definitionen (z. B. Schema.column_name).

Umgebungsvariablen einrichten

Richten Sie die folgenden Umgebungsvariablen ein:

# Set your Google Sheet URL
export SPREADSHEET_URL="GOOGLE_SHEET_URL"

# Set your bucket name
export BUCKETS="COMMA_SEPARATED_LIST_OF_BUCKETS"

# Set the project ID
export USER_PROJECT="USER_PROJECT"

Eintragslinks aus der Google-Tabelle importieren

Wenn Sie die Eintragslinks aus dem Google-Tabellenblatt in Knowledge Catalog importieren möchten, führen Sie das Skript entrylinks-import.py aus:

cd import
python3 entrylinks-import.py \
  --spreadsheet-url="$SPREADSHEET_URL" \
  --buckets="$BUCKETS" \
  --user-project="$USER_PROJECT"

Wenn Sie mehrere Importjobs parallel ausführen möchten, geben Sie mehrere Cloud Storage-Buckets im Parameter --buckets an. Das Skript teilt die Metadaten in kleinere Batches auf und verarbeitet sie gleichzeitig in den Buckets, wodurch die gesamte Aufnahmezeit verkürzt wird.

Sie können die Ausführungslogs im Verzeichnis logs/ in Ihrem lokalen Ausführungspfad aufrufen. Mithilfe dieser Logs können Sie den Übertragungsprozess prüfen und übersprungene Einträge oder Formatierungswarnungen erkennen.

Nächste Schritte