Compartir datos sensibles con salas blancas de datos

Las salas blancas de datos proporcionan un entorno de seguridad mejorada en el que varias partes pueden compartir, combinar y analizar sus recursos de datos sin mover ni revelar los datos subyacentes.

Las salas blancas de datos de BigQuery se basan en la plataforma de uso compartido de BigQuery (antes Analytics Hub). Aunque los intercambios de datos de BigQuery sharing estándar ofrecen una forma de compartir datos a gran escala entre organizaciones, las salas blancas de datos te ayudan a abordar casos prácticos de uso compartido de datos sensibles y protegidos. Las salas blancas de datos proporcionan controles de seguridad adicionales para proteger los datos subyacentes y aplicar las reglas de análisis que defina el propietario de los datos.

Estos son los principales casos prácticos:

  • Planificación de campañas y estadísticas de la audiencia. Permite que dos partes (como vendedores y compradores) combinen datos propios y mejoren el enriquecimiento de datos de una forma que respete la privacidad.
  • Medición y atribución. Asocia los datos de rendimiento de los clientes y de los medios para comprender mejor la eficacia de las iniciativas de marketing y tomar decisiones empresariales más fundamentadas.
  • Activación. Combina datos de clientes con datos de terceros para mejorar el conocimiento de los clientes, lo que te permitirá mejorar las funciones de segmentación y activar los medios de forma más eficaz.

También hay varios casos prácticos de salas blancas de datos fuera del sector del marketing:

  • Comercio minorista y productos de gran consumo (CPG). Optimizar las actividades de marketing y promocionales combinando datos de puntos de venta de comercios y datos de marketing de empresas de bienes de consumo.
  • Servicios financieros. Mejorar la detección de fraudes combinando datos sensibles de otras agencias financieras y gubernamentales. Crea una puntuación de riesgo de crédito agregando datos de clientes de varios bancos.
  • Sanidad. Comparte datos entre médicos e investigadores farmacéuticos para saber cómo reaccionan los pacientes a los tratamientos.
  • Cadena de suministro, logística y transporte. Combina datos de proveedores y profesionales del marketing para obtener una visión completa del rendimiento de los productos a lo largo de su ciclo de vida.

Roles

Hay tres roles principales en las salas blancas de datos de BigQuery:

  • Propietario de la sala blanca de datos: usuario que gestiona los permisos, la visibilidad y la pertenencia de una o varias salas blancas de datos en un proyecto. Este rol es análogo al de administrador de Analytics Hub.
  • Colaborador de datos: usuario al que el propietario de la sala blanca de datos le asigna la tarea de publicar datos en una sala blanca de datos. En muchos casos, el propietario de una sala blanca de datos también es un colaborador de datos. Este rol es análogo al de Editor de Analytics Hub.
  • Suscriptor: usuario al que el propietario de la sala blanca de datos le asigna la tarea de suscribirse a los datos publicados en una sala blanca de datos, lo que le permite ejecutar consultas sobre los datos. Este rol es análogo a una combinación de los roles Suscriptor de Analytics Hub y Propietario de la suscripción de Analytics Hub.

Arquitectura

Las salas blancas de datos de BigQuery se basan en un modelo de publicación y suscripción de datos de BigQuery. La arquitectura de BigQuery separa los recursos de computación del almacenamiento, lo que permite a los colaboradores de datos compartir datos sin tener que hacer varias copias de los datos. La siguiente imagen muestra una vista general de la arquitectura de las salas blancas de datos de BigQuery:

Los colaboradores de datos publican datos en la sala blanca de datos, que los suscriptores pueden consultar con filtros de privacidad.

Sala blanca de datos

Una sala blanca de datos es un entorno para compartir datos sensibles en el que se impide el acceso sin procesar y se aplican restricciones a las consultas. Solo los usuarios o grupos que se añadan como suscriptores a una sala limpia de datos pueden suscribirse a los datos compartidos. Los propietarios de salas blancas de datos pueden crear tantas salas como quieran en BigQuery Sharing.

Recursos compartidos

Un recurso compartido es la unidad de uso compartido de datos en una sala blanca de datos. El recurso debe ser una tabla, una vista o una rutina de BigQuery (función con valores de tabla). Como colaborador de datos, puedes crear o usar un recurso de BigQuery en tu proyecto que quieras compartir con tus suscriptores.

Fichas

Se crea un anuncio cuando un colaborador de datos añade datos a una sala blanca de datos. Contiene una referencia al recurso compartido del colaborador de datos, así como información descriptiva que ayuda a los suscriptores a usar los datos. Como colaborador de datos, puedes crear una ficha e incluir información como una descripción, consultas de ejemplo y enlaces a la documentación para tus suscriptores.

Conjuntos de datos vinculados

Un conjunto de datos vinculado es un conjunto de datos de BigQuery de solo lectura que sirve como enlace simbólico a todos los datos de una sala blanca de datos. Cuando los suscriptores consultan recursos de un conjunto de datos vinculado, se devuelven los datos de los recursos compartidos, lo que cumple las reglas de análisis definidas por el colaborador de datos. Como suscriptor, se crea un conjunto de datos vinculado en tu proyecto cuando te suscribes a una sala blanca de datos. No se crea ninguna copia de los datos y los suscriptores no pueden ver ciertos metadatos, como las definiciones de vistas.

Reglas de análisis

Como colaborador de datos, puede configurar reglas de análisis en los recursos que comparta en la sala blanca de datos. Las reglas de análisis impiden el acceso sin procesar a los datos subyacentes y aplican restricciones a las consultas. Por ejemplo, las salas limpias de datos admiten la regla de análisis de umbral de agregación, que permite a los suscriptores analizar datos solo mediante consultas de agregación.

Controles de salida de datos

Los controles de salida de datos se habilitan automáticamente para evitar que los suscriptores copien y exporten datos sin procesar de una sala blanca de datos. Los colaboradores de datos pueden configurar controles adicionales para evitar que los suscriptores copien y exporten los resultados de las consultas.

Plantillas de consultas

Las plantillas de consulta (vista previa) permiten que los propietarios de datos de salas blancas y los editores compartan consultas predefinidas sin compartir los recursos subyacentes de las tablas y las vistas.

Las consultas predefinidas usan funciones con valores de tabla (TVFs) en BigQuery para permitir que se transfiera una tabla completa o campos específicos como parámetros de entrada y que se devuelva una tabla como salida.

Limitaciones

Las salas blancas de datos de BigQuery tienen las siguientes limitaciones:

  • Solo puede definir reglas de análisis en vistas, no en tablas ni en vistas materializadas. Debido a esta limitación, si un colaborador de datos comparte directamente tablas o vistas materializadas (o vistas sin reglas de análisis) en una sala blanca de datos, los suscriptores tendrán acceso sin procesar a los datos de esos recursos.
  • Como las salas limpias de datos se basan en la plataforma de uso compartido de BigQuery, se aplican todas las limitaciones de uso compartido de BigQuery.
  • Las salas blancas de datos solo están disponibles en las regiones de uso compartido de BigQuery.
  • Como suscriptor, no puedes buscar recursos compartidos en Dataplex Universal Catalog ni en Data Catalog.
  • Como suscriptor, no puedes consultar INFORMATION_SCHEMAvistas de conjuntos de datos vinculados.
  • Como colaborador de datos, no puedes publicar un conjunto de datos completo directamente en una sala limpia de datos.
  • Como colaborador de datos, no puedes publicar modelos ni rutinas (excepto plantillas de consulta) en una sala blanca de datos.
  • Puede añadir un máximo de 100 recursos compartidos a una sala blanca de datos. Si necesitas aumentar este límite, ponte en contacto con bq-dcr-feedback@google.com.
  • Las fichas de varias regiones (vista previa) no se admiten en las salas blancas de datos.

Antes de empezar

Asigna roles de gestión de identidades y accesos (IAM) que proporcionen a los usuarios los permisos necesarios para realizar cada tarea de este documento, habilita la API Analytics Hub y asigna el rol Administrador de Analytics Hub al propietario de la sala limpia de datos (el usuario que creará la sala limpia de datos).

Permisos obligatorios

Para obtener los permisos que necesitas para usar las salas blancas de datos, pide a tu administrador que te conceda el rol de IAM Editor de datos de BigQuery (roles/bigquery.dataEditor). Para obtener más información sobre cómo conceder roles, consulta el artículo Gestionar el acceso a proyectos, carpetas y organizaciones.

Este rol predefinido contiene los permisos necesarios para usar las salas limpias de datos. Para ver los permisos exactos que se necesitan, despliega la sección Permisos necesarios:

Permisos obligatorios

Para usar las salas blancas de datos, se necesitan los siguientes permisos:

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

También puedes obtener estos permisos con roles personalizados u otros roles predefinidos.

Para obtener más información sobre los roles y permisos de gestión de identidades y accesos en BigQuery, consulta la introducción a la gestión de identidades y accesos.

Habilitar la API Analytics Hub

Para habilitar la API Analytics Hub, selecciona una de las siguientes opciones:

Consola

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

Habilitar la API Analytics Hub

bq

Ejecuta el comando gcloud services enable:

gcloud services enable analyticshub.googleapis.com

Una vez que hayas habilitado la API Analytics Hub, podrás acceder a la página Compartir (Analytics Hub).

Asignar el rol Administrador de Analytics Hub

El propietario de tu sala limpia de datos debe tener el rol de administrador de Analytics Hub (roles/analyticshub.admin). Para saber cómo asignar este rol a otros usuarios, consulta el artículo Crear administradores de Analytics Hub.

Flujos de trabajo del propietario de la sala blanca de datos

Como propietario de una sala blanca de datos, puedes hacer lo siguiente:

  • Crea una sala blanca de datos.
  • Actualiza las propiedades de la sala blanca de datos.
  • Eliminar una sala blanca de datos.
  • Gestionar colaboradores de datos.
  • Gestionar suscriptores.
  • Comparte una sala blanca de datos.

Permisos adicionales del propietario de la sala blanca de datos

Para realizar tareas de propietario de la clean room de datos, debe tener el rol de administrador de Analytics Hub (roles/analyticshub.admin) en su proyecto. Este rol también se puede asignar a nivel de carpeta o de organización, si procede.

Crear una sala blanca de datos

Consola

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

    Ir a Compartir (Analytics Hub)

  2. Haz clic en Crear clean room.

  3. En Proyecto, selecciona el proyecto de la sala blanca de datos. La API Analytics Hub debe estar habilitada en el proyecto.

  4. Especifica la ubicación, el nombre, el contacto principal, el icono (opcional) y la descripción de la sala limpia de datos. Solo se pueden incluir en la sala blanca de datos los recursos que estén en la misma región que la sala blanca de datos.

  5. Opcional: 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).

  6. Haz clic en Crear clean room.

  7. Opcional: En la sección Permisos de sala limpia, añade otros propietarios, colaboradores o suscriptores de la sala limpia de datos.

    Crea un panel de sala blanca de datos.

API

Usa el método projects.locations.dataExchanges.create y asigna el valor dcrExchangeConfig al entorno de uso compartido.

En el siguiente ejemplo se muestra cómo llamar al método projects.locations.dataExchanges.create mediante el comando curl:

  curl -H "Authorization: Bearer $(gcloud auth print-access-token)" -H "Content-Type: application/json" -L -X POST https://analyticshub.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/dataExchanges?data_exchange_id=CLEAN_ROOM_ID -d
  '{
    display_name: "CLEAN_ROOM_NAME",
    sharing_environment_config: {dcr_exchange_config: {}}
  }'

Haz los cambios siguientes:

  • PROJECT_ID: tu ID de proyecto
  • LOCATION: la ubicación de la sala blanca de datos
  • CLEAN_ROOM_ID: el ID de tu sala limpia de datos
  • CLEAN_ROOM_NAME: el nombre visible de tu data clean room

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 de la sala limpia 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.

Actualizar una sala blanca de datos

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 visible de la sala limpia de datos que quiera actualizar.

  3. En la pestaña Detalles, haga clic en Editar detalles de la sala limpia.

  4. Actualiza el nombre, el contacto principal, el icono, la descripción o el registro de correos de suscriptor de la sala limpia de datos según sea necesario.

  5. Haz clic en Guardar.

API

Usa el método projects.locations.dataExchanges.patch y asigna el valor dcrExchangeConfig al entorno de uso compartido.

En el siguiente ejemplo se muestra cómo llamar al método projects.locations.dataExchanges.patch mediante el comando curl:

curl -H "Authorization: Bearer $(gcloud auth print-access-token)" -H "Content-Type: application/json" -L -X PATCH https://analyticshub.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/dataExchanges/CLEAN_ROOM_ID?updateMask=UPDATEMASK -d
'{
  display_name: "CLEAN_ROOM_NAME",
  sharing_environment_config: {dcr_exchange_config: {}}
}'

Haz los cambios siguientes:

  • PROJECT_ID: tu ID de proyecto
  • LOCATION: la ubicación de la sala blanca de datos
  • CLEAN_ROOM_ID: el ID de tu sala limpia de datos
  • CLEAN_ROOM_NAME: el nombre visible de tu data clean room

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, introduce 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.

Eliminar una sala blanca de datos

Consola

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

    Ir a Compartir (Analytics Hub)

  2. En la fila de la sala limpia de datos que quieras eliminar, haz clic en Más acciones > Eliminar.

  3. Para confirmar la acción, introduce delete y haz clic en Eliminar. Esta acción no se puede deshacer.

API

Usa el método projects.locations.dataExchanges.delete y asigna el valor dcrExchangeConfig al entorno de uso compartido.

En el siguiente ejemplo se muestra cómo llamar al método projects.locations.dataExchanges.delete mediante el comando curl:

curl -H "Authorization: Bearer $(gcloud auth print-access-token)" -H "Content-Type: application/json" -L -X DELETE https://analyticshub.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/dataExchanges?data_exchange_id=CLEAN_ROOM_ID

Haz los cambios siguientes:

  • PROJECT_ID: tu ID de proyecto
  • LOCATION: la ubicación de la sala blanca de datos
  • CLEAN_ROOM_ID: el ID de tu sala limpia de datos
  • CLEAN_ROOM_NAME: el nombre visible de tu data clean room

Cuando eliminas una sala limpia de datos, se eliminan todas las fichas que contiene. Sin embargo, los recursos compartidos y los conjuntos de datos vinculados no se eliminan. Los conjuntos de datos vinculados se desvinculan de los conjuntos de datos de origen, por lo que las consultas de recursos en la data clean room empiezan a fallar para los suscriptores.

Gestionar colaboradores de datos

Como propietario de una sala blanca de datos, puedes gestionar qué usuarios pueden añadir datos a tus salas blancas de datos (tus colaboradores de datos). Para permitir que un usuario añada datos a una sala blanca de datos, asígnale el rol de editor de Analytics Hub (roles/analyticshub.publisher) en una sala blanca de datos específica:

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 visible de la sala limpia de datos a la que quiera conceder permisos.

  3. En la pestaña Detalles, haga clic en Definir permisos.

  4. Haz clic en Añadir principal.

  5. En Principales nuevos, introduce los nombres de usuario o los correos de los colaboradores de datos que vas a añadir.

  6. En Selecciona un rol, elige Analytics Hub > Editor de Analytics Hub.

  7. Haz clic en Guardar.

Puedes eliminar y actualizar colaboradores de datos en cualquier momento haciendo clic en Definir permisos.

API

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

En el siguiente ejemplo se muestra cómo llamar al método projects.locations.dataExchanges.setIamPolicy mediante el comando curl:

curl -H "Authorization: Bearer $(gcloud auth print-access-token)" -H "Content-Type: application/json" -L -X POST https://analyticshub.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/dataExchanges/CLEAN_ROOM_ID:setIamPolicy -d
'{
  "policy": {
    "bindings": [
      {
        "members": [
          "my-service-account@my-project.iam.gserviceaccount.com"
        ],
        "role": "roles/analyticshub.publisher"
      }
    ]
  }
}'

La política del cuerpo de la solicitud debe ajustarse a la estructura de una Policy.

Puedes asignar el rol Editor de Analytics Hub a todo un proyecto desde la página IAM, lo que permite a un usuario añadir datos a cualquier sala limpia de datos de un proyecto. Sin embargo, no recomendamos esta acción, ya que puede provocar que los usuarios tengan un acceso demasiado permisivo.

Gestionar suscriptores

Como propietario de una sala blanca de datos, puedes gestionar qué usuarios pueden suscribirse a tus salas blancas de datos (tus suscriptores). Para permitir que un usuario se suscriba a una sala limpia de datos, concédele los roles Suscriptor de Analytics Hub (roles/analyticshub.subscriber) y Propietario de la suscripción de Analytics Hub (roles/analyticshub.subscriptionOwner) en una sala limpia de datos específica:

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 visible de la sala limpia de datos a la que quiera conceder permisos.

  3. En la pestaña Detalles, haga clic en Definir permisos.

  4. Haz clic en Añadir principal.

  5. En Nuevos principales, introduce los nombres de usuario o las direcciones de correo de los suscriptores que quieras añadir.

  6. En Selecciona un rol, elige Analytics Hub > Suscriptor de Analytics Hub.

  7. Haz clic en Añadir otro rol.

  8. En Selecciona un rol, elige Centro de analíticas > Propietario de la suscripción al centro de analíticas.

  9. Haz clic en Guardar.

Puedes eliminar y actualizar suscriptores en cualquier momento haciendo clic en Definir permisos.

API

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

En el siguiente ejemplo se muestra cómo llamar al método projects.locations.dataExchanges.setIamPolicy mediante el comando curl:

curl -H "Authorization: Bearer $(gcloud auth print-access-token)" -H "Content-Type: application/json" -L -X POST https://analyticshub.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/dataExchanges/CLEAN_ROOM_ID:setIamPolicy -d
'{
  "policy": {
    "bindings": [
      {
        "members": [
          "user:mike@example.com"
        ],
        "role": "roles/analyticshub.subscriptionOwner"
      },
      {
        "members": [
          "user:mike@example.com"
        ],
        "role": "roles/analyticshub.subscriber"
      }
    ]
  }
}'

La política del cuerpo de la solicitud debe ajustarse a la estructura de una Policy.

Puede asignar los roles Suscriptor de Analytics Hub y Propietario de suscripción de Analytics Hub a todo un proyecto desde la página IAM, lo que da a un usuario permiso para suscribirse a cualquier sala limpia de datos de un proyecto. Sin embargo, no recomendamos esta acción, ya que puede provocar que los usuarios tengan un acceso demasiado permisivo.

Compartir una sala blanca de datos

Puedes compartir directamente una sala blanca de datos con los suscriptores:

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

    Ir a Compartir (Analytics Hub)

  2. En la fila de la sala limpia de datos que quieras compartir, haz clic en Más acciones > Copiar enlace para compartir.

  3. Comparte el enlace copiado con los suscriptores para que puedan ver la sala blanca de datos y suscribirse a ella.

Flujos de trabajo de colaboradores de datos

Como colaborador de datos, puedes hacer lo siguiente:

  • Añade datos a una sala blanca de datos creando una ficha.
  • Actualizar una ficha.
  • Eliminar una ficha.
  • Comparte una sala blanca de datos.
  • Monitorizar fichas.

Permisos de colaborador de datos adicionales

Para llevar a cabo tareas de colaborador de datos, debe tener el rol Editor de Analytics Hub (roles/analyticshub.publisher) en una sala blanca de datos.

Además, necesitas el permiso bigquery.datasets.link para los conjuntos de datos que contengan los recursos que quieras incluir en una sala limpia de datos. También necesitas el permiso resourcemanager.organization.get si quieres ver las salas limpias de datos de tu organización que no estén en tu proyecto actual.

Crear una ficha (añadir datos)

Para preparar datos con reglas de análisis y publicarlos en una sala blanca de datos como ficha, siga 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 visible de la sala limpia de datos en la que quiera crear una ficha.

    Si perteneces a una organización diferente a la del propietario de la sala blanca de datos y no puedes verla, pídele al propietario un enlace directo.

  3. Haz clic en Añadir datos.

  4. En Seleccionar conjunto de datos y Nombre de tabla o vista, introduce la tabla o la vista que quieras incluir en la sala limpia de datos y el conjunto de datos correspondiente. En unos pasos, añadirá reglas de análisis para evitar el acceso sin procesar a estos datos subyacentes.

  5. Seleccione las columnas del recurso que quiera publicar.

  6. Indica el nombre de la vista, el contacto principal y la descripción (opcional) de la ficha.

  7. Haz clic en Siguiente.

  8. Elige una regla de análisis para tu ficha y configura los detalles.

  9. Defina los controles de salida de datos de la ficha.

  10. Haz clic en Siguiente.

  11. Revisa los datos y la regla de análisis que vas a añadir a la sala limpia de datos.

  12. Haz clic en Añadir datos. Se crea una vista de tus datos y se añade como un anuncio a la sala blanca de datos. La tabla o la vista de origen no se añade.

API

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

En el siguiente ejemplo se muestra cómo llamar al método projects.locations.dataExchanges.listings.create mediante el comando curl:

  curl -H "Authorization: Bearer $(gcloud auth print-access-token)" -H "Content-Type: application/json" -H 'x-goog-user-project:DCR_PROJECT_ID' -X POST https://analyticshub.googleapis.com/v1/projects/DCR_PROJECT_ID/locations/LOCATION/dataExchanges/CLEAN_ROOM_ID/listings?listingId=LISTING_ID -d
  '{"bigqueryDataset":{"dataset":"projects/PROJECT_ID/datasets/DATASET_ID","selectedResources":[{"table":"projects/PROJECT_ID/datasets/DATASET_ID/tables/VIEW_ID"}],},"displayName":LISTING_NAME"}'

Haz los cambios siguientes:

  • DCR_PROJECT_ID: el ID del proyecto en el que se creó la sala limpia de datos
  • PROJECT_ID: el ID del proyecto en el que se encontraba el conjunto de datos de origen
  • DATASET_ID: el ID del conjunto de datos de origen
  • LOCATION: la ubicación de la sala blanca de datos
  • CLEAN_ROOM_ID: el ID de tu sala limpia de datos
  • LISTING_ID: el ID de tu ficha
  • LISTING_NAME: nombre de tu ficha
  • VIEW_ID: tu ID de vista. La vista que añadas a una sala blanca de datos debe ser una vista autorizada configurada con reglas de análisis.

Al incluir un recurso en una sala blanca de datos, concedes acceso a los datos del recurso compartido a todos los suscriptores actuales y futuros de la sala blanca de datos.

Si intenta crear una ficha con un recurso compartido que no tenga una regla de análisis, se le mostrará una advertencia que indica que los suscriptores podrán acceder a los datos sin procesar de ese recurso. Si confirmas que quieres publicar esos recursos sin reglas de análisis, podrás crear la ficha.

Si aparece el error Failed to save listing, asegúrate de que tienes los permisos necesarios para realizar tareas de colaborador de datos.

Actualizar una ficha

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 visible de la sala limpia de datos que contenga la ficha.

  3. En la fila de la ficha que quieras actualizar, haz clic en Más acciones > Editar ficha.

  4. Actualiza el contacto principal o la descripción según sea necesario.

  5. Haz clic en Siguiente.

  6. Actualice la regla de análisis según sea necesario. Solo puedes actualizar los parámetros de la regla elegida. No puedes cambiar a otra regla.

  7. Haz clic en Siguiente.

  8. Revisa la ficha y haz clic en Añadir datos.

API

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

En el siguiente ejemplo se muestra cómo llamar al método projects.locations.dataExchanges.listings.patch mediante el comando curl:

curl -H "Authorization: Bearer $(gcloud auth print-access-token)" -H "Content-Type: application/json" -H 'x-goog-user-project:DCR_PROJECT_ID' -X PATCH https://analyticshub.googleapis.com/v1/projects/DCR_PROJECT_ID/locations/LOCATION/dataExchanges/CLEAN_ROOM_ID/listings/listingId=LISTING_ID?updateMask=displayName -d
'{"displayName":LISTING_NAME"}'

Haz los cambios siguientes:

  • DCR_PROJECT_ID: el ID del proyecto en el que se creó la clean room
  • LOCATION: la ubicación de la sala blanca de datos
  • CLEAN_ROOM_ID: el ID de tu sala limpia de datos
  • LISTING_ID: el ID de tu ficha
  • LISTING_NAME: nombre de tu ficha

No puedes cambiar el recurso de origen ni los controles de salida de datos de una ficha después de crearla.

Eliminar una ficha

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 visible de la sala limpia de datos que contenga la ficha.

  3. En la fila de la ficha que quieras eliminar, haz clic en Más acciones > Eliminar fichas.

  4. Para confirmar la acción, introduce delete y haz clic en Eliminar. No puedes deshacer esta acción.

API

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

En el siguiente ejemplo se muestra cómo llamar al método projects.locations.dataExchanges.listings.delete mediante el comando curl:

curl -H "Authorization: Bearer $(gcloud auth print-access-token)" -H "Content-Type: application/json" -H 'x-goog-user-project:DCR_PROJECT_ID' -X DELETE https://analyticshub.googleapis.com/v1/projects/DCR_PROJECT_ID/locations/LOCATION/dataExchanges/CLEAN_ROOM_ID/listings?listingId=LISTING_ID

Haz los cambios siguientes:

  • DCR_PROJECT_ID: el ID del proyecto en el que se creó la clean room
  • LOCATION: la ubicación de la sala blanca de datos
  • CLEAN_ROOM_ID: el ID de tu sala limpia de datos
  • LISTING_ID: el ID de tu ficha

Cuando eliminas una ficha, no se eliminan los recursos compartidos ni los conjuntos de datos vinculados. Los conjuntos de datos vinculados se desvinculan de los conjuntos de datos de origen, por lo que las consultas de datos de esa lista empiezan a fallar para los suscriptores.

Compartir una sala blanca de datos

Puedes compartir directamente una sala blanca de datos con los suscriptores:

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

    Ir a Compartir (Analytics Hub)

  2. En la fila de la sala limpia de datos que quieras compartir, haz clic en Más acciones > Copiar enlace para compartir.

  3. Comparte el enlace copiado con los suscriptores para que puedan ver la sala blanca de datos y suscribirse a ella.

Monitorizar fichas

Para ver las métricas de uso de los conjuntos de datos de origen de los recursos que compartes en una sala limpia de datos, consulta la vista INFORMATION_SCHEMA.SHARED_DATASET_USAGE.

Para ver los suscriptores de tu ficha, sigue estos pasos:

  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 visible de la sala limpia de datos.

  3. En la fila de la ficha que quiera ver, haga clic en Más acciones > Ver suscripciones.

Flujos de trabajo de suscriptores

Un suscriptor puede ver una sala blanca de datos y suscribirse a ella. Al suscribirse a una sala limpia de datos, se crea un conjunto de datos vinculado en el proyecto del suscriptor. Cada conjunto de datos vinculado tiene el mismo nombre que la sala limpia de datos.

No puedes suscribirte a una ficha específica de una sala blanca de datos. Solo puedes suscribirte a la sala blanca de datos.

Permisos adicionales para suscriptores

Para realizar tareas de suscriptor en una sala limpia de datos, debes tener los roles Suscriptor de Analytics Hub (roles/analyticshub.subscriber) y Propietario de la suscripción de Analytics Hub (roles/analyticshub.subscriptionOwner).

Además, necesitas el permiso bigquery.datasets.create en un proyecto para crear un conjunto de datos vinculado cuando te suscribes a una sala limpia.

Suscribirse a una sala blanca de datos

Si te suscribes a una sala blanca de datos, podrás consultar los datos de las fichas creando un conjunto de datos vinculado en tu proyecto. Para suscribirte a una sala limpia de datos, sigue estos pasos:

Consola

  1. En la Google Cloud consola, ve a la página BigQuery.

    Ir a BigQuery

  2. En el panel Explorador, haz clic en Añadir datos.

  3. Selecciona Compartir (Analytics Hub). Se abrirá una página de descubrimiento.

  4. Para ver las salas blancas de datos a las que tienes acceso, selecciona Salas blancas en la lista de filtros.

  5. Haz clic en la sala blanca de datos a la que quieras suscribirte. Se abrirá una página de descripción de la sala blanca de datos. En esta página, también puedes ver si el proveedor ha habilitado el registro de correos de los suscriptores.

  6. Haz clic en Suscribirme.

  7. Selecciona el proyecto de destino de la suscripción y haz clic en Suscribir.

API

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

En el siguiente ejemplo se muestra cómo llamar al método projects.locations.dataExchanges.subscribe mediante el comando curl:

  curl -H "Authorization: Bearer $(gcloud auth print-access-token)" -H "Content-Type: application/json" -L -X POST https://analyticshub.googleapis.com/v1/projects/DCR_PROJECT_ID/locations/LOCATION/dataExchanges/CLEAN_ROOM_ID:subscribe  --data '{"destination":"projects/SUBSCRIBER_PROJECT_ID/locations/LOCATION","subscription":"SUBSCRIPTION"}'

Haz los cambios siguientes:

  • DCR_PROJECT_ID: el ID del proyecto en el que se creó la clean room
  • SUBSCRIBER_PROJECT_ID: el ID de proyecto del proyecto suscriptor
  • LOCATION: la ubicación de la sala blanca de datos
  • CLEAN_ROOM_ID: el ID de tu sala limpia de datos
  • SUBSCRIPTION: el nombre de tu suscripción

En el cuerpo de la solicitud, especifica el conjunto de datos en el que quieres crear el conjunto de datos vinculado. Si la solicitud se realiza correctamente, el cuerpo de la respuesta contiene el objeto de suscripción. Si habilita el registro de correos de suscriptores (Vista previa) en la sala blanca de datos, la respuesta de suscripción contendrá log_linked_dataset_query_user_email: true.

El conjunto de datos vinculado se añade al proyecto que has especificado y está disponible para realizar consultas.

Como suscriptor, puedes editar algunos metadatos de tus conjuntos de datos vinculados, como la descripción y las etiquetas. También puedes definir permisos en tus conjuntos de datos vinculados. Sin embargo, los cambios que se hagan en los conjuntos de datos vinculados no afectarán a los conjuntos de datos de origen. Tampoco puedes ver las definiciones de las vistas.

Los recursos incluidos en conjuntos de datos vinculados son de solo lectura. Como suscriptor, no puedes editar los datos ni los metadatos de los recursos de los conjuntos de datos vinculados. Tampoco puedes especificar permisos para recursos concretos del conjunto de datos vinculado.

Para dejar de usar la sala blanca de datos, elimina el conjunto de datos vinculado.

Consultar datos de un conjunto de datos vinculado

Para consultar datos de un conjunto de datos vinculado, usa la sintaxis SELECT WITH AGGREGATION_THRESHOLD, que te permite ejecutar consultas en vistas en las que se aplican reglas de análisis. Para ver un ejemplo de esta sintaxis, consulta Consultar una regla de análisis de umbrales de agregación: vista aplicada.

Situación de ejemplo: análisis de la atribución de anunciantes y editores

Un anunciante quiere hacer un seguimiento de la eficacia de sus campañas de marketing. El anunciante tiene datos propios sobre sus clientes, como su historial de compras, datos demográficos e intereses. El editor tiene datos de su sitio web, como los anuncios que se han mostrado a los visitantes y sus conversiones.

El anunciante y el editor acuerdan usar una sala limpia de datos para combinar datos y medir los resultados de sus campañas. En este caso, el editor crea la sala blanca de datos y pone sus datos a disposición del anunciante para que realice el análisis. El resultado es un informe de atribución que muestra al anunciante qué anuncios han sido los más eficaces a la hora de impulsar las ventas. El anunciante puede usar esta información para mejorar sus futuras campañas de marketing.

El anunciante y el editor coordinan la sala blanca de datos de BigQuery mediante el siguiente proceso:

Crear la sala limpia de datos (editor)

  1. El propietario de una sala blanca de datos de la organización editora habilita la API Analytics Hub en su proyecto de BigQuery y asigna al usuario A como propietario de la sala blanca de datos (administrador de Analytics Hub).
  2. El usuario A crea una sala blanca de datos llamada Campaign Analysis y le asigna los siguientes permisos:
    • Colaborador de datos (editor de Analytics Hub): usuario B, ingeniero de datos de la organización editora.
    • Suscriptor (suscriptor del centro de análisis y propietario de la suscripción): Usuario C, analista de marketing de la organización del anunciante.

Añadir datos a la sala limpia de datos (editor)

  1. El usuario B crea una ficha en la sala blanca de datos llamada Publisher Conversion Data. Como parte del proceso de creación de fichas, se crea una vista con reglas de análisis.

Suscribirse a la sala blanca de datos (anunciante)

  1. El usuario C se suscribe a la sala blanca de datos, lo que crea un conjunto de datos vinculado para todos los anuncios de la sala blanca de datos, incluido el anuncio Publisher Conversion Data.
  2. El usuario C ahora puede ejecutar consultas de agregación para combinar los datos de este conjunto de datos vinculado con sus datos propios y medir la eficacia de la campaña.

Resolución de entidades

Los casos prácticos de las salas blancas de datos suelen requerir la vinculación de entidades entre conjuntos de datos de colaboradores y suscriptores que no incluyen un identificador común. Los suscriptores y los colaboradores de datos pueden representar los mismos registros de forma diferente en varios conjuntos de datos, ya sea porque los conjuntos de datos proceden de diferentes fuentes de datos o porque usan identificadores de diferentes espacios de nombres.

Como parte de la preparación de datos, la resolución de entidades en BigQuery hace lo siguiente:

  • En el caso de los colaboradores de datos, elimina los duplicados y resuelve los registros de sus recursos compartidos mediante identificadores de un proveedor común de su elección. Este proceso permite que se unan varios colaboradores.
  • En el caso de los suscriptores, se eliminan los duplicados y se resuelven los registros de sus conjuntos de datos propios, y se vinculan a entidades de los conjuntos de datos de los colaboradores. Este proceso permite combinar datos de suscriptores y colaboradores de datos.

Para configurar la resolución de entidades con el proveedor de identidades que elijas, consulta Configurar y usar la resolución de entidades en BigQuery.

Descubrir recursos de salas blancas de datos

Para encontrar todas las salas blancas de datos a las que tienes acceso, sigue estos pasos:

  • Los propietarios y colaboradores de salas blancas de datos pueden ir a la página Compartir (Analytics Hub) de laGoogle Cloud consola.

    Ir a Compartir (Analytics Hub)

    Se mostrarán todas las salas blancas de datos a las que puedes acceder.

  • Para los suscriptores, haz lo siguiente:

    1. En la Google Cloud consola, ve a la página BigQuery.

      Ir a BigQuery

    2. En el panel Explorador, haz clic en Añadir datos.

    3. Selecciona Compartir (Analytics Hub). Se abrirá una página de descubrimiento.

    4. Para ver las salas blancas de datos a las que tienes acceso, selecciona Salas blancas en la lista de filtros.

Para encontrar todos los conjuntos de datos vinculados creados por las salas blancas de datos de tu proyecto, ejecuta el siguiente comando en un entorno de línea de comandos:

PROJECT=PROJECT_ID \
for dataset in $(bq ls --project_id $PROJECT | tail +3); \
do [ "$(bq show -d --project_id $PROJECT $dataset | egrep LINKED)" ] \
&& echo $dataset; done

Sustituye PROJECT_ID por el proyecto que contiene los conjuntos de datos vinculados.

Precios

A los colaboradores de datos solo se les cobra por el almacenamiento de datos. Solo se cobra a los suscriptores por el cálculo (análisis) cuando ejecutan consultas.

Siguientes pasos