Uso compartido de transmisiones con Pub/Sub

Puedes compartir temas de Pub/Sub a través de Analytics Hub para seleccionar y distribuir una biblioteca de datos de transmisión en varios límites organizacionales internos y externos. Los datos de transmisión en tiempo real se comparten mediante los intercambios y las fichas de Analytics Hub, lo que te permite categorizar y agrupar de forma lógica grandes conjuntos de temas de Pub/Sub y aprovisionar acceso a gran escala.

Puedes compartir datos de transmisión para realizar las siguientes acciones:

  • Servicios financieros:
    • Comparte en tiempo real los precios de los instrumentos, las cotizaciones y los pedidos que cambian rápidamente
    • Detecta el lavado de dinero y el fraude en los pagos
    • Compatibilidad con los cálculos de riesgos comerciales
  • Venta minorista y bienes de consumo envasados (CPG):
    • Ayuda a las tiendas a administrar el inventario en tiempo real
    • Personaliza el marketing y la asistencia al cliente
    • Ajusta los precios de forma dinámica
    • Supervisa canales de redes sociales
    • Optimiza los diseños de tiendas físicas
  • Servicios de salud:
    • Potencia los algoritmos predictivos para supervisar pacientes y analizar riesgos en tiempo real
    • Supervisa las métricas con dispositivos médicos que puedas ponerte
    • Adquisición, estructura, almacenamiento y procesamiento automáticos de datos de pacientes, profesionales de la salud y administración de instalaciones
  • Telecomunicaciones:
    • Revisa el estado de la red y predice fallas
    • Descubre patrones de comportamiento de los usuarios para ubicar mejor los dispositivos y las antenas

Funciones

Los roles para compartir temas de Pub/Sub son similares a compartir conjuntos de datos de BigQuery:

Arquitectura

En el siguiente diagrama, se describe cómo interactúan los publicadores y suscriptores a los recursos de Pub/Sub con Analytics Hub:

Interacción entre los publicadores de Analytics Hub y Analytics Hub.
Figura 1. Flujo de trabajo del publicador y suscriptor de Analytics Hub con temas de Pub/Sub.

Temas compartidos

Un tema compartido es la unidad que se comparte de un tema de Pub/Sub en Analytics Hub. Como publicador, debes crear o usar un tema de Pub/Sub existente para distribuir datos de mensajes a tus suscriptores. Analytics Hub no replica el tema de Pub/Sub de origen.

Fichas

Se crea una ficha cuando un publicador agrega un tema compartido a un intercambio. Contiene una referencia al tema compartido.

Intercambios

Un intercambio es una agrupación lógica de fichas que hacen referencia a temas compartidos.

Suscripciones Pub/Sub vinculadas

Cuando te suscribes a una ficha con un tema compartido, se crea una suscripción a Pub/Sub vinculada en el proyecto del suscriptor. Una suscripción de Pub/Sub también se representa en el proyecto de Publisher como una suscripción a Pub/Sub y una suscripción de ficha de Analytics Hub.

Limitaciones

El uso compartido de transmisiones con Pub/Sub tiene las siguientes limitaciones:

  • Un tema compartido puede tener un máximo de 10,000 suscripciones a Pub/Sub. Este límite incluye las suscripciones de Pub/Sub vinculadas y las suscripciones de Pub/Sub creadas fuera de Analytics Hub, por ejemplo, las suscripciones creadas directamente desde Pub/Sub.
  • Los temas compartidos se indexan en Data Catalog, pero no puedes filtrar específicamente por su tipo de recurso.
  • No se capturan las métricas de uso de las suscripciones de Pub/Sub vinculadas en Analytics Hub. Puedes ver las métricas de uso en Pub/Sub.

Habilita la API de Analytics Hub

Para habilitar la API de Analytics Hub, haz lo siguiente:

Console

Ve a la biblioteca de API y habilita la API de Analytics Hub para tu proyecto de Google Cloud.

Habilita la API de Analytics Hub

gcloud

Ejecuta el comando gcloud services enable:

gcloud services enable analyticshub.googleapis.com

Habilita la API de Pub/Sub

Ve a la biblioteca de API y habilita la API de Pub/Sub para tu proyecto de Google Cloud.

Habilita la API de Pub/Sub

Flujos de trabajo del publicador

Como publicador de Analytics Hub, puedes hacer lo siguiente:

  • Crear una ficha para agregar temas compartidos a un intercambio
  • Actualiza una ficha
  • Borra una ficha
  • Comparte una ficha
  • Administra las suscripciones a tu ficha
  • Quitar suscriptores de tu ficha

Permisos adicionales del publicador

Para realizar tareas de publicador, debes tener el rol Publicador de Analytics Hub (roles/analyticshub.publisher) en un intercambio o una ficha. Para ver todos los intercambios de datos de proyectos en una organización a la que tienes acceso, debes tener el permiso resourcemanager.organizations.get.

Además, necesitas el permiso pubsub.topics.setIamPolicy en el tema de Pub/Sub que deseas enumerar. Para compartir temas con un esquema adjunto, debes otorgar a los suscriptores de Analytics Hub el permiso pubsub.schemas.get en el esquema adjunto al tema. Esto permite que los suscriptores de Analytics Hub analicen correctamente los mensajes de la suscripción a Pub/Sub.

Crea una ficha (para agregar un tema compartido)

Para agregar un tema compartido a una ficha, selecciona una de las siguientes opciones:

Console

  1. Ve a la página Analytics Hub.

    Ir a Analytics Hub

    Aparecerá una página que enumera todos los intercambios de datos a los que puedes acceder.

  2. Haz clic en el nombre del intercambio de datos en el que deseas crear la ficha.

  3. Haz clic en Crear ficha.

  4. En la página Crear ficha, selecciona “Tema de Pub/Sub” en el menú desplegable Tipo de recurso.

  5. Selecciona un tema de Pub/Sub existente en el menú desplegable Tema compartido o haz clic en Crear un tema.

  6. En la página Detalles de la ficha, en Nombre visible, ingresa el nombre de la ficha.

  7. Ingresa los siguientes detalles opcionales:

    • Categoría: Selecciona hasta dos categorías que representen de mejor manera tu ficha. Los suscriptores pueden filtrar fichas según estas categorías.

    • Afinidad de datos: las regiones que usa el publicador para publicar los datos. Esta información es útil para que los suscriptores minimicen o eviten los costos de salida de red de Pub/Sub mediante la lectura de los datos desde la misma región. Para obtener más información sobre los costos de salida, consulta Costos de transferencia de datos.

    • Ícono: Un ícono para tu ficha. Se admiten los formatos de archivo PNG y JPEG. Los íconos deben tener un tamaño de archivo de menos de 512 KiB y dimensiones de no más de 512 x 512 píxeles.

    • Descripción: Una descripción breve de tu ficha. Los suscriptores pueden buscar fichas según la descripción.

    • Visibilidad pública: Habilita la visibilidad pública de tu ficha en el catálogo de Analytics Hub. También debes establecer permisos para la ficha. Haz clic en Acciones del intercambio y en Establecer permisos. Otorga a allUsers o allAuthenticatedusers el rol Analytics Hub Viewer. Haz clic en Permitir acceso público.

    • Documentación > Markdown: información adicional, como vínculos a cualquier documentación relevante y cualquier información adicional que pueda ayudar a los suscriptores a usar tu tema.

  8. En la página Información de contacto de la ficha, ingresa los siguientes detalles opcionales:

    • Contacto principal: Ingresa un correo electrónico o una URL del contacto principal de la ficha.

    • Solicitar contacto de acceso: Ingresa un correo electrónico o una URL del formulario de admisión para que los suscriptores se comuniquen contigo.

    • Proveedor: Expande la sección Proveedor y especifica los detalles en los siguientes campos:

      • Nombre del proveedor: el nombre del proveedor del tema.
      • Contacto principal del proveedor: Un correo electrónico o una URL del contacto principal del proveedor del tema.

      Los suscriptores pueden filtrar las fichas según los proveedores de datos.

    • Publicador: Expande la sección Publicador y especifica los detalles en los siguientes campos:

      • Nombre del publicador: el nombre del publicador que crea la ficha.
      • Contacto principal del publicador: Un correo electrónico o una URL del contacto principal del publicador del tema.
  9. Revisa la página Vista previa de la ficha.

  10. Haz clic en Publicar.

API

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

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

Reemplaza lo siguiente:

  • PROJECT_ID: el ID del proyecto que contiene el intercambio de datos en el que deseas crear la ficha.
  • LOCATION: la ubicación de tu intercambio de datos. Para obtener más información sobre las ubicaciones compatibles con Analytics Hub, consulta Regiones admitidas.
  • DATAEXCHANGE_ID: el ID del intercambio de datos.
  • LISTING_ID: el ID de la ficha.

En el cuerpo de la solicitud, proporciona los detalles de la ficha. Si la solicitud se realiza de forma correcta, el cuerpo de la respuesta contendrá detalles de la ficha.

Para obtener más información sobre las tareas que puedes realizar en las fichas mediante las API, consulta Métodos projects.locations.dataExchanges.listings.

Actualiza una ficha

Para actualizar una ficha, elige una de las siguientes opciones:

Console

  1. Ve a la página Analytics Hub.

    Ir a Analytics Hub

  2. Haz clic en el nombre del intercambio de datos que contiene la ficha.

  3. Haz clic en la ficha que deseas actualizar.

  4. Haz clic en Editar ficha.

  5. Modifica los valores en los campos. Puedes modificar todos los valores, excepto el tema compartido de la ficha.

  6. Para guardar los cambios, haz clic en Publicar.

API

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

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

Reemplaza lo siguiente:

  • PROJECT_ID: el ID del proyecto que contiene el intercambio de datos en el que deseas crear la ficha.
  • LOCATION: la ubicación de tu intercambio de datos. Para obtener más información sobre las ubicaciones compatibles con Analytics Hub, consulta Regiones admitidas.
  • DATAEXCHANGE_ID: el ID del intercambio de datos.
  • LISTING_ID: el ID de la ficha.
  • UPDATEMASK: la lista de campos que deseas actualizar. Si deseas actualizar varios valores, usa una lista separada por comas.

En el cuerpo de la solicitud, especifica los valores actualizados.

Para obtener más información sobre las tareas que puedes realizar en las fichas mediante las API, consulta Métodos projects.locations.dataExchanges.listings.

Borra una ficha

No se pueden borrar las fichas con temas de Pub/Sub compartidos con suscripciones activas. Revoca todas las suscripciones activas antes de intentar borrar una ficha de tema compartido. Una vez que se borra una ficha, no puedes deshacerlo. Para borrar una ficha, elige una de las siguientes opciones:

Console

  1. Ve a la página Analytics Hub.

    Ir a Analytics Hub

  2. Haz clic en el nombre del intercambio de datos que contiene la ficha.

  3. Haz clic en la ficha que deseas borrar.

  4. Haz clic en Borrar.

  5. En el cuadro de diálogo ¿Borrar ficha?, escribe borrar para confirmar la eliminación.

  6. Haz clic en Borrar.

API

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

DELETE https://analyticshub.googleapis.com/v1/projects/PROJECT_ID/location/LOCATION/dataExchanges/DATAEXCHANGE_ID/listings/LISTING_ID

Reemplaza lo siguiente:

  • PROJECT_ID: el ID del proyecto que contiene el intercambio de datos en el que deseas crear la ficha.
  • LOCATION: la ubicación de tu intercambio de datos. Para obtener más información sobre las ubicaciones compatibles con Analytics Hub, consulta Regiones admitidas.
  • DATAEXCHANGE_ID: el ID del intercambio de datos.
  • LISTING_ID: el ID de la ficha.

Para obtener más información sobre las tareas que puedes realizar en las fichas mediante las API, consulta Métodos projects.locations.dataExchanges.listings.

Comparte una ficha

Si deseas otorgar a los usuarios acceso a una ficha privada, debes configurar una política de IAM para una persona o un grupo para esa ficha. Para una ficha comercial, tu intercambio de datos debe ser público. Las fichas de un intercambio de datos públicos aparecen en Analytics Hub para todos los usuarios de Google Cloud (allAuthenticatedUsers). Para permitir que los usuarios soliciten acceso a las fichas comerciales, debes otorgarles el rol Analytics Hub Viewer.

A fin de otorgar a los usuarios acceso para ver tu ficha o suscribirse a ella, sigue estos pasos:

  1. Ve a la página Analytics Hub.

    Ir a Analytics Hub

  2. Haz clic en el nombre del intercambio de datos que contiene la ficha.

  3. Haz clic en la ficha a la que deseas agregar suscriptores.

  4. Haz clic en Establecer permisos.

  5. Para agregar principales, haz clic en Agregar principal.

  6. En el campo Principales nuevos, agrega los siguientes detalles según el tipo de ficha:

    • Para una ficha privada, ingresa el correo electrónico de la identidad a la que deseas otorgar acceso.
    • Para una ficha pública, agrega allAuthenticatedUsers.
  7. En Selecciona un rol, mantén el puntero sobre Analytics Hub y, luego, según el tipo de ficha, selecciona uno de los siguientes roles:

    • Para una ficha comercial, selecciona el rol Analytics Hub Viewer. Este rol permite a los usuarios ver la ficha y solicitar acceso.
    • Para una ficha pública privada o no comercial, selecciona el rol de suscriptor de Analytics Hub. Este rol permite que los usuarios se suscriban a tu ficha.
  8. Haz clic en Guardar.

Para obtener más información, consulta los roles de suscriptor y visualizador de Analytics Hub.

Administrar suscripciones

Para permitir que un usuario se suscriba a una ficha con un tema compartido, otórgale los roles de Suscriptor de Analytics Hub (roles/analyticshub.subscriber) y de Propietario de la suscripción a Analytics Hub (roles/analyticshub.subscriptionOwner ) en una ficha específica:

  1. Ve a la página Analytics Hub.

    Ir a Analytics Hub

  2. Haz clic en el nombre del intercambio de datos que contiene la ficha para la que deseas administrar las suscripciones.

  3. Haz clic en la ficha para la que deseas enumerar todos los suscriptores.

  4. Haz clic en Establecer permisos.

  5. Para agregar principales, haz clic en Agregar principal.

  6. En el campo Principales nuevas, ingresa los nombres de usuario o los correos electrónicos de los suscriptores que deseas agregar.

  7. En Seleccionar un rol, selecciona Analytics Hub > Suscriptor de Analytics Hub.

  8. Haz clic en Agregar otro rol.

  9. En Seleccionar un rol, selecciona Analytics Hub > Propietario de la suscripción a Analytics Hub.

  10. Haz clic en Guardar.

Puedes borrar y actualizar suscriptores en cualquier momento; para ello, haz clic en Establecer permisos.

Cómo revocar una suscripción

Para quitar una suscripción a una ficha de tema compartida desde Analytics Hub, selecciona una de las siguientes opciones:

Console

  1. Para enumerar todos los suscriptores de una ficha, sigue las instrucciones de la consola de Google Cloud en Visualiza todas las suscripciones.

  2. Haz clic en la pestaña Suscripciones para ver todas las suscripciones al intercambio de datos.

  3. Selecciona la casilla de verificación junto a las suscripciones que quieres quitar o selecciona todas las suscripciones.

  4. En el cuadro de diálogo ¿Revocar suscripción?, ingresa revocar para confirmar.

  5. Haz clic en Revocar.

API

Para borrar una suscripción, usa el método projects.locations.subscriptions.revoke.

POST https://analyticshub.googleapis.com/v1/projects/PROJECT_ID/location/LOCATION/subscriptions/SUBSCRIPTION_ID:revoke

Reemplaza lo siguiente:

  • PROJECT_ID: el ID del proyecto de la suscripción que deseas quitar.
  • LOCATION: la ubicación de la suscripción.
  • SUBSCRIPTION_ID: el ID de la suscripción que deseas quitar.

Cuando revocas una suscripción de Analytics Hub, un suscriptor ya no recibe datos de mensajes del tema compartido. La suscripción a Pub/Sub está desconectada del tema compartido. Si se borra una suscripción directamente de Pub/Sub, la suscripción a Analytics Hub persistirá y se deberá limpiar.

Flujos de trabajo de los suscriptores

Como suscriptor de Analytics Hub, puedes ver una ficha y suscribirte a ella. Suscribirse a una ficha de un tema compartido crea una suscripción de Pub/Sub vinculada en el proyecto del suscriptor. La suscripción a Pub/Sub se verá en el proyecto del publicador.

Permisos adicionales de suscriptor

Debes tener el rol Suscriptor de Analytics Hub (roles/analyticshub.subscriber) a nivel de proyecto, intercambio o ficha para realizar tareas de suscriptor.

Suscríbete a una lista de temas compartida

Para suscribirte a una ficha con un tema compartido, selecciona una de las siguientes opciones:

Console

  1. Para ver una lista de las fichas a las que tienes acceso, sigue los pasos que se indican en Visualiza las fichas.

  2. Explora las fichas y haz clic en la que quieras suscribirte. Aparecerá un cuadro de diálogo con los detalles de la ficha.

  3. Haz clic en Suscribirse para abrir el cuadro de diálogo Crear suscripción.

  4. Si no tienes habilitada la API de Analytics Hub en tu proyecto, aparecerá un mensaje de error con un vínculo para habilitar la API. Haz clic en Habilitar la API de Analytics Hub.

  5. En el cuadro de diálogo Crear suscripción, especifica los siguientes detalles:

    • ID de la suscripción: Especifica el nombre de la suscripción que crearás.
    • Tipo de publicación: Selecciona el mecanismo sobre cómo se entregarán los datos del mensaje.
    • Duración de la retención de mensajes: establece la duración de la retención de mensajes.
    • Período de vencimiento: Se establece en qué momento vence la suscripción después de la inactividad, si es que sucede.
    • Plazo de confirmación: establece el plazo límite de confirmación.
    • Filtro de suscripción: establece la sintaxis del filtro en los mensajes.
    • Entrega “exactamente una vez”: Habilita la entrega “exactamente una vez”.
    • Ordenamiento de mensajes: Habilita el orden de los mensajes con una clave de orden.
    • Mensajes no entregados: habilita los mensajes no entregados.
    • Política de reintentos: Establece una política de reintentos.

    Para obtener más información sobre las propiedades de suscripción de Pub/Sub, consulta propiedades de suscripción.

  6. Para guardar los cambios, haz clic en Crear. La suscripción de Pub/Sub vinculada se crea en tu proyecto.

API

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

POST https://analyticshub.googleapis.com/v1/projects/PROJECT_ID/location/LOCATION/dataExchanges/DATAEXCHANGE_ID/listings/LISTING_ID:subscribe

Reemplaza lo siguiente:

  • PROJECT_ID: el ID del proyecto de la ficha a la que deseas suscribirte.
  • LOCATION: la ubicación de la ficha a la que deseas suscribirte.
  • DATAEXCHANGE_ID: el ID del intercambio de datos de la ficha a la que deseas suscribirte.
  • LISTING_ID: el ID de la ficha a la que deseas suscribirte.

En el cuerpo de la solicitud, especifica la suscripción a Pub/Sub en la que deseas crear la suscripción a Pub/Sub vinculada. Si se ejecuta correctamente, el cuerpo de la respuesta está vacío.

Para obtener más información sobre las suscripciones a Pub/Sub, consulta la descripción general de las suscripciones.

Precios

No se aplican cargos adicionales a los publicadores de temas de Pub/Sub por enumerar y compartir temas a través de Analytics Hub. Se cobra a los publicadores por la cantidad total de bytes escritos (capacidad de procesamiento de publicación) en el tema compartido y la salida de red (si corresponde). A los suscriptores se les cobra por la cantidad total de bytes leídos (capacidad de procesamiento de suscripción) de la suscripción vinculada y la salida de red (si corresponde). Consulta los precios de Pub/Sub para obtener más detalles.

Controles del servicio de VPC

Para los temas compartidos de proyectos que tienen perímetros de Controles del servicio de VPC, puedes configurar las reglas de entrada y salida adecuadas necesarias para otorgar acceso a los publicadores y suscriptores.