Ce document explique comment migrer de la version Preview du glossaire d'entreprise, qui était compatible avec les métadonnées Data Catalog, vers la version en disponibilité générale du glossaire d'entreprise, qui est compatible avec les métadonnées Dataplex Universal Catalog. Le processus de transition vous oblige à exporter les glossaires, les catégories, les termes et les liens depuis Data Catalog, puis à les importer dans Dataplex Universal Catalog.
Pour passer au glossaire d'entreprise dans Dataplex Universal Catalog, procédez comme suit :
- Exporter des glossaires, des catégories et des termes depuis Data Catalog.
- Importer des glossaires, des catégories et des termes dans Dataplex Universal Catalog
- Exporter les liens entre les termes de Data Catalog
- Importer des liens entre les termes dans Dataplex Universal Catalog
- Exporter les liens entre les termes et les colonnes de Data Catalog
- Importer des liens entre les termes et les colonnes vers Dataplex Universal Catalog.
Rôles requis
Pour exporter un glossaire depuis Data Catalog, vous devez disposer du rôle roles/datacatalog.glossaryOwner
sur les projets dans lesquels le glossaire est présent. Consultez les autorisations requises pour ce rôle.
Pour obtenir les autorisations nécessaires pour importer un glossaire d'entreprise dans Dataplex Universal Catalog, demandez à votre administrateur de vous accorder le rôle IAM Administrateur Dataplex (roles/dataplex.admin
) sur les projets.
Pour en savoir plus sur l'attribution de rôles, consultez la page Gérer l'accès aux projets, aux dossiers et aux organisations.
Ce rôle prédéfini contient les autorisations requises pour importer un glossaire d'entreprise dans le catalogue universel Dataplex. Pour connaître les autorisations exactes requises, développez la section Autorisations requises :
Autorisations requises
Les autorisations suivantes sont requises pour importer un glossaire d'entreprise dans le catalogue universel Dataplex :
-
dataplex.glossaries.import
sur la ressource de glossaire -
dataplex.entryGroups.import
sur le groupe d'entrées Dataplex Universal Catalog fourni dans le champentry_groups
et sur les groupes d'entrées où se trouvent les entrées Data Catalog liées aux termes du glossaire -
dataplex.entryGroups.useSynonymEntryLink
sur le groupe d'entrées Dataplex Universal Catalog fourni dans le champentry_groups
et sur les groupes d'entrées où se trouvent les entrées Data Catalog liées aux termes du glossaire -
dataplex.entryGroups.useRelatedEntryLink
sur le groupe d'entrées Dataplex Universal Catalog fourni dans le champentry_groups
et sur les groupes d'entrées où se trouvent les entrées Data Catalog associées aux termes du glossaire -
dataplex.entryLinks.reference
sur tous les projets fournis dans le champreferenced_entry_scopes
Vous pouvez également obtenir ces autorisations avec des rôles personnalisés ou d'autres rôles prédéfinis.
Exporter des glossaires, des catégories et des termes à partir de Data Catalog
Vous ne pouvez exporter qu'un glossaire à la fois.
Clonez le dépôt dataplex-labs, puis accédez au sous-répertoire
business-glossary-import
:git clone https://github.com/GoogleCloudPlatform/dataplex-labs.git cd dataplex-labs cd dataplex-quickstart-labs/00-resources/scripts/python/business-glossary-import
Obtenez votre jeton d'accès :
export GCLOUD_ACCESS_TOKEN=$(gcloud auth print-access-token)
Exécutez le script d'exportation :
python3 bg_import/business_glossary_export_v2.py \ --user-project="PROJECT_ID" \ --url="DATA_CATALOG_GLOSSARY_URL" \ --export-mode=glossary_only
Remplacez les éléments suivants :
PROJECT_ID
: ID du projet contenant le glossaire.DATA_CATALOG_GLOSSARY_URL
: URL du glossaire d'entreprise Data Catalog dans la console.
Le script crée un fichier JSON qui suit le même format que le fichier d'importation de métadonnées utilisé pour les jobs d'importation de métadonnées. Les noms du glossaire, des catégories et des termes utilisent les formats suivants :
- Glossaire :
projects/PROJECT_NUMBER/locations/LOCATION_ID/entryGroups/@dataplex/entries/projects/PROJECT_NUMBER/locations/LOCATION_ID/glossaries/GLOSSARY_ID
- Durée :
projects/PROJECT_NUMBER/locations/LOCATION_ID/entryGroups/@dataplex/entries/projects/PROJECT_NUMBER/locations/LOCATION_ID/glossaries/GLOSSARY_ID/terms/TERM_ID
- Catégorie :
projects/PROJECT_NUMBER/locations/LOCATION_ID/entryGroups/@dataplex/entries/projects/PROJECT_NUMBER/locations/LOCATION_ID/glossaries/GLOSSARY_ID/categories/CATEGORY_ID
Où
GLOSSARY_ID
,CATEGORY_ID
,TERM_ID
,PROJECT_NUMBER
etLOCATION_ID
sont identiques aux valeurs du glossaire Data Catalog.
Importer des glossaires, des catégories et des termes
Vous devez importer les glossaires, catégories et termes Dataplex Universal Catalog exportés à l'étape précédente. Cette section explique comment importer des métadonnées à l'aide de l'API des tâches de métadonnées.
Créez un bucket Cloud Storage, puis importez le fichier dans le bucket.
Accordez au compte de service Dataplex Universal Catalog l'accès en lecture au bucket Cloud Storage.
Exécutez une tâche d'importation de métadonnées pour importer le glossaire.
# Set GCURL alias alias gcurl='curl -H "Authorization: Bearer $(gcloud auth print-access-token)" -H "Content-Type: application/json"' # Import CURL Command gcurl https://dataplex.googleapis.com/v1/projects/PROJECT_NUMBER/locations/global/metadataJobs?metadata_job_id=JOB_ID -d "$(cat<<EOF { "type": "IMPORT", "import_spec": { "log_level": "DEBUG", "source_storage_uri": "gs://STORAGE_BUCKET/", "entry_sync_mode": "FULL", "aspect_sync_mode": "INCREMENTAL", "scope": { "glossaries": ["projects/PROJECT_NUMBER/locations/global/glossaries/GLOSSARY_ID"] } } } EOF )"
Remplacez les éléments suivants :
JOB_ID
: (facultatif) ID d'un job d'importation de métadonnées, que vous pouvez utiliser pour suivre l'état du job. Si vous ne fournissez pas d'ID, la commande gcurl génère un ID unique.STORAGE_BUCKET
: URI du bucket ou du dossier Cloud Storage contenant le fichier de glossaire exporté.PROJECT_NUMBER
: numéro du projet contenant le glossaire.
Facultatif : Pour suivre l'état de l'importation des métadonnées, utilisez la méthode
metadataJobs.get
:gcurl -X GET https://dataplex.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION_ID/metadataJobs/JOB_ID
Si des erreurs sont détectées dans la tâche d'importation des métadonnées, elles s'affichent dans les journaux.
Exporter les liens entre les termes depuis Data Catalog
Clonez le dépôt dataplex-labs (si ce n'est pas déjà fait), puis accédez au sous-répertoire
business-glossary-import
:git clone https://github.com/GoogleCloudPlatform/dataplex-labs.git cd dataplex-labs cd dataplex-quickstart-labs/00-resources/scripts/python/business-glossary-import
Obtenez votre jeton d'accès :
export GCLOUD_ACCESS_TOKEN=$(gcloud auth print-access-token)
Exécutez le code d'exportation :
python3 bg_import/business_glossary_export_v2.py \ --user-project=PROJECT_ID \ --url="DATA_CATALOG_GLOSSARY_URL" \ --export-mode=entry_links_only \ --entrylinktype="related,synonym"
Le script crée un fichier JSON contenant les synonymes et les liens associés entre les termes. Les fichiers exportés se trouvent dans le dossier
Exported_Files
dedataplex-quickstart-labs/00-resources/scripts/python/business-glossary-import
. Le nom du fichier estentrylinks_relatedsynonymGLOSSARY_ID.json
.
Importer des liens entre des termes vers Dataplex Universal Catalog
Vous devez importer les liens entre les termes exportés à l'étape précédente. Cette section explique comment importer des données à l'aide de l'API des tâches de métadonnées.
Créez un bucket Cloud Storage, puis importez-y le fichier de liens vers les entrées exporté à l'étape précédente.
Accordez au compte de service Dataplex Universal Catalog l'accès en lecture au bucket Cloud Storage.
Exécutez un job d'importation de métadonnées pour importer les liens vers les entrées :
# Import CURL Command gcurl https://dataplex.googleapis.com/v1/projects/PROJECT_ID/locations/global/metadataJobs?metadata_job_id=JOB_ID -d "$(cat<<EOF { "type": "IMPORT", "import_spec": { "log_level": "DEBUG", "source_storage_uri": "gs://STORAGE_BUCKET/", "entry_sync_mode": "FULL", "aspect_sync_mode": "INCREMENTAL", "scope": { "entry_groups": ["projects/GLOSSARY_PROJECT_ID/locations/global/entryGroups/@dataplex"], "entry_link_types": ["projects/dataplex-types/locations/global/entryLinkTypes/synonym", "projects/dataplex-types/locations/global/entryLinkTypes/related"], "referenced_entry_scopes": [PROJECT_IDS] } } } EOF )"
Remplacez les éléments suivants :
GLOSSARY_PROJECT_ID
: ID du projet contenant le glossairePROJECT_IDS
: si des termes sont associés à des glossaires dans différents projets, indiquez les ID des projets au format"projects/PROJECT_ID1", "projects/PROJECT_ID2"
.
Veuillez noter les points suivants :
- L'objet
entry_groups
contient le groupe d'entrées dans lequel les liens d'entrée sont créés. Il s'agit du groupe d'entrées système@dataplex
dans le même projet et au même emplacement que le glossaire. L'objet
entry_link_types
vous permet d'importer des synonymes, des termes associés ou les deux :- Synonymes :
projects/dataplex-types/locations/global/entryLinkTypes/synonym
- Termes associés :
projects/dataplex-types/locations/global/entryLinkTypes/related
- Synonymes :
L'objet
referenced_entry_scopes
inclut les ID de projet des liens d'entrée qui associent des termes de différents glossaires.
Exporter les liens entre les termes et les colonnes
Après avoir exporté et importé les glossaires et les liens entre les termes, importez les liens entre les termes et les colonnes. Dans la commande suivante, le type de lien est défini sur "definition" pour exporter les liens entre les termes et les colonnes.
## Clone the repository and navigate to the directory git clone https://github.com/GoogleCloudPlatform/dataplex-labs.git cd dataplex-labs cd dataplex-quickstart-labs/00-resources/scripts/python/business-glossary-import export GCLOUD_ACCESS_TOKEN=$(gcloud auth print-access-token); ## Run the export code python3 bg_import/business_glossary_export_v2.py \ --user-project="PROJECT_ID" \ --url="DATA_CATALOG_GLOSSARY_URL" \ --export-mode=entry_links_only \ --entrylinktype="definition"
Importer des liens entre les termes et les colonnes
Vous devez importer les liens entre les termes et les colonnes exportés à l'étape précédente. Cette section explique comment importer des données à l'aide de l'API des tâches de métadonnées.
Importez chaque fichier exporté à l'étape précédente dans un bucket Cloud Storage, comme décrit à l'étape 2.
Exécutez une commande d'importation distincte pour chaque fichier importé dans le bucket Cloud Storage. Chaque fichier correspond à un groupe d'entrées unique contenant des liens entre les termes et les colonnes de ce groupe d'entrées.
# Set GCURL alias alias gcurl='curl -H "Authorization: Bearer $(gcloud auth print-access-token)" -H "Content-Type: application/json"' # Import CURL Command gcurl https://dataplex.googleapis.com/v1/projects/ENTRY_GROUP_PROJECT_ID/locations/ENTRY_GROUP_LOCATION_ID { "type":"IMPORT", "import_spec":{ "log_level":"DEBUG", "source_storage_uri":"gs://STORAGE_BUCKET/", "entry_sync_mode":"FULL", "aspect_sync_mode":"INCREMENTAL", "scope":{ "entry_groups":[ "projects/ENTRY_GROUP_PROJECT_ID/locations/ENTRY_GROUP_LOCATION_ID/entryGroups/ENTRY_GROUP_ID" ], "entry_link_types":[ "projects/dataplex-types/locations/global/entryLinkTypes/definition", ], "referenced_entry_scopes":[ PROJECT_IDS ] } } } EOF )"