Exporter des liens vers des entrées dans une Google Sheet

Ce document explique comment utiliser l'utilitaire d'exportation des liens d'entrée pour extraire les liens d'entrée (relations entre les termes du glossaire et les assets de données) de Knowledge Catalog (anciennement Dataplex Universal Catalog) dans une Google Sheet.

Vous pouvez exporter des liens vers des entrées dans une Google Sheet pour auditer les liens existants, sauvegarder vos métadonnées ou préparer un modèle pour les mises à jour groupées.

Avant de commencer

Avant d'exporter des liens vers des entrées dans une Google Sheet, remplissez les conditions préalables suivantes.

Configurer le compte de service

Pour exécuter l'utilitaire d'exportation, vous devez configurer un compte de service disposant des autorisations nécessaires pour accéder à l'API Google Sheets et emprunter l'identité de vos identifiants utilisateur :

  1. Identifiez ou créez un compte de service.

    Sélectionnez un compte de service existant ou créez-en un dans le projet dans lequel vous exécutez l'utilitaire d'importation. Pour en savoir plus, consultez Créer des comptes de service. Notez l'adresse e-mail du compte de service (par exemple, SERVICE_ACCOUNT_NAME@PROJECT_ID.iam.gserviceaccount.com).

  2. Configurez l'emprunt d'identité d'un compte de service.

    Pour exécuter le script de l'utilitaire d'exportation en local, votre compte utilisateur doit être autorisé à emprunter l'identité du compte de service. Attribuez à votre compte utilisateur le rôle Créateur de jetons du compte de service (roles/iam.serviceAccountTokenCreator) sur le compte de service.

    Pour en savoir plus, consultez Gérer l'accès aux comptes de service.

  3. Accordez au compte de service Editor l'accès à la Google Sheet.

    Ouvrez la feuille de calcul Google Sheet que vous souhaitez utiliser pour l'importation, cliquez sur Partager, puis ajoutez l'adresse e-mail du compte de service en tant que Editor. Cette autorisation permet au compte de service de lire ou d'écrire des données dans votre feuille.

Rôles requis

Pour vous assurer que le compte de service dispose des autorisations nécessaires pour exporter des liens vers des entrées dans une Google Sheet, demandez à votre administrateur d'accorder au compte de service les rôles IAM suivants :

Pour en savoir plus sur l'attribution de rôles, consultez Gérer l'accès aux projets, aux dossiers et aux organisations.

Votre administrateur peut également attribuer au compte de service les autorisations requises à l'aide de rôles personnalisés ou d'autres rôles prédéfinis.

Activer les API

Pour exporter des liens vers des entrées, activez les API suivantes dans votre projet :

Rôles requis pour activer les API

Pour activer les API, vous avez besoin du rôle IAM Administrateur Service Usage (roles/serviceusage.serviceUsageAdmin), qui contient l'autorisation serviceusage.services.enable. Découvrez comment attribuer des rôles.

Activer les API

Configurer le dépôt Git

Clonez le dépôt 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/export

Installer des dépendances

Installez les dépendances Python requises :

pip3 install -r requirements.txt
cd dataplex-glossary

Si vous rencontrez des problèmes lors de l'installation du package, configurez un nouvel environnement de développement Python.

S'authentifier et configurer l'emprunt d'identité d'un compte de service

Initialisez la Google Cloud CLI et authentifiez-vous à l'aide des identifiants par défaut de l'application (ADC) avec l'emprunt d'identité d'un compte de service :

# 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"

Remplacez SERVICE_ACCOUNT_EMAIL par l'adresse e-mail du compte de service. Exemple :

SERVICE_ACCOUNT_NAME@PROJECT_ID.iam.gserviceaccount.com

Configurer la Google Sheet cible pour l'exportation

Créez une Google Sheet vide ou utilisez-en une existante. Le script d'exportation écrit dans la première feuille. Assurez-vous d'avoir accordé au compte de service l'accès Editor à la Google Sheet.

Configurer des variables d'environnement

Configurez les variables d'environnement suivantes :

# Set your glossary URL
export GLOSSARY_URL="GLOSSARY_URL"

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

# Set the project ID
export USER_PROJECT="USER_PROJECT"

Exporter les liens vers les entrées dans la Google Sheet

Pour exporter les liens d'entrée d'un glossaire vers la Google Sheet, exécutez le script suivant :

cd export
python3 entrylinks-export.py \
  --glossary-url="$GLOSSARY_URL" \
  --spreadsheet-url="$SPREADSHEET_URL" \
  --user-project="$USER_PROJECT"

Vous pouvez consulter les journaux d'exécution dans le répertoire logs/ de votre chemin d'exécution local. Ces journaux vous aident à auditer le processus de transfert et à identifier les entrées ignorées ou les avertissements de mise en forme.

Vérifier les données des liens vers les entrées exportées

Le script d'exportation remplit la Google Sheet avec les colonnes suivantes :

En-tête de colonne Description
entry_link_type Type de lien d'entrée (definition, related ou synonym).
source_entry Chemin d'accès complet à la ressource de l'entrée source.
target_entry Chemin d'accès complet à la ressource de l'entrée cible.
source_path Chemin d'accès à la colonne ou au champ pour les liens de définition.

Étapes suivantes