En este documento, se describen los conceptos, los métodos y los casos de uso para buscar el linaje de datos en varias regiones geográficas en Knowledge Catalog (anteriormente, Dataplex Universal Catalog).
El linaje de datos en Knowledge Catalog es un servicio regionalizado. Los datos de linaje, incluidos los vínculos, los procesos y los eventos, se registran y almacenan en la ubicación geográfica específica en la que se produjo la transformación o el movimiento de datos subyacentes.
Sin embargo, las canalizaciones de datos empresariales suelen abarcar varios proyectos y regiones de Google Cloud(por ejemplo, una tabla de BigQuery en us-central1 que copia datos en un bucket de almacenamiento en europe-west1). Para hacer un seguimiento integral de los activos de datos en estos límites, debes realizar una búsqueda de linaje multirregional.
Knowledge Catalog proporciona dos métodos para descubrir y agregar gráficos de linaje entre regiones:
- El método de automatización del servidor que usa la API de
searchLineageStreaming(versión preliminar): Recomendado - El método de fan-out del cliente que usa la API de
searchLinks
Conceptos básicos
Para comprender el descubrimiento del linaje en varias regiones, es útil saber cómo el sistema controla el recorrido del gráfico:
Criterios raíz: Es el punto de partida de tu búsqueda de linaje, definido por uno o más nombres de recursos (como una tabla de BigQuery o un tema de Pub/Sub) o campos de columnas detallados.
Dirección: Es la orientación del recorrido del gráfico en relación con los criterios raíz. Puedes buscar el origen (para ver de dónde provienen tus datos) o el destino (para ver a dónde van).
Búsqueda en amplitud: Es el mecanismo arquitectónico que se usa para encontrar nodos conectados. La búsqueda recorre el gráfico de linaje capa por capa y calcula con precisión la profundidad de ejecución de cada recurso conectado en los límites regionales.
Comparación de los métodos de búsqueda
Si bien ambos métodos te permiten armar una vista interregional de tus datos, se encargan del trabajo pesado de manera diferente:
| Función | Automatización del servidor API de searchLineageStreaming |
Fan-out del cliente API de searchLinks |
|---|---|---|
| Modelo de ejecución | Automatización del servidor: El motor de enrutamiento Google Cloud recorre varias regiones de forma nativa. | Orquestación del cliente: La secuencia de comandos de tu aplicación debe realizar un bucle y administrar las solicitudes de forma manual. |
| Sobrecarga de la solicitud | Solicitud a la API única: Una sola llamada POST HTTP inicia la búsqueda en varias regiones. |
Varias solicitudes a la API: Requiere una llamada HTTP independiente para cada región y cada capa de gráfico. |
| Control de respuestas | Transmisión en tiempo real: Los resultados se envían al cliente a medida que se encuentran, lo que evita los tiempos de espera. | Cargas útiles estáticas: Los arrays JSON individuales se deben recibir, recopilar y combinar de forma manual. |
| Gráficos profundos (más de 2 capas) | Maneja automáticamente gráficos de linaje anidados y profundos de hasta 100 niveles. | Sufre el problema de la consulta N+1 y requiere viajes de ida y vuelta iterativos y lentos desde el cliente. |
Elige el método adecuado para tu caso de uso
Revisa las siguientes situaciones para determinar qué método de búsqueda en varias regiones se adapta mejor a tu carga de trabajo.
Elige el método de la API de transmisión para los siguientes casos de uso:
Rastrear gráficos complejos o profundos: Tus datos se mueven a través de varias tablas, buckets o canalizaciones intermedias en diferentes regiones, lo que requiere un recorrido de varios niveles (
maxDepthmayor que 2).Hacer un seguimiento del linaje a nivel de columna: Deseas hacer un seguimiento de los campos en todas las regiones o aprovechar las búsquedas con comodines (
*) para extraer todas las dependencias de las columnas a la vez.Mantener un código ligero: Prefieres realizar una sola llamada a la API y dejar queGoogle Cloud controle el enrutamiento, la eliminación de duplicados y el ensamblaje del gráfico.
Necesitas metadatos de la canalización: Deseas recuperar de forma opcional detalles estructurales sobre los procesos que ejecutan tus canalizaciones en la misma carga útil de la solicitud.
Elige el método de fan-out del cliente para las siguientes situaciones:
Solo realizas un seguimiento del linaje superficial de un solo salto: Tu gráfico de linaje no es complejo y solo necesitas buscar vínculos directos de elementos principales o secundarios (
maxDepthigual a 1) en una pequeña cantidad fija de regiones conocidas.Trabajas con sistemas heredados estrictos: Tienes una aplicación de administración de datos existente que se basa en gran medida en el extremo
SearchLinksestándar y deseas mantener la compatibilidad estructural con versiones anteriores sin implementar consumidores de respuestas de transmisión.
¿Qué sigue?
Obtén información para buscar linaje multirregional con la automatización del servidor.
Obtén más información para buscar el linaje multirregional con fan-out del lado del cliente.