Ce document explique comment utiliser l'utilitaire d'exportation de liens d'entrée pour extraire des liens d'entrée (relations entre des termes de glossaire et des actifs de données) de Knowledge Catalog (anciennement Dataplex Universal Catalog) dans une feuille de calcul Google Sheet.
Vous pouvez exporter des liens d'entrée vers 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 d'entrée vers 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 :
Identifiez ou créez un compte de service.
Sélectionnez un compte de service existant ou créez-en un dans le projet où vous exécutez l'utilitaire d'importation. Pour en savoir plus, consultez la section 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).Configurez l'emprunt d'identité du 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 la page Gérer l'accès aux comptes de service.
Accordez au compte de service l'accès
Editorà la Google Sheet.Ouvrez la Google Sheet que vous souhaitez utiliser pour le processus d'importation, cliquez sur Partager, puis ajoutez l'adresse e-mail du compte de service en tant qu'
Editor. Cette autorisation permet au compte de service de lire des données dans votre feuille ou d'y écrire des données.
Rôles requis
Pour vous assurer que le compte de service dispose des autorisations nécessaires pour exporter des liens d'entrée vers une Google Sheet, demandez à votre administrateur d'attribuer les rôles IAM suivants au compte de service :
- Administrateur Dataplex (
roles/dataplex.admin) sur le projet - Administrateur de catalogue Dataplex (
roles/dataplex.catalogAdmin) sur le projet - Éditeur de catalogue Dataplex (
roles/dataplex.catalogEditor) sur le projet
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 d'entrée, 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 d'utilisation du service (roles/serviceusage.serviceUsageAdmin), qui
contient l'autorisation serviceusage.services.enable. Découvrez comment attribuer
des rôles.
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é du 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é du 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'ID de 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 des liens d'entrée vers la feuille de calcul Google Sheet
Pour exporter des liens d'entrée dans 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 d'entrée 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. |
Étape suivante
- Découvrez comment gérer un glossaire d'entreprise.
- Découvrez comment importer des liens d'entrée à partir d'une feuille de calcul Google Sheets.
- Découvrez comment exporter des glossaires vers une feuille de calcul Google Sheets.
- Découvrez-en plus sur la gestion des métadonnées.