En este documento, se proporcionan instrucciones para migrar de la versión preliminar del glosario empresarial, que admitía metadatos de Data Catalog, a la versión disponible de forma general del glosario empresarial, que admite metadatos de Dataplex Universal Catalog. El proceso de transición requiere que exportes glosarios, categorías, términos y vínculos de Data Catalog y, luego, los importes a Dataplex Universal Catalog.
Sigue estos pasos para migrar al glosario empresarial en Dataplex Universal Catalog:
- Exporta glosarios, categorías y términos de Data Catalog.
- Importa glosarios, categorías y términos a Dataplex Universal Catalog.
- Vínculos de exportación entre términos de Data Catalog.
- Importa vínculos entre términos a Dataplex Universal Catalog.
- Exporta vínculos entre términos y columnas de Data Catalog.
- Importa vínculos entre términos y columnas a Dataplex Universal Catalog.
Roles obligatorios
Para exportar un glosario de Data Catalog, debes tener el rol roles/datacatalog.glossaryOwner
en los proyectos en los que se encuentra el glosario. Consulta los permisos necesarios para este rol.
Para obtener los permisos que necesitas para importar el glosario empresarial a Dataplex Universal Catalog, pídele a tu administrador que te otorgue el rol de IAM Administrador de Dataplex (roles/dataplex.admin
) en los proyectos.
Para obtener más información sobre cómo otorgar roles, consulta Administra el acceso a proyectos, carpetas y organizaciones.
Este rol predefinido contiene los permisos necesarios para importar el glosario empresarial a Dataplex Universal Catalog. Para ver los permisos exactos que son necesarios, expande la sección Permisos requeridos:
Permisos necesarios
Se requieren los siguientes permisos para importar el glosario empresarial a Dataplex Universal Catalog:
-
dataplex.glossaries.import
en el recurso de glosario -
dataplex.entryGroups.import
en el grupo de entradas de Dataplex Universal Catalog proporcionado en el campoentry_groups
y en los grupos de entradas en los que están presentes las entradas de Data Catalog que están vinculadas a los términos del glosario -
dataplex.entryGroups.useSynonymEntryLink
en el grupo de entradas de Dataplex Universal Catalog proporcionado en el campoentry_groups
y en los grupos de entradas en los que están presentes las entradas de Data Catalog que están vinculadas a los términos del glosario -
dataplex.entryGroups.useRelatedEntryLink
en el grupo de entradas de Dataplex Universal Catalog proporcionado en el campoentry_groups
y en los grupos de entradas en los que están presentes las entradas de Data Catalog que están vinculadas a los términos del glosario -
dataplex.entryLinks.reference
en todos los proyectos proporcionados en el camporeferenced_entry_scopes
También puedes obtener estos permisos con roles personalizados o con otros roles predefinidos.
Exporta glosarios, categorías y términos de Data Catalog
Puedes exportar un glosario a la vez.
Clona el repositorio dataplex-labs y, luego, cambia los directorios al subdirectorio
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
Obtén tu token de acceso:
export GCLOUD_ACCESS_TOKEN=$(gcloud auth print-access-token)
Ejecuta la secuencia de comandos de exportación:
python3 bg_import/business_glossary_export_v2.py \ --user-project="PROJECT_ID" \ --url="DATA_CATALOG_GLOSSARY_URL" \ --export-mode=glossary_only
Reemplaza lo siguiente:
PROJECT_ID
: Es el ID del proyecto que contiene el glosario.DATA_CATALOG_GLOSSARY_URL
: Es la URL del glosario de la empresa de Data Catalog en la consola.
La secuencia de comandos crea un archivo JSON que sigue el mismo formato que el archivo de importación de metadatos que se usa para los trabajos de importación de metadatos. Los nombres del glosario, las categorías y los términos usan los siguientes formatos:
- Glosario:
projects/PROJECT_NUMBER/locations/LOCATION_ID/entryGroups/@dataplex/entries/projects/PROJECT_NUMBER/locations/LOCATION_ID/glossaries/GLOSSARY_ID
- Período:
projects/PROJECT_NUMBER/locations/LOCATION_ID/entryGroups/@dataplex/entries/projects/PROJECT_NUMBER/locations/LOCATION_ID/glossaries/GLOSSARY_ID/terms/TERM_ID
- Categoría:
projects/PROJECT_NUMBER/locations/LOCATION_ID/entryGroups/@dataplex/entries/projects/PROJECT_NUMBER/locations/LOCATION_ID/glossaries/GLOSSARY_ID/categories/CATEGORY_ID
Aquí,
GLOSSARY_ID
,CATEGORY_ID
,TERM_ID
,PROJECT_NUMBER
yLOCATION_ID
son los mismos que los valores del glosario del catálogo de datos.
Importa glosarios, categorías y términos
Debes importar los glosarios, las categorías y los términos de Dataplex Universal Catalog que se exportaron en el paso anterior. En esta sección, se describe cómo realizar la importación con la API de trabajos de metadatos.
Crea un bucket de Cloud Storage y, luego, sube el archivo al bucket.
Ejecuta un trabajo de importación de metadatos para importar el glosario.
# 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 )"
Reemplaza lo siguiente:
JOB_ID
: Es el ID de un trabajo de importación de metadatos (opcional) que puedes usar para hacer un seguimiento del estado del trabajo. Si no proporcionas un ID, el comando gcurl genera un ID único.STORAGE_BUCKET
: Es el URI del bucket o la carpeta de Cloud Storage que contiene el archivo de glosario exportado.PROJECT_NUMBER
: Es el número del proyecto que contiene el glosario.
Opcional: Para hacer un seguimiento del estado del trabajo de importación de metadatos, usa el método
metadataJobs.get
:gcurl -X GET https://dataplex.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION_ID/metadataJobs/JOB_ID
Si se produce algún error en el trabajo de importación de metadatos, aparecerá en los registros.
Exporta vínculos entre términos de Data Catalog
Clona el repositorio dataplex-labs (si aún no lo hiciste) y, luego, cambia los directorios al subdirectorio
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
Obtén tu token de acceso:
export GCLOUD_ACCESS_TOKEN=$(gcloud auth print-access-token)
Ejecuta el código de exportación:
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"
La secuencia de comandos crea un archivo JSON que contiene los sinónimos y los vínculos relacionados entre los términos. Los archivos exportados se encuentran en la carpeta
Exported_Files
endataplex-quickstart-labs/00-resources/scripts/python/business-glossary-import
. El nombre del archivo esentrylinks_relatedsynonymGLOSSARY_ID.json
.
Importa vínculos entre términos a Dataplex Universal Catalog
Debes importar los vínculos entre los términos que se exportaron en el paso anterior. En esta sección, se describe cómo realizar la importación con la API de trabajos de metadatos.
Crea un nuevo bucket de Cloud Storage y, luego, sube el archivo de vínculos de entrada exportado del paso anterior al bucket.
Ejecuta un trabajo de importación de metadatos para importar los vínculos de entrada:
# 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 )"
Reemplaza lo siguiente:
GLOSSARY_PROJECT_ID
: ID del proyecto que contiene el glosarioPROJECT_IDS
: Si los términos están vinculados en diferentes glosarios de distintos proyectos, proporciona los IDs de los proyectos en el formato"projects/PROJECT_ID1", "projects/PROJECT_ID2"
.
Ten en cuenta lo siguiente:
- El objeto
entry_groups
contiene el grupo de entradas en el que se crean los vínculos de entrada. Este es el grupo de entrada del sistema@dataplex
en el mismo proyecto y ubicación que el glosario. El objeto
entry_link_types
te permite importar sinónimos, términos relacionados o ambos:- Sinónimos:
projects/dataplex-types/locations/global/entryLinkTypes/synonym
- Términos relacionados:
projects/dataplex-types/locations/global/entryLinkTypes/related
- Sinónimos:
El objeto
referenced_entry_scopes
incluye los IDs de proyecto de los vínculos de entrada que vinculan términos de diferentes glosarios.
Exporta vínculos entre términos y columnas
Después de exportar e importar los glosarios y los vínculos entre los términos, continúa con la importación de los vínculos entre los términos y las columnas. En el siguiente comando, el tipo de vínculo se establece en definición para exportar vínculos entre términos y columnas.
## 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"
Importa vínculos entre términos y columnas
Debes importar los vínculos entre los términos y las columnas que se exportaron en el paso anterior. En esta sección, se describe cómo realizar la importación con la API de trabajos de metadatos.
Sube cada archivo exportado en el paso anterior a un bucket de Cloud Storage, como se describe en el paso 2.
Ejecuta un comando de importación independiente para cada archivo subido en el bucket de Cloud Storage. Cada archivo corresponde a un grupo de entrada único que contiene vínculos entre los términos y las columnas de ese grupo de entrada.
# 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 )"
¿Qué sigue?
- Administra un glosario empresarial en Dataplex Universal Catalog
- Realiza la transición a Dataplex Universal Catalog