Eintragslinks aus einer Google-Tabelle importieren

In diesem Dokument wird erläutert, wie Sie mit dem Dienstprogramm zum Importieren von Eintragslinks Eintragslinks (Beziehungen zwischen Glossarbegriffen und Daten-Assets, einschließlich der Eintragslinktypen definition, related und synonym) aus einer Google-Tabelle in Knowledge Catalog (ehemals 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 Importdienstprogramm mit Google Sheets ausführen möchten, müssen Sie ein Dienstkonto mit den erforderlichen Berechtigungen für den Zugriff auf die Google Sheets API einrichten und die Identität Ihrer Nutzeranmeldedaten übernehmen:

  1. Dienstkonto identifizieren oder erstellen

    Wählen Sie ein vorhandenes Dienstkonto aus oder erstellen Sie ein neues im Projekt, in dem Sie das Importdienstprogramm 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 Importdienstprogramm 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 die Google-Tabelle.

    Öffnen Sie die Google-Tabelle, die Sie für den Importvorgang verwenden möchten, klicken Sie auf Teilen, 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 in Ihr Tabellenblatt schreiben.

Cloud Storage-Bucket erstellen

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

Erforderliche Rollen

Damit das Dienstkonto die erforderlichen Berechtigungen zum Importieren von Eintragslinks 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

Aktivieren Sie die folgenden APIs in Ihrem Projekt, um Eintragslinks zu importieren:

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 Probleme bei der Paketinstallation 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 (Application Default Credentials, 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-Adresse des Dienstkontos. Beispiel:

SERVICE_ACCOUNT_NAME@PROJECT_ID.iam.gserviceaccount.com

Anforderungen für den projektübergreifenden Import

Wenn Sie Eintragslinks in mehrere Google Cloud Projekte importieren möchten, muss Ihre Konfiguration die folgenden Anforderungen erfüllen, bevor Sie das Import Dienstprogramm ausführen:

  • IAM-Berechtigungen für mehrere Projekte konfigurieren: Das Dienstkonto, mit dem das Importskript ausgeführt wird, muss in allen Zielprojekten ausreichende Berechtigungen haben.

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

  • Zugriff auf den Cloud Storage-Bucket für Knowledge Catalog-Dienst-Agents 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 präzisen Spaltenschema erstellen, damit das Importdienstprogramm Ihre Metadatenfelder erfolgreich parsen und validieren kann. Gewähren Sie dem Dienstkonto Editor-Zugriff auf die Google-Tabelle.

Die erste Zeile des Tabellenblatts muss die folgenden exakten, Groß-/Kleinschreibung beachtenden Schemakopfzeilen enthalten:

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 Quelleintrags 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 Definitionslinks (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

Führen Sie das Skript entrylinks-import.py aus, um die Eintragslinks aus der Google-Tabelle in Knowledge Catalog zu importieren:

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 im Parameter --buckets mehrere Cloud Storage-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ührungsprotokolle im Verzeichnis logs/ in Ihrem lokalen Ausführungspfad einsehen. Diese Protokolle helfen Ihnen, den Übertragungsvorgang zu prüfen und übersprungene Einträge oder Formatierungswarnungen zu identifizieren.

Nächste Schritte