Gestionar intercambios de datos en BigQuery

Como administrador de Analytics Hub, puedes realizar las siguientes tareas:

  • Crear, actualizar, ver, compartir y eliminar intercambios de datos.
  • Crear, actualizar, eliminar y compartir fichas.
  • Gestionar administradores de Analytics Hub, administradores de fichas, editores, suscriptores y lectores.

De forma predeterminada, un intercambio de datos es privado y solo los usuarios o grupos que tengan acceso a ese intercambio pueden ver los datos o suscribirse a ellos. Sin embargo, si quieres que los listados se descubran y se suscriban Google Cloud usuarios (allAuthenticatedUsers), puedes solicitar que tu intercambio de datos sea público.

Antes de empezar

Para empezar a usar la función de compartir de BigQuery (antes Analytics Hub), debe habilitar la API Analytics Hub en su Google Cloud proyecto.

Permisos obligatorios

Para habilitar la API Analytics Hub, necesitas los siguientes permisos de gestión de identidades y accesos (IAM):

  • serviceUsage.services.get
  • serviceUsage.services.list
  • serviceUsage.services.enable

El siguiente rol de gestión de identidades y accesos predefinido incluye los permisos que necesitas para habilitar la API Analytics Hub:

  • roles/serviceusage.serviceUsageAdmin

Para obtener más información sobre los roles de gestión de identidades y accesos en BigQuery, consulta el artículo sobre roles y permisos predefinidos.

Habilitar la API Analytics Hub

Para habilitar la API Analytics Hub, haz lo siguiente:

Consola

Ve a la página de la API Analytics Hub y habilítala en tu proyecto. Google Cloud

Habilitar la API Analytics Hub

gcloud

Ejecuta el comando gcloud services enable:

gcloud services enable analyticshub.googleapis.com

Permisos obligatorios

Para gestionar los intercambios de datos, debe tener el rol de administrador de Analytics Hub (roles/analyticshub.admin). Para obtener más información, consulte el artículo sobre el rol de administrador de Analytics Hub. Para saber cómo asignar este rol a otros usuarios, consulte el artículo Crear administradores de Analytics Hub.

Crear un intercambio de datos

Para crear un intercambio de datos, sigue estos pasos:

Consola

  1. Vaya a la página Compartir (Analytics Hub).

    Ir a Compartir (Analytics Hub)

  2. Haz clic en Crear exchange.

  3. En el cuadro de diálogo Crear intercambio, selecciona un Proyecto y una Región para el intercambio de datos. Una vez creada la exchange de datos, no se pueden actualizar el proyecto ni la región.

  4. En Nombre visible, escriba el nombre del intercambio de datos.

  5. Opcional: Introduce valores en los siguientes campos:

    • Contacto principal: introduce la URL o la dirección de correo del contacto principal del intercambio de datos.
    • Descripción: escriba una descripción del intercambio de datos.
  6. Para registrar todos los identificadores principales de los usuarios que ejecutan trabajos y consultas en conjuntos de datos vinculados, haz clic en el interruptor Registro de correo del suscriptor (Vista previa). Si habilitas esta opción, se habilitará el registro de correos de suscriptores en todas las fichas del intercambio de datos.

  7. Para activar la visibilidad pública, haz clic en el interruptor Visibilidad pública. Una vez que un exchange se puede descubrir públicamente, todos los anuncios del exchange se muestran y se pueden buscar en el catálogo. Si habilitas la visibilidad pública, debes configurar los permisos de intercambio. Debido a la herencia de permisos, todos los anuncios se configurarán de forma predeterminada con el mismo tipo de visibilidad pública que la bolsa. Por lo tanto, las exchanges públicas no pueden tener fichas privadas, pero las exchanges privadas sí pueden tener fichas públicas (por ejemplo, puede definir el tipo de visibilidad pública a nivel de ficha). El proyecto en el que vas a crear el intercambio de datos debe tener una organización y una cuenta de facturación asociadas.

  8. Haz clic en Crear intercambio.

  9. Opcional: En la sección Exchange Permissions (Permisos de Exchange), sigue estos pasos:

    1. Introduzca las direcciones de correo en los siguientes campos para conceder los roles de usuario de Centro de análisis:

    2. Para guardar los permisos, haz clic en Establecer permisos.

  10. Si no has definido permisos para el intercambio de datos, haz clic en Saltar.

API

Usa el método projects.locations.dataExchanges.create.

POST https://analyticshub.googleapis.com/v1/projects/PROJECT_ID/location/LOCATION/dataExchanges?dataExchangeId=DATAEXCHANGE_ID

Haz los cambios siguientes:

  • PROJECT_ID: el ID del proyecto en el que quieres crear el intercambio de datos.
  • LOCATION: la ubicación de su intercambio de datos. Para obtener más información sobre las ubicaciones que admiten la función de compartir de BigQuery (antes Analytics Hub), consulte Regiones admitidas.
  • DATAEXCHANGE_ID: el ID de tu intercambio de datos.

En el cuerpo de la solicitud, proporcione los detalles del intercambio de datos. Si la solicitud se realiza correctamente, el cuerpo de la respuesta contiene los detalles del intercambio de datos. Si has habilitado el registro de correos de suscriptores (Vista previa), la respuesta del intercambio de datos contiene log_linked_dataset_query_user_email: true.

Para obtener más información sobre las tareas que puedes realizar en intercambios de datos mediante APIs, consulta los métodos projects.locations.dataExchanges.

Actualizar un intercambio de datos

Para actualizar un intercambio de datos, sigue estos pasos:

Consola

  1. Vaya a la página Compartir (Analytics Hub).

    Ir a Compartir (Analytics Hub)

  2. En la lista de intercambios de datos, haga clic en el que quiera actualizar.

  3. Ve a la pestaña Detalles.

  4. Haz clic en Editar intercambio.

  5. En el cuadro de diálogo Editar exchange, actualice los siguientes campos:

    • Nombre visible
    • Contacto principal
    • Descripción
    • Descubribilidad pública
      • Si habilitas la visibilidad pública, asigna el rol Lector de Analytics Hub (roles/analyticshub.viewer) a allUsers o allAuthenticatedUsers.
      • Si inhabilita la visibilidad pública, quite el rol Lector de Analytics Hub (roles/analyticshub.viewer) de allUsers o allAuthenticatedUsers. Los mercados públicos no pueden tener fichas privadas, pero los mercados privados sí pueden tener fichas públicas.
    • Registro de correos de suscriptores (vista previa)

  6. Haz clic en Guardar.

API

Usa el método projects.locations.dataExchanges.patch.

PATCH https://analyticshub.googleapis.com/v1/projects/PROJECT_ID/location/LOCATION/dataExchanges/DATAEXCHANGE_ID?updateMask=UPDATEMASK

Sustituye UPDATEMASK por la lista de campos que quieras actualizar. Para actualizar varios valores, utilice una lista separada por comas. Por ejemplo, para actualizar el nombre visible y el contacto principal de un intercambio de datos, introduzca displayName,primaryContact.

En el cuerpo de la solicitud, especifica los valores actualizados de los siguientes campos:

  • Nombre visible
  • Descripción
  • Documentación
  • Icono
  • Contacto principal
  • Descubribilidad pública
  • Registro de correos de suscriptores (vista previa)

Para obtener más información sobre estos campos, consulta el artículo Recurso: DataExchange.

Para obtener más información sobre las tareas que puedes realizar en intercambios de datos mediante APIs, consulta los métodos projects.locations.dataExchanges.

Ver intercambios de datos

Para ver los intercambios de datos de tu proyecto u organización a los que tienes acceso, sigue estos pasos:

Consola

  1. Vaya a la página Compartir (Analytics Hub).

    Ir a Compartir (Analytics Hub)

  2. Consulta la lista de intercambios de datos de tu Google Cloud proyecto. Si tienes el permiso resourcemanager.organizations.get, también puedes ver la lista de intercambios de datos de tu Google Cloud organización.

API

Para ver los intercambios de datos de tu proyecto, usa el método projects.locations.dataExchanges.list:

GET https://analyticshub.googleapis.com/v1/projects/PROJECT_ID/location/LOCATION/dataExchanges

Haz los cambios siguientes:

  • PROJECT_ID: el ID del proyecto.
  • LOCATION: la ubicación de la que quiere obtener una lista de los intercambios de datos.

Para ver los intercambios de datos de tu organización, usa el método organizations.locations.dataExchanges.list:

GET https://analyticshub.googleapis.com/v1/organizations/ORGANIZATION_ID/location/LOCATION/dataExchanges

Haz los cambios siguientes:

  • ORGANIZATION_ID: el ID de la organización. Para obtener más información, consulta el artículo Obtener el ID de tu organización.
  • LOCATION: la ubicación de la que quiere obtener una lista de los intercambios de datos.

Compartir un intercambio de datos

Si el editor de Analytics Hub pertenece a una organización distinta de la que contiene el intercambio de datos, no podrá ver el intercambio de datos en Compartir. Debe compartir un enlace al intercambio de datos con el editor.

  1. Vaya a la página Compartir (Analytics Hub).

    Ir a Compartir (Analytics Hub)

  2. En la lista de intercambios de datos, haz clic en Más opciones.

  3. Haz clic en Copiar enlace para compartir.

Dar acceso a los usuarios a un intercambio de datos

Para dar acceso a los usuarios a un intercambio de datos, debes definir la política de gestión de identidades y accesos de ese intercambio. Para obtener información sobre los roles de usuario de gestión de identidades y accesos predefinidos, consulta Roles de usuario de Analytics Hub. sigue estos pasos:

Consola

  1. En la Google Cloud consola, vaya a la página Compartir (Analytics Hub).

    Ir a Compartir (Analytics Hub)

  2. Haga clic en el nombre del intercambio de datos para el que quiera definir permisos.

  3. Ve a la pestaña Detalles.

  4. Haz clic en Establecer permisos.

  5. Para añadir principales, haz clic en Añadir principal.

  6. En el campo Nuevos principales, añade los IDs de correo a los que quieras dar acceso. También puedes usar allUsers para hacer que un recurso sea público y accesible para todos los usuarios de Internet, o allAuthenticatedUsers para que solo puedan acceder a él los usuarios de Google que hayan iniciado sesión.

  7. En el menú Selecciona un rol, selecciona Centro de analíticas y, a continuación, selecciona uno de los siguientes roles de Gestión de Identidades y Accesos (IAM):

    • Administrador de Analytics Hub
    • Administrador de fichas de Analytics Hub
    • Editor de Analytics Hub
    • Suscriptor de Analytics Hub
    • Propietario de la suscripción a Analytics Hub
    • Lector de Analytics Hub
  8. Haz clic en Guardar.

API

  1. Lee la política actual con el método de lista getIamPolicy mediante el método projects.locations.dataExchanges.getIamPolicy:

    POST https://analyticshub.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/dataExchanges/DATAEXCHANGE_ID:getIamPolicy
    

    Haz los cambios siguientes:

    • PROJECT_ID: 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 de intercambio de datos.

    La función de compartir de BigQuery (antes Analytics Hub) devuelve la política actual.

  2. Para añadir o eliminar miembros y sus roles de gestión de identidades y accesos (IAM) asociados, edita la política con un editor de texto. Utiliza el siguiente formato para añadir miembros:

    • user:test-user@gmail.com
    • group:admins@example.com
    • serviceAccount:test123@example.domain.com
    • domain:example.domain.com

    Por ejemplo, para asignar el rol roles/analyticshub.subscriber a group:subscribers@example.com, añade la siguiente vinculación a la política:

    {
     "members": [
       "group:subscribers@example.com"
     ],
     "role":"roles/analyticshub.subscriber"
    }
    
  3. Escribe la política actualizada con el método projects.locations.dataExchanges.setIamPolicy. En el cuerpo de la solicitud, proporciona la política de gestión de identidades y accesos actualizada del paso anterior.

    POST https://analyticshub.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/dataExchanges/DATAEXCHANGE_ID:setIamPolicy
    

    En el cuerpo de la solicitud, proporciona los detalles de la ficha. Si la solicitud se realiza correctamente, el cuerpo de la respuesta contiene los detalles de la ficha.

Crear administradores de Analytics Hub

Para gestionar los intercambios de datos, debe crear administradores de Analytics Hub. Para crear administradores de intercambios, debe asignar a los usuarios el rol Administrador de Analytics Hub (roles/analyticshub.admin) a nivel de proyecto o de intercambio de datos.

Si quiere que los administradores gestionen todos los intercambios de datos de un proyecto, concédales el rol de administrador de Analytics Hub en ese proyecto. Si quieres que los administradores gestionen un intercambio de datos específico, concédeles el rol de administrador de Analytics Hub para ese intercambio de datos.

Hacer público un intercambio de datos

De forma predeterminada, un intercambio de datos es privado y solo los usuarios o grupos que tengan acceso a él pueden ver o suscribirse a sus fichas. Sin embargo, puedes hacer público un intercambio de datos. Los usuarios de Google Cloud (allAuthenticatedUsers) pueden descubrir y suscribirse a las fichas de intercambios de datos públicos.

Para hacer público un intercambio de datos, sigue estos pasos:

  1. Para permitir que allAuthenticatedUsers vea fichas, debe asignarle el rol Lector de Analytics Hub a nivel de intercambio de datos.

  2. Para permitir que allAuthenticatedUsers se suscriba a fichas, debe concederle el rol de suscriptor de Analytics Hub a nivel de intercambio de datos.

  3. Activa la visibilidad pública cuando crees o actualices un intercambio de datos. Especifica los permisos adecuados cuando publiques un intercambio de datos.

Eliminar un intercambio de datos

Cuando se elimina un intercambio de datos, también se eliminan todas las fichas que contiene. Sin embargo, los conjuntos de datos compartidos y vinculados no se eliminan. Además, cuando se elimina un proyecto, los intercambios de datos que contiene no se eliminan. Debes eliminar estos intercambios de datos antes de eliminar el proyecto. Si elimina un intercambio de datos, no podrá deshacer la acción.

Antes de eliminar un intercambio de datos, debes seguir estos pasos en función de la configuración del intercambio de datos:

Para eliminar un intercambio de datos, sigue estos pasos:

Consola

  1. Vaya a la página Compartir (Analytics Hub).

    Ir a Compartir (Analytics Hub)

  2. En la lista de intercambios de datos, haga clic en el que quiera eliminar.

  3. Ve a la pestaña Detalles.

  4. Haz clic en Eliminar intercambio.

  5. En el cuadro de diálogo ¿Eliminar intercambio?, confirma la eliminación escribiendo eliminar.

  6. Haz clic en Eliminar.

API

Usa el método projects.locations.dataExchanges.delete.

DELETE https://analyticshub.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/dataExchanges/DATAEXCHANGE_ID

Para obtener más información sobre las tareas que puedes realizar en intercambios de datos mediante APIs, consulta los métodos projects.locations.dataExchanges.

Siguientes pasos