Introducción al framework de resolución de entidades de BigQuery

En este documento se describe la arquitectura del marco de trabajo de resolución de entidades de BigQuery. La resolución de entidades es la capacidad de asociar registros de datos compartidos cuando no existe ningún identificador común o de aumentar los datos compartidos mediante un servicio de identidad de un partner. Google Cloud

Este documento está dirigido a los usuarios finales de la resolución de entidades (en adelante, usuarios finales) y a los proveedores de identidades. Para obtener más información sobre la implementación, consulta el artículo Configurar y usar la resolución de entidades en BigQuery.

Puedes usar la resolución de entidades de BigQuery con cualquier dato que se haya preparado antes de contribuir datos a una sala blanca de datos. La resolución de entidades está disponible en los modelos de precios bajo demanda y por capacidad, así como en todas las ediciones de BigQuery.

Ventajas

Como usuario final, puedes beneficiarte de la resolución de entidades de las siguientes formas:

  • Puedes resolver entidades sin incurrir en tarifas de transferencia de datos, ya que un suscriptor o un Google Cloud partner asocia tus datos a su tabla de identidades y escribe los resultados de la asociación en un conjunto de datos de tu proyecto.
  • No tienes que gestionar los trabajos de extracción, transformación y carga (ETL).

Como proveedor de identidades, puedes beneficiarte de la resolución de entidades de las siguientes formas:

  • Puedes ofrecer la resolución de entidades como una oferta de software como servicio (SaaS) gestionado en Google Cloud Marketplace.
  • Puedes usar tus gráficos de identidad y tu lógica de coincidencia sin revelarlos a los usuarios.

Arquitectura

BigQuery implementa la resolución de entidades mediante llamadas a funciones remotas que activan procesos de resolución de entidades en el entorno de un proveedor de identidades. No es necesario que copie ni mueva sus datos durante este proceso. En el siguiente diagrama y explicación se describe el flujo de trabajo de la resolución de entidades:

Diagrama que muestra dos secciones principales: un proyecto de usuario final y un proyecto de proveedor de identidades.

  1. El usuario final concede a la cuenta de servicio del proveedor de identidades acceso de lectura a su conjunto de datos de entrada y acceso de escritura a su conjunto de datos de salida.
  2. El usuario llama a la función remota que compara sus datos de entrada con los datos del gráfico de identidades del proveedor. Los parámetros de concordancia se transfieren al proveedor con la función remota.
  3. La cuenta de servicio del proveedor lee el conjunto de datos de entrada y lo procesa.
  4. La cuenta de servicio del proveedor escribe los resultados de la resolución de entidades en el conjunto de datos de salida del usuario.

En las siguientes secciones se describen los componentes del usuario final y los proyectos del proveedor.

Componentes de usuario final

Los componentes para usuarios finales incluyen los siguientes:

  • Llamada a función remota: una llamada que ejecuta un procedimiento definido e implementado por el proveedor de identidades. Esta llamada inicia el proceso de resolución de entidades.
  • Conjunto de datos de entrada: el conjunto de datos de origen que contiene los datos que se van a asociar. De forma opcional, el conjunto de datos puede contener una tabla de metadatos con parámetros adicionales. Los proveedores especifican los requisitos del esquema de los conjuntos de datos de entrada.
  • Conjunto de datos de salida: el conjunto de datos de destino en el que el proveedor almacena los resultados coincidentes como una tabla de salida. De forma opcional, el proveedor puede escribir en este conjunto de datos una tabla de estado de los trabajos que contenga detalles sobre el trabajo de resolución de entidades. El conjunto de datos de salida puede ser el mismo que el de entrada.

Componentes del proveedor de identidades

Los componentes del proveedor de identidades incluyen lo siguiente:

  • Plano de control: contiene una función remota de BigQuery que coordina el proceso de match. Esta función se puede implementar como un trabajo de Cloud Run o como una función de Cloud Run. El plano de control también puede contener otros servicios, como autenticación y autorización.
  • Plano de datos: contiene el conjunto de datos del gráfico de identidades y el procedimiento almacenado que implementa la lógica de coincidencia de proveedores. El procedimiento almacenado se puede implementar como un procedimiento almacenado de SQL o un procedimiento almacenado de Apache Spark. El conjunto de datos del gráfico de identidades contiene las tablas con las que se comparan los datos del usuario final.

Siguientes pasos