Administra intercambios de datos
Puedes usar intercambios de datos en BigQuery sharing para compartir conjuntos de datos de forma segura entre proyectos, organizaciones o con el público. Como administrador de uso compartido de BigQuery, puedes realizar las siguientes tareas:
- Crear, actualizar, visualizar, compartir y borrar intercambios de datos
- Administrar los permisos de acceso y los roles para los intercambios de datos
- Hacer que los intercambios de datos sean visibles públicamente
Para administrar las fichas dentro de un intercambio de datos, consulta Administra las fichas.
De forma predeterminada, un intercambio de datos es privado. Solo los usuarios o grupos que tienen acceso a un intercambio pueden ver sus fichas o suscribirse a ellas. Puedes hacer público tu intercambio de datos.
Si haces público tu intercambio de datos, los usuarios deGoogle Cloud (allAuthenticatedUsers) podrán descubrir y suscribirse a las fichas.
Antes de comenzar
Para comenzar a usar BigQuery sharing (anteriormente Analytics Hub), debes habilitar la API de Analytics Hub en tu Google Cloud proyecto.
Para habilitar la API de Analytics Hub, necesitas los siguientes permisos de Identity and Access Management (IAM):
serviceUsage.services.getserviceUsage.services.listserviceUsage.services.enable
El siguiente rol predefinido de IAM incluye los permisos que necesitas para habilitar la API de Analytics Hub:
- Administrador de Service Usage (
roles/serviceusage.serviceUsageAdmin)
Para habilitar la API de Analytics Hub, selecciona una de las siguientes opciones:
Console
Ve a la página de la API de Analytics Hub y habilita la API de Analytics Hub para tu proyecto Google Cloud .
gcloud
Ejecuta el comando gcloud services enable:
gcloud services enable analyticshub.googleapis.com
Roles obligatorios
Para obtener los permisos que necesitas
para administrar intercambios de datos,
pídele a tu administrador que te otorgue el
rol de administrador de Analytics Hub (roles/analyticshub.admin) de IAM en tu proyecto.
Para obtener más información sobre cómo otorgar roles, consulta Administra el acceso a proyectos, carpetas y organizaciones.
También puedes obtener los permisos necesarios a través de roles personalizados o cualquier otro rol predefinido.
Crea un intercambio de datos
Puedes crear un intercambio de datos para compartir conjuntos de datos con personas, grupos o el público en general específicos. Cuando creas un intercambio de datos, especificas su proyecto, región, nombre visible y parámetros de configuración opcionales, como el registro de correos electrónicos de suscriptores y la visibilidad pública.
Para crear un intercambio de datos, sigue estos pasos:
Console
En la consola de Google Cloud , ve a la página Compartir (Analytics Hub).
Haz clic en Crear intercambio.
En el cuadro de diálogo Crear intercambio, selecciona un Proyecto y una Región para tu intercambio de datos. No puedes cambiar el proyecto y la región después de crear el intercambio de datos.
En el campo Nombre visible, ingresa un nombre para tu intercambio de datos.
Opcional: Ingresa valores en los siguientes campos:
- Contacto principal: Ingresa la URL o la dirección de correo electrónico del contacto principal para el intercambio de datos.
- Descripción: Ingresa una descripción para el intercambio de datos.
Para registrar los identificadores principales de todos los usuarios que ejecutan trabajos y consultas en conjuntos de datos vinculados, haz clic en el botón de activación Registro de correos electrónicos de los suscriptores para activarlo. Cuando activas este parámetro de configuración, se activa el registro de correo electrónico del suscriptor en todas las fichas futuras del intercambio de datos. Los datos registrados están disponibles en el campo
job_principal_subjectde la vistaINFORMATION_SCHEMA.SHARED_DATASET_USAGE.Para que el intercambio sea visible públicamente, haz clic en el botón de activación Visibilidad pública para llevarlo a la posición activada. Cuando un intercambio es visible públicamente, aparecen todas las fichas del intercambio y se pueden buscar en el catálogo. Ten en cuenta los siguientes factores cuando habilites la visibilidad pública:
- Herencia de fichas: De forma predeterminada, todas las fichas heredan el parámetro de configuración de visibilidad pública del intercambio de datos. Los intercambios públicos no pueden tener fichas privadas, pero los intercambios privados pueden tener fichas públicas. Puedes configurar el tipo de visibilidad pública a nivel de la ficha individual.
- Permisos: Si habilitas la visibilidad pública, configura los permisos de intercambio para otorgar el rol Analytics Hub Viewer (
roles/analyticshub.viewer) aallUsersoallAuthenticatedUsers. - Requisitos del proyecto: El proyecto en el que crees el intercambio de datos debe tener una organización y una cuenta de facturación asociadas.
Para crear el intercambio de datos, haz clic en Crear intercambio.
Opcional: En la sección Permisos del intercambio, completa los siguientes pasos:
En los siguientes campos, ingresa las direcciones de correo electrónico para otorgar roles de Identity and Access Management (IAM):
- Administradores: Asigna el rol de administrador de Analytics Hub (
roles/analyticshub.admin) a estos usuarios. - Publicadores: Asigna el rol Analytics Hub Publisher (
roles/analyticshub.publisher) a estos usuarios. Para obtener más información sobre las tareas que pueden realizar los publicadores de uso compartido de BigQuery, consulta Administra fichas. - Suscriptores: Asigna el rol Analytics Hub Subscriber (
roles/analyticshub.subscriber) a estos usuarios. Para obtener más información sobre las tareas que pueden realizar los suscriptores de uso compartido de BigQuery, consulta Cómo ver y suscribirse a fichas y a intercambios de datos. - Visualizadores: Asigna el rol Analytics Hub Viewer (
roles/analyticshub.viewer) a estos usuarios. Los visualizadores de BigQuery sharing pueden ver las fichas. Si la visibilidad pública está habilitada, otorga el rol de visualizador de Analytics Hub aallUsersoallAuthenticatedUsers.
- Administradores: Asigna el rol de administrador de Analytics Hub (
Para guardar los permisos, haz clic en Establecer permisos.
Si no estableciste permisos para tu intercambio de datos, haz clic en Omitir.
API
Para crear un intercambio de datos, usa el método projects.locations.dataExchanges.create:
POST https://analyticshub.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/dataExchanges?dataExchangeId=DATAEXCHANGE_ID
Reemplaza lo siguiente:
PROJECT_ID: Es el ID del proyecto en el que deseas crear el intercambio de datos.LOCATION: la ubicación de tu intercambio de datos. Para obtener más información sobre las regiones que admiten el uso compartido de BigQuery, consulta Regiones admitidas.DATAEXCHANGE_ID: El ID de tu intercambio de datos.
En el cuerpo de la solicitud, proporciona los detalles del intercambio de datos.
Si la solicitud se realiza de forma correcta, el cuerpo de la respuesta contendrá los detalles del intercambio de datos.
Si habilitas el registro de correos electrónicos de suscriptores con el campo logLinkedDatasetQueryUserEmail, la respuesta del intercambio de datos contendrá log_linked_dataset_query_user_email: true. Los datos registrados están disponibles en el campo job_principal_subject de la vista INFORMATION_SCHEMA.SHARED_DATASET_USAGE.
Para obtener más información sobre las tareas que puedes realizar en los intercambios de datos mediante las API, consulta Métodos projects.locations.dataExchanges.
Actualiza un intercambio de datos
Puedes actualizar la configuración de un intercambio de datos existente, como su nombre visible, descripción, contacto principal y parámetros de configuración de visibilidad pública. No puedes cambiar el proyecto ni la región de un intercambio de datos existente.
Para actualizar un intercambio de datos, sigue estos pasos:
Console
En la consola de Google Cloud , ve a la página Compartir (Analytics Hub).
En la lista de intercambios de datos, selecciona el que deseas actualizar.
Haz clic en la pestaña Detalles.
Haz clic en Editar intercambio.
En el diálogo Editar intercambio, actualiza los siguientes campos:
- Nombre visible: Ingresa un nuevo nombre visible.
- Contacto principal: Ingresa una URL o una dirección de correo electrónico actualizadas.
- Descripción: Ingresa una descripción actualizada.
Visibilidad pública: Activa o desactiva la visibilidad pública.
- Si activas la visibilidad pública, otorga el rol Analytics Hub Viewer (
roles/analyticshub.viewer) aallUsersoallAuthenticatedUsers. - Si desactivas la visibilidad pública, quita el rol Analytics Hub Viewer (
roles/analyticshub.viewer) deallUsersoallAuthenticatedUsers. Los intercambios públicos no pueden tener fichas privadas, pero los intercambios privados pueden tener fichas públicas.
- Si activas la visibilidad pública, otorga el rol Analytics Hub Viewer (
Registro de correo electrónico de los suscriptores: Activa o desactiva el registro de correo electrónico de los suscriptores.
Para aplicar los cambios, haz clic en Guardar.
API
Para actualizar un intercambio de datos, usa el método projects.locations.dataExchanges.patch:
PATCH https://analyticshub.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/dataExchanges/DATAEXCHANGE_ID?updateMask=UPDATEMASK
Reemplaza lo siguiente:
PROJECT_ID: Es el ID del proyecto que contiene el intercambio de datos.LOCATION: La ubicación de tu intercambio de datos.DATAEXCHANGE_ID: El ID de tu intercambio de datos.UPDATEMASK: Es una lista separada por comas de los campos que deseas actualizar (por ejemplo,displayName,primaryContact).
En el cuerpo de la solicitud, especifica los valores actualizados para cualquiera de los siguientes campos:
displayNamedescriptionprimaryContactdocumentationicondiscoveryTypelogLinkedDatasetQueryUserEmail
Para obtener más información sobre estos campos, consulta Recurso: DataExchange.
Para obtener más información sobre las tareas que puedes realizar en los intercambios de datos mediante las API, consulta Métodos projects.locations.dataExchanges.
Ve los intercambios de datos
Puedes ver la lista de intercambios de datos en tu proyecto Google Cloud o en tu organización a los que tienes permiso de acceso.
Para ver los intercambios de datos, sigue estos pasos:
Console
En la consola de Google Cloud , ve a la página Compartir (Analytics Hub).
En la lista de intercambios de datos, consulta los intercambios de datos que se muestran para tu proyectoGoogle Cloud . Si tienes el permiso
resourcemanager.organizations.get, también puedes ver los intercambios de datos en toda tu organización de Google Cloud .
API
Para ver los intercambios de datos en tu proyecto, usa el método projects.locations.dataExchanges.list:
GET https://analyticshub.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/dataExchanges
Reemplaza lo siguiente:
PROJECT_ID: Es el ID del proyecto en el que deseas enumerar los intercambios de datos.LOCATION: Es la ubicación en la que deseas enumerar los intercambios de datos existentes.
Para ver los intercambios de datos en tu organización, usa el método organizations.locations.dataExchanges.list:
GET https://analyticshub.googleapis.com/v1/organizations/ORGANIZATION_ID/locations/LOCATION/dataExchanges
Reemplaza lo siguiente:
ORGANIZATION_ID: ID de organización. Para obtener más información, consulta Obtén el ID de tu organización.LOCATION: Es la ubicación en la que deseas enumerar los intercambios de datos existentes.
Comparte un intercambio de datos
Si un publicador de BigQuery sharing pertenece a una organización diferente de la que contiene el intercambio de datos, no podrá explorar ni ver tu intercambio de datos en BigQuery sharing. Para permitir que el publicador acceda al intercambio de datos, puedes copiar y compartir un vínculo directo.
Para compartir un vínculo a un intercambio de datos, sigue estos pasos:
En la consola de Google Cloud , ve a la página Compartir (Analytics Hub).
En la lista de intercambios de datos, busca el que deseas compartir y, luego, haz clic en Más opciones.
Para copiar el vínculo en el portapapeles, haz clic en Copiar vínculo para compartir.
Otorga a los usuarios acceso a un intercambio de datos
Para otorgar a los usuarios acceso a un intercambio de datos, establece la política de IAM para ese intercambio. Para obtener más información sobre los roles de usuario predefinidos de IAM, consulta Roles de IAM para compartir datos en BigQuery.
Console
En la consola de Google Cloud , ve a la página Compartir (Analytics Hub).
Haz clic en el nombre del intercambio de datos para el que deseas establecer permisos.
Haz clic en la pestaña Detalles.
Haz clic en Establecer permisos.
Para agregar principales, haz clic en Agregar principal.
En el campo Principales nuevas, ingresa la dirección de correo electrónico de la principal a la que deseas otorgar acceso. También puedes usar
allUserspara hacer que un recurso sea público y accesible para todos en Internet, oallAuthenticatedUserspara que solo sea accesible para los usuarios de Google que hayan accedido a su cuenta.En la lista Selecciona un rol, mantén el puntero sobre Analytics Hub y, luego, selecciona uno de los siguientes roles de IAM:
- Administrador de Analytics Hub
- Administrador de fichas de Analytics Hub
- Publicador de Analytics Hub
- Suscriptor de Analytics Hub
- Propietario de la suscripción a Analytics Hub
- Visualizador de Analytics Hub
Haz clic en Guardar.
API
Para leer la política existente, usa el método
projects.locations.dataExchanges.getIamPolicy:POST https://analyticshub.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/dataExchanges/DATAEXCHANGE_ID:getIamPolicy
Reemplaza lo siguiente:
PROJECT_ID: es el ID del proyecto, por ejemplo,my-project-1.LOCATION: la ubicación de tu intercambio de datos. Usa letras minúsculas.DATAEXCHANGE_ID: el ID del intercambio de datos.
El uso compartido de BigQuery devuelve la política actual.
Para agregar o quitar miembros y sus roles asociados de IAM, edita la política con un editor de texto. Usa el siguiente formato para agregar miembros:
user:test-user@gmail.comgroup:admins@googlegroups.comserviceAccount:server@example.gserviceaccount.comdomain:example.com
Por ejemplo, para otorgar el rol
roles/analyticshub.subscriberagroup:subscribers@googlegroups.com, agrega la siguiente vinculación a la política:{ "members": [ "group:subscribers@googlegroups.com" ], "role":"roles/analyticshub.subscriber" }Para establecer la política de intercambio de datos, usa el método
projects.locations.dataExchanges.setIamPolicy. En el cuerpo de la solicitud, proporciona la política de IAM actualizada del paso anterior:POST https://analyticshub.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/dataExchanges/DATAEXCHANGE_ID:setIamPolicy
Crea administradores para compartir datos de BigQuery
Para delegar la administración del intercambio de datos, puedes crear administradores de intercambio de datos otorgando a los usuarios el rol Analytics Hub Admin (roles/analyticshub.admin) a nivel del proyecto o del intercambio de datos.
- Para permitir que los administradores gestionen todos los intercambios de datos de un proyecto, otórgales el rol Analytics Hub Admin para ese proyecto.
- Para permitir que los administradores gestionen solo un intercambio de datos específico, otórgales el rol Analytics Hub Admin para ese intercambio de datos.
Haz que un intercambio de datos sea público
De forma predeterminada, un intercambio de datos es privado. Solo los usuarios o grupos que tienen acceso a un intercambio pueden ver sus fichas o suscribirse a ellas. Puedes hacer público un intercambio de datos, lo que permite que los usuarios deGoogle Cloud (allAuthenticatedUsers) descubran sus fichas y se suscriban a ellas.
Para hacer público un intercambio de datos, sigue estos pasos:
Para permitir que
allAuthenticatedUsersvea fichas, otórgale el rol Analytics Hub Viewer (roles/analyticshub.viewer) a nivel del intercambio de datos.Para permitir que
allAuthenticatedUsersse suscriba a las fichas, otórgale el rol Analytics Hub Subscriber (roles/analyticshub.subscriber) a nivel del intercambio de datos.Cuando crees o actualices un intercambio de datos, haz clic en el botón de activación Visibilidad pública para activarlo.
Borra un intercambio de datos
Cuando borras un intercambio de datos, también se borran todas las fichas que contiene. Los conjuntos de datos compartidos y vinculados no se borran. Si borras un proyecto, no se borran automáticamente sus intercambios de datos, por lo que debes borrar todos los intercambios de datos antes de cerrar el proyecto. No puedes deshacer la eliminación de un intercambio de datos.
Antes de borrar un intercambio de datos, completa los siguientes requisitos previos según la configuración del intercambio de datos:
- Para los intercambios de datos con fichas comerciales integradas en Google Cloud Marketplace, desvincula las fichas integradas en Cloud Marketplace.
- Para los intercambios de datos con fichas de varias regiones, revoca todas las suscripciones activas.
Para borrar un intercambio de datos, sigue estos pasos:
Console
En la consola de Google Cloud , ve a la página Compartir (Analytics Hub).
En la lista de intercambios de datos, selecciona el intercambio de datos que deseas borrar.
Haz clic en la pestaña Detalles.
Haz clic en Borrar intercambio.
En el cuadro de diálogo ¿Borrar intercambio?, ingresa
deletepara confirmar la eliminación.Para borrar el intercambio de datos de forma permanente, haz clic en Borrar.
API
Para borrar un intercambio de datos, usa el método projects.locations.dataExchanges.delete:
DELETE https://analyticshub.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/dataExchanges/DATAEXCHANGE_ID
Reemplaza lo siguiente:
PROJECT_ID: Es el ID del proyecto que contiene el intercambio de datos.LOCATION: la ubicación de tu intercambio de datos. Para obtener más información sobre las regiones que admiten el uso compartido de BigQuery, consulta Regiones admitidas.DATAEXCHANGE_ID: El ID de tu intercambio de datos.
Para obtener más información sobre las tareas que puedes realizar en los intercambios de datos mediante las API, consulta Métodos projects.locations.dataExchanges.
¿Qué sigue?
- Obtén más información para administrar fichas.
- Aprende a otorgar roles de usuario de uso compartido de BigQuery.
- Obtén información para ver fichas y suscripciones a ellas, y a intercambios de datos.
- Obtén información para ver los registros de auditoría de BigQuery sharing.