Uso compartido de transmisiones con Pub/Sub
Puedes compartir temas de Pub/Sub a través del uso compartido de BigQuery (anteriormente 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 a través de los intercambios y las fichas de uso compartido de BigQuery, 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.
- Detectar el lavado de dinero y el fraude en los pagos
- Admite cálculos de riesgos comerciales.
- Venta minorista y bienes de consumo envasados (CPG):
- Administrar el inventario de la tienda en tiempo real
- Personaliza el marketing y la asistencia al cliente.
- Ajusta los precios de forma dinámica.
- Supervisa los canales de redes sociales.
- Optimiza los diseños de las 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.
- Adquirir, estructurar, almacenar y procesar automáticamente datos de pacientes, profesionales de la salud y administración de instalaciones
- Telecomunicaciones:
- Supervisar el estado de la red y predecir fallas
- Descubre patrones de comportamiento de los usuarios para ubicar mejor los dispositivos y las antenas.
Roles obligatorios
Los roles para compartir temas de Pub/Sub son similares a compartir conjuntos de datos de BigQuery:
- Administrador: Administra los permisos, la visibilidad y la membresía de los intercambios y las fichas. Este rol es análogo al rol de IAM de administrador de Analytics Hub (
roles/analyticshub.admin). - Publicador de temas compartidos: Crea, administra y otorga acceso a las fichas de los temas de Pub/Sub compartidos. Este rol es análogo al rol de IAM de publicador de Analytics Hub o administrador de fichas de Analytics Hub. El publicador es un usuario, no la aplicación de publicador que crea y envía mensajes al tema.
- Suscriptor del tema compartido: Se suscribe a la ficha de temas compartida. Los suscriptores de temas compartidos pueden configurar cómo se entregan los mensajes por temas. Este rol es análogo al rol de IAM de suscriptor de Analytics Hub o propietario de la suscripción a Analytics Hub. Según cómo se entreguen los datos del mensaje, es posible que se requieran permisos adicionales, como los permisos de cuenta de servicio de Pub/Sub para escribir mensajes en BigQuery.
Arquitectura
En el siguiente diagrama, se describe cómo interactúan los publicadores y suscriptores de los recursos de Pub/Sub con el uso compartido de BigQuery:
Limitaciones
El uso compartido de transmisiones con Pub/Sub tiene las siguientes limitaciones:
- Un tema compartido admite 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 del uso compartido, por ejemplo, las creadas directamente desde Pub/Sub.
Los temas compartidos se indexan en Data Catalog (obsoleto) y Dataplex Universal Catalog, pero no puedes filtrar específicamente por su tipo de recurso.
Las métricas de uso se capturan y se muestran en el panel de métricas para los temas y las suscripciones de Pub/Sub compartidos, pero no están disponibles en
INFORMATION_SCHEMA.SHARED_DATASET_USAGE.Para supervisar las métricas, consulta Supervisa Pub/Sub en Cloud Monitoring.
Estas métricas pueden incluir lo siguiente:
- Cantidad de mensajes publicados
- Solicitudes de publicación
- Capacidad de procesamiento de publicación en bytes
- Las 5 suscripciones principales
- Bytes transferidos
- Otros
Habilita la API de Analytics Hub
Para habilitar la API de Analytics Hub, haz lo siguiente:
Console
Ve a la biblioteca de APIs y habilita la API de Analytics Hub para tu proyecto deGoogle Cloud .
gcloud
Ejecuta el comando gcloud services enable:
gcloud services enable analyticshub.googleapis.com
Habilita la API de Pub/Sub
Ve a la biblioteca de APIs y habilita la API de Pub/Sub para tu proyecto de Google Cloud .
Flujos de trabajo de publicadores de temas compartidos
Como publicador de temas compartidos, puedes hacer lo siguiente:
- Crear una ficha para agregar temas compartidos a un intercambio
- Actualizar una ficha.
- Borrar una ficha.
- Comparte una ficha.
- Administrar las suscripciones a tu ficha
- Quitar suscriptores de tu ficha.
Permisos adicionales del publicador
Para realizar tareas de publicador de temas compartidos, debes tener el rol de publicador de Analytics Hub (roles/analyticshub.publisher) en un intercambio o una ficha. Para ver todos los intercambios de datos de los proyectos de una organización a los 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 BigQuery sharing el permiso pubsub.schemas.get en el esquema adjunto al tema. Este permiso permite que los suscriptores de uso compartido de BigQuery 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
Ve a la página Uso compartido (Analytics Hub).
Ir a Uso compartido (Analytics Hub)
En la página, se enumeran todos los intercambios de datos a los que puedes acceder.
Haz clic en el nombre del intercambio de datos en el que deseas crear la ficha.
Haz clic en Crear ficha.
En la página Crear ficha, selecciona “Tema de Pub/Sub” en la lista Tipo de recurso.
Selecciona un tema de Pub/Sub existente en la lista Tema compartido o haz clic en Crear un tema.
En la página Detalles de la ficha, en el campo Nombre visible, ingresa el nombre de la ficha.
Ingresa los siguientes detalles opcionales:
Categoría: Selecciona hasta dos categorías que representen de mejor manera tu ficha. Los suscriptores de temas compartidos pueden filtrar fichas según estas categorías.
Afinidad de datos: Es la región o las regiones que el publicador del tema compartido usa para publicar datos. Esta información ayuda a los suscriptores de temas compartidos a minimizar o evitar los costos de salida de red de Pub/Sub leyendo datos de 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 inferior a 512 KiB y dimensiones de no más de 512 × 512 píxeles.
Descripción: Una descripción breve de tu ficha. Los suscriptores de temas compartidos pueden buscar fichas según la descripción.
Visibilidad pública: Habilita la visibilidad pública de tu ficha en el catálogo de uso compartido de BigQuery. También debes establecer permisos para la ficha. Haz clic en Acciones para el intercambio y, luego, en Establecer permisos. Otorga a
allUsersoallAuthenticatedusersel rol Analytics Hub Viewer (roles/analyticshub.viewer). Haz clic en Permitir acceso público.Documentación > Markdown: Información adicional, como vínculos a documentación relevante y otros detalles que ayudan a los suscriptores del tema compartido a usar tu tema.
En la página Información de contacto de la ficha, ingresa los siguientes detalles opcionales:
Contacto principal: Ingresa una dirección de correo electrónico o una URL para el contacto principal de la ficha.
Solicitar contacto de acceso: Ingresa una dirección de correo electrónico o una URL para el formulario de admisión que los suscriptores del tema compartido puedan usar para comunicarse 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: Una dirección de correo electrónico o URL del contacto principal del proveedor del tema.
Los suscriptores de temas compartidos 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: Es el nombre del publicador del tema compartido que crea la ficha.
- Contacto principal del publicador: Una dirección de correo electrónico o URL del contacto principal del publicador del tema compartido.
Revisa la página Vista previa de la ficha.
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 que admiten el uso compartido, 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á los 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
Ve a la página Uso compartido (Analytics Hub).
Haz clic en el nombre del intercambio de datos que contiene la ficha.
Haz clic en la ficha que deseas actualizar.
Haz clic en Editar ficha.
Modifica los valores de los campos. Puedes modificar todos los valores, excepto el tema compartido de la ficha.
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 que admiten el uso compartido, 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 puedes borrar las fichas con temas de Pub/Sub compartidos que tengan suscripciones activas. Revoca todas las suscripciones activas antes de intentar borrar una ficha de tema compartido. No puedes deshacer la eliminación de una ficha.
Para borrar una ficha, elige una de las siguientes opciones:
Console
Ve a la página Uso compartido (Analytics Hub).
Haz clic en el nombre del intercambio de datos que contiene la ficha.
Haz clic en la ficha que deseas borrar.
Haz clic en Borrar.
En el cuadro de diálogo ¿Borrar ficha?, escribe
deletepara confirmar la eliminación.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 que admiten el uso compartido, 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
Para otorgar a los usuarios acceso a una ficha privada, configura 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 Compartir para todos los usuarios deGoogle Cloud (allAuthenticatedUsers).
Para permitir que los usuarios soliciten acceso a las fichas comerciales, otórgales el rol Analytics Hub Viewer (roles/analyticshub.viewer).
Para otorgar a los usuarios acceso para ver tu ficha o suscribirse a ella, haz lo siguiente:
Ve a la página Uso compartido (Analytics Hub).
Haz clic en el nombre del intercambio de datos que contiene la ficha.
Haz clic en la ficha a la que deseas agregar suscriptores de temas compartidos.
Haz clic en Establecer permisos.
Para agregar principales, haz clic en Agregar principal.
En el campo Principales nuevos, agrega detalles según el tipo de ficha:
- Para una ficha privada, ingresa las direcciones de correo electrónico de las identidades a las que deseas otorgar acceso.
- Para una ficha pública, agrega
allAuthenticatedUsers.
En el menú Selecciona un rol, selecciona Analytics Hub y, luego, elige uno de los siguientes roles según el tipo de ficha:
- 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.
Haz clic en Guardar.
Para obtener más información, consulta los roles de suscriptor y visualizador de Analytics Hub.
Administrar las 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 propietario de la suscripción a Analytics Hub (roles/analyticshub.subscriptionOwner) en una ficha específica:
Ve a la página Uso compartido (Analytics Hub).
Haz clic en el nombre del intercambio de datos que contiene la ficha para la que deseas administrar las suscripciones.
Haz clic en la ficha para la que deseas enumerar los suscriptores del tema compartido.
Haz clic en Establecer permisos.
Para agregar principales, haz clic en Agregar principal.
En el campo Principales nuevas, ingresa los nombres de usuario o las direcciones de correo electrónico de los suscriptores que deseas agregar.
En Seleccionar un rol, selecciona Analytics Hub > Suscriptor de Analytics Hub.
Haz clic en Agregar otro rol.
En Seleccionar un rol, selecciona Analytics Hub > Propietario de la suscripción a Analytics Hub.
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 compartido desde el uso compartido de BigQuery, selecciona una de las siguientes opciones:
Console
Para enumerar los suscriptores de un tema compartido para una ficha, sigue las instrucciones de la consola deGoogle Cloud en Visualiza todas las suscripciones.
Haz clic en la pestaña Suscripciones para ver todas las suscripciones al intercambio de datos.
Selecciona la casilla de verificación junto a las suscripciones que quieres quitar o selecciona todas las suscripciones.
En el cuadro de diálogo ¿Revocar suscripción?, ingresa
revokepara confirmar.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: Es el ID del proyecto de la suscripción que deseas quitar.LOCATION: la ubicación de la suscripción.SUBSCRIPTION_ID: Es el ID de la suscripción que deseas quitar.
Cuando revocas una suscripción del uso compartido de BigQuery, un suscriptor del tema compartido ya no recibe datos de mensajes del tema compartido. La suscripción a Pub/Sub se desconectó del tema compartido. Si borras una suscripción directamente desde Pub/Sub, la suscripción de uso compartido de BigQuery persistirá y requerirá limpieza.
Flujos de trabajo de los suscriptores
Como suscriptor de uso compartido de BigQuery, 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 ve en el proyecto del publicador del tema compartido.
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
Para ver una lista de las fichas a las que puedes acceder, sigue los pasos que se indican en Visualiza las fichas.
Explora las fichas y haz clic en la que quieras suscribirte. Aparecerá un diálogo con los detalles de la ficha.
Haz clic en Suscribirse para abrir el cuadro de diálogo Crear suscripción.
Si no habilitaste 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.
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 entrega: Selecciona cómo se entregan 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 para los mensajes.
- Entrega “exactamente una vez”: Habilita la entrega “exactamente una vez”.
- Ordenamiento de mensajes: Habilita el ordenamiento de 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.
Para guardar los cambios, haz clic en Crear. La suscripción a 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
Los publicadores de temas de Pub/Sub no incurren en cargos adicionales por enumerar y compartir temas a través de BigQuery sharing. A los publicadores de temas compartidos se les cobra por la cantidad total de bytes escritos (capacidad de procesamiento de publicación) en el tema compartido y por la salida de red (si corresponde). A los suscriptores de temas compartidos se les cobra por la cantidad total de bytes leídos (capacidad de procesamiento de suscripción) de la suscripción vinculada y por la salida de red (si corresponde). Para obtener más información, consulta Precios de Pub/Sub.
Controles del servicio de VPC
Para los temas compartidos de proyectos con perímetros de Controles del servicio de VPC, configura las reglas de entrada y salida adecuadas para otorgar acceso a los publicadores y suscriptores de temas compartidos.
¿Qué sigue?
- Obtén más información para administrar tus fichas.
- Obtén información sobre cómo suscribirte a fichas.
- Obtén más información para supervisar tus recursos de Pub/Sub.
- Obtén más información para configurar los Controles del servicio de VPC para el uso compartido de BigQuery.