El linaje de datos es una función de Dataplex que te permite hacer un seguimiento de cómo los datos se mueven a través de tus sistemas: de dónde provienen, a dónde se pasan y qué transformaciones se aplican a ellos.
¿Por qué necesitas el linaje de datos?
Trabajar con grandes conjuntos de datos suele implicar la transformación de datos en entidades adaptadas según las necesidades de un proyecto específico: archivos de texto, tablas, informes, paneles y modelos.
Por ejemplo, imagina que tienes una tienda en línea en la que registras cada compra en una sola tabla de SQL. Para facilitarles a los analistas el trabajo con los datos, comienzas a ejecutar trabajos que extraen información de esta sola tabla y producen tablas más pequeñas por región, marca o precio de oferta. Luego, tus analistas comienzan a hacer lo mismo: realizan más transformaciones y combinan estas tablas más pequeñas con otras fuentes de datos para producir aún más tablas.
Esto puede convertirse en un gran desafío para los interesados:
- Los consumidores de datos no pueden usar una herramienta de autoservicio para comprender si los datos llegan de fuentes confiables.
- Los ingenieros de datos no pueden causar problemas debido a la falta de un método confiable para rastrear todas las transformaciones de datos.
- Los ingenieros y analistas de datos no pueden evaluar por completo el posible impacto antes de modificar o borrar tablas.
- Los administradores de datos no pueden entender cómo se usan los datos sensibles en todo de la organización y garantizar el cumplimiento de los requisitos reglamentarios.
El linaje de datos es una solución que proporciona una forma práctica de hacer lo siguiente:
- Comprender cómo se obtienen y transforman los datos con la ayuda del linaje visualizaciones en gráficos.
- Hacer un seguimiento de los errores relacionados con entradas y operaciones de datos hasta la raíz causas.
- Permitir una mejor gestión de cambios a través del análisis del impacto: evitar el tiempo de inactividad o errores inesperados, comprender las entradas dependientes y colaborar con a las partes interesadas relevantes.
Modelo de información del linaje de datos
En su forma básica, el linaje es un registro de los datos que se transforman de fuentes a objetivos. La API de Data Lineage recopila esa información y la organiza en un modelo de datos jerárquico con los conceptos de procesos, ejecuciones y eventos.
Proceso
Un proceso es la definición de una operación de transformación de datos compatible con un sistema específico. En el contexto del linaje de BigQuery,
Un process
es uno de los tipos de trabajo compatibles.
Ejecutar
Una ejecución corresponde a la realización de un proceso. Los procesos pueden tener varias ejecuciones.
Las ejecuciones contienen detalles como las horas de inicio y finalización, el estado o atributos adicionales.
Para obtener más información, consulta la
Referencia del recurso run
.
Event
Un evento representa un momento en el que se realizó una operación de transformación de datos y que generó el movimiento de datos entre una entidad de origen y una de destino.
Los eventos contienen una lista de vínculos que definen cuál entrada fue la fuente. y cuál era el objetivo de un evento en particular. Mientras que los eventos se usan para calcular gráficos de visualización de linaje, no se exponen directamente en la consola de Google Cloud. Puedes crearlos, leerlos y borrarlos (pero no actualizarlos) con la API de Data Lineage.
Ejemplo
Considera el siguiente ejemplo en el que se copian datos entre tablas de BigQuery:
La forma en que se mueven los datos entre las tablas se describe en el proceso de linaje
(representado en el gráfico por el
): puede ser una consulta CREATE TABLE AS SELECT
de SQL o una sentencia INSERT
.
Cada ejecución de esa sentencia SQL constituiría una ejecución individual.
Las ejecuciones contienen eventos que registran qué tablas se usaron como fuentes y
que son los objetivos. En este ejemplo, las tablas customer_year
y customers
son la fuente de la tabla top_customer
destino.
Gráfico de visualización de linaje
Los gráficos de linaje representan la información que recopila la API de Data Lineage para una entrada de Data Catalog en particular. Root se refiere a la entrada que viendo el linaje.
Dataplex trabaja con la API de Data Lineage para identificar entradas cuyas el nombre completamente calificado coincide con las entidades reconocidas por el linaje de datos. Para las entradas de Dataplex coincidentes, puedes acceder al Linaje en su página de detalles y mira el gráfico.
Los gráficos de linaje muestran dos tipos de elementos:
Botones rectangulares anchos que representan entidades involucradas en la construcción información del linaje como fuentes o bien objetivos de un evento de linaje.
Botones cuadrados más pequeños que representan procesos responsables de crear o actualizar las entidades de origen o destino. Los botones de proceso usan íconos específicos del sistema de origen que los informó a la API de Data Lineage. Por ejemplo, las tareas de BigQuery usan el ícono .
Vista de lista de linaje
La vista de lista de linaje muestra información detallada sobre el linaje para las entidades de una en una sola tabla.
En comparación con el gráfico de visualización del linaje, que es mejor para ver gráficos de linaje relativamente pequeños, la vista de lista de linajes permite ver el linaje para entidades con muchas conexiones.
En la siguiente imagen, se muestra un ejemplo de la vista de lista de linaje en la Consola de Google Cloud En la siguiente lista, se describe la imagen con más detalle.
Cada fila de la tabla representa un solo vínculo de linaje entre dos entradas. En el gráfico, estos nombres se representan como los vínculos del linaje entre dos entradas de registro, incluidos los nodos de proceso intermedios. Por ejemplo,
Source
yTarget
son nodos de recursos, con posiblemente varios nodos de proceso en el medio.La opción Dirección especifica la parte del flujo de datos que se mostrará en la lista en relación con el recurso raíz:
Upstream: Muestra información de linaje para las entradas que son fuentes de datos de la entrada seleccionada. En el gráfico de linaje, estas entradas son las que aparecen a la izquierda de la entrada seleccionada.
Descendente: Muestra la información del linaje de las entradas que usan derivadas de la entrada seleccionada. En el gráfico de linaje, estas entradas son las que aparecen a la derecha de la entrada seleccionada.
La profundidad se refiere a qué tan alejado está un recurso derivado o de origen del recurso raíz. La vista de lista muestra hasta 1,000 vínculos de linaje, con la profundidad máxima desde la raíz de 10 vínculos de linaje. Si hay algún linaje fuera de este rango, se te notificará. Puedes ver el linaje fuera de este rango si seleccionas el nombre de otra entidad en la vista de lista.
En el panel Detalles, se muestra información sobre la fuente del vínculo, el destino del vínculo y de todos los procesos que lo crearon.
Puedes personalizar las columnas que aparecen en la tabla y filtrar las resultados. También puedes exportar los resultados a un archivo CSV.
Seguimiento automático del linaje de datos
Cuando habilitas la API de Data Lineage, los sistemas de Google Cloud que admiten el linaje de datos comienzan a informar su movimiento de datos. Cada sistema integrado puede enviar información de linaje para un rango diferente de fuentes de datos. Consulta las siguientes secciones para obtener más detalles sobre cada producto compatible.
BigQuery
Si habilitas el linaje de datos en tu proyecto de BigQuery, Dataplex puede registrar automáticamente la información del linaje para lo siguiente:
- Tablas nuevas como resultado de los siguientes trabajos de BigQuery:
- Trabajos de copia
- Trabajos de carga que usan el URI de Cloud Storage para cargar datos en cualquier formato permitido desde Cloud Storage*
- Trabajos de consulta que usan el siguiente lenguaje de definición de datos (DDL) en SQL estándar de Google:
- CREATE TABLE
- CREATE TABLE AS SELECT
- CREATE TABLE COPY
- CREATE TABLE CLONE
- CREATE TABLE FUNCTION
- CREATE TABLE LIKE (CREAR TABLA MEJORADA)
- CREAR VISTA
- CREAR VISTA MATERIALIZADA
- Tablas existentes como resultado del uso de las siguientes declaraciones de lenguaje de manipulación de datos (DML) en SQL estándar de Google:
- SELECT en relación con cualquiera de los siguientes tipos de tablas:
- INSERT SELECT
- COMBINAR
- ACTUALIZAR
- BORRAR
Los trabajos de copia, consulta y carga de BigQuery se representan como procesos (haz clic en el ícono de lupa en el gráfico de visualización del linaje para ver los detalles del proceso). Cada proceso contiene el job_id de BigQuery en la atributos del trabajo de BigQuery más reciente.
Otros servicios
El linaje de datos admite la integración con los siguientes Servicios de Google Cloud:
Linaje de datos para fuentes de datos personalizadas
Puedes usar la API de Data Lineage en Dataplex para registrar información de linaje de forma manual para cualquier fuente de datos que no es compatible con los sistemas integrados.
Dataplex puede crear gráficos de visualización para registrarlos manualmente
linaje si usas un
fullyQualifiedNames
que coincidan con
Nombres calificados de entradas existentes de Data Catalog. Si deseas registrar el linaje de una fuente de datos personalizada, primero crea una entrada personalizada de Data Catalog.
Cada proceso de la fuente de datos personalizada puede contener la clave sql
en la lista de atributos. El valor de esa clave se usará para renderizar en detalle el código destacado
del gráfico de linaje de datos. La instrucción de SQL se mostrará como estaba
que se proporcionan. El usuario es responsable de filtrar la información sensible. El nombre de clave sql
distingue mayúsculas de minúsculas.
OpenLineage
Si ya usas OpenLineage para recopilar información de linaje de otras fuentes de datos, puedes importar eventos de OpenLineage a Dataplex y mostrarlos en la consola de Google Cloud. Para obtener más información, consulta Cómo realizar la integración con OpenLineage.
Limitaciones
- Toda la información del linaje se retiene en el sistema solo por 30 días.
- La información del linaje persiste después de quitar la fuente de datos relacionada. Es decir, si quitas una tabla de BigQuery y su Data Catalog aún puedes leer el linaje de esa tabla usando la API hasta por un 30 días.
Accede al linaje de datos
Puedes acceder a las funciones de linaje de datos con las siguientes opciones:
- Páginas de detalles de entrada en la IU de Dataplex en la consola de Google Cloud. Consulta Cómo ver gráficos de linaje.
- Página de detalles de la tabla en la IU de BigQuery en la consola de Google Cloud. Consulta Cómo ver gráficos de linaje.
- Páginas del conjunto de datos y del Registro de modelos en la IU de Vertex AI en la consola de Google Cloud. Consulta Cómo ver gráficos de linaje.
- API de Data Lineage
Precios
Dataplex usa el SKU de procesamiento premium para cobrar y el linaje de datos. Para obtener más información, consulta Precios.
Para separar los cargos de linaje de datos de otros cargos en el SKU de procesamiento premium de Dataplex, en Informe de Facturación de Cloud, usa la etiqueta
goog-dataplex-workload-type
con el valorLINEAGE
.Si llamas a la API de Data Lineage
Origin
sourceType
con un valor distinto deCUSTOM
, es posible que se generen costos adicionales.
¿Qué sigue?
Aprende a hacer un seguimiento del linaje de datos para trabajos de consulta y copia de una tabla de BigQuery.
Aprende a usar el linaje de datos con sistemas de Google Cloud.
Para obtener información administrativa, consulta las secciones actualizadas de IAM, las consideraciones de linaje y los registros de auditoría de linaje de datos.