Solucionar problemas de linaje de datos

En este documento se describe cómo solucionar problemas con el linaje de datos de Dataplex Universal Catalog.

Tipos de proyectos

Los recursos de datos pueden residir en diferentes proyectos. A continuación, se muestra un resumen de los proyectos posibles y sus nombres de recursos.

Proyecto de almacenamiento de BigQuery

Este proyecto almacena tus recursos de datos de BigQuery. Puedes encontrarlo en los detalles del recurso, en Table ID, antes del primer punto.

En la interfaz de usuario de BigQuery, el nombre del proyecto de almacenamiento se muestra en el campo ID de tabla, antes del primer punto del nombre de tabla completo.
Imagen 1. Nombre de un proyecto de almacenamiento de BigQuery.

Proyecto de Compute

Este proyecto almacena los metadatos de linaje de datos. En BigQuery, es donde se ejecuta un trabajo. Si ejecutas un trabajo mediante la consola Google Cloud , puedes encontrar el nombre del proyecto de cálculo en el selector de proyectos:

La interfaz de BigQuery muestra un proyecto de cálculo llamado docs-compute en la página donde ejecutas consultas de SQL.
Imagen 2. Nombre de un proyecto de computación que ejecuta tareas de BigQuery.

Cuando envíe solicitudes a la API de BigQuery, especifique el proyecto de cálculo en la URL. Por ejemplo:

POST /bigquery/v2/projects/docs-compute/jobs HTTP/1.1
Host: bigquery.googleapis.com
User-Agent: Go-http-client/1.1
Authorization: <REDACTED 1031 BYTES>
Accept-Encoding: gzip
{
  "configuration": {
    "query": {
      "useLegacySql": false,
      "query": "CREATE OR REPLACE TABLE `docs-target.dataset.target-002` AS SELECT * FROM `docs-source.dataset.source-002`;"
    }
  },
  "jobReference": {
    "projectId": "docs-compute",
    "jobId": "docs-compute-job-id",
    "location": "us",
  }
}

Proyecto activo

Este es el proyecto desde el que está viendo el linaje de datos. La Google Cloud consola muestra el proyecto activo en el selector de proyectos. Si usas la API, el proyecto activo es el proyecto desde el que haces llamadas a la API.

La interfaz de usuario de BigQuery muestra el linaje de datos de un conjunto de datos llamado source-001, que está en un proyecto llamado docs-source.
Imagen 3. El proyecto activo en la Google Cloud consola.

No se muestra el linaje de datos de BigQuery

El siguiente problema se produce después de ejecutar un trabajo de BigQuery. En este caso, el problema puede deberse a tres situaciones:

  • La API Data Lineage está inhabilitada en el proyecto activo o en el proyecto de cálculo.
  • No tienes el rol Lector de linaje de datos (roles/datalineage.viewer) en el proyecto activo o en el proyecto de cálculo.
  • El linaje de datos aún no ha llegado. En función del volumen y la complejidad de los datos que se estén procesando, el linaje de datos puede tardar entre 30 minutos y 24 horas en mostrarse.

Si aparece el mensaje "No se ha podido obtener el linaje porque faltan permisos" en la parte inferior de la página, significa que te faltan permisos en el proyecto activo. De lo contrario, te faltarán permisos en el proyecto de Compute.

Un gráfico de linaje vacío.
Imagen 4. Ejemplo de linaje que no se muestra en la interfaz de BigQuery.

Para solucionar este problema, comprueba si la API Data Lineage está habilitada en el proyecto de cálculo. Después de habilitar la API, debe ejecutar un trabajo para ver el linaje de datos. En función del volumen y la complejidad de los datos que se estén procesando, el linaje de datos puede tardar entre 30 minutos y 24 horas en mostrarse.

A continuación, comprueba si la API Data Lineage está habilitada en el proyecto activo.

Cuando la API Data Lineage esté habilitada, concede el rol Lector de linaje de datos (roles/datalineage.viewer) en los proyectos activo y de cálculo.

No se muestran los metadatos de proceso de BigQuery

El siguiente problema se produce cuando abre el panel de detalles de la tabla, que no muestra todos los detalles, como la instrucción SQL o la propiedad Process type. Esto ocurre aunque el linaje de datos se muestre correctamente.

Esto puede ocurrir si no tienes permisos para ver los metadatos del proyecto de Compute.

Ejemplo:

Si haces clic en los detalles del proceso de BigQuery, se muestra el siguiente mensaje en la Google Cloud consola:

You don't have permission to view BigQuery process metadata in project X.
En la interfaz de BigQuery, en la pestaña Linaje, el panel Detalles muestra un mensaje de error.
Imagen 5. Ejemplo de detalles de un proceso de BigQuery que no se muestran en la interfaz de BigQuery.

Para solucionar este problema, concede al usuario el permiso bigquery.jobs.get (por ejemplo, incluido en el rol Lector de recursos de BigQuery) en el proyecto de Compute.

No se muestran los detalles de la tabla de BigQuery

El siguiente problema se produce cuando abre el panel de detalles de la tabla, que solo muestra la propiedad Fully qualified name. Esto ocurre aunque el linaje de datos se muestre correctamente. Esto puede ocurrir si no tienes todos los permisos necesarios en los proyectos de almacenamiento de la tabla.

Ejemplo:

En este caso, cuando hagas clic en los detalles del nodo de BigQuery, verás un mensaje Entry with this fully qualified name is not available in Dataplex Universal Catalog or you do not have permissions to view it.

No se muestran los detalles de la tabla de BigQuery.
Imagen 6. Ejemplo de detalles de una tabla de BigQuery que no se muestran en la interfaz de BigQuery.

Para solucionar este problema, concede los permisos bigquery.tables.get (por ejemplo, los incluidos en el rol Lector de datos de BigQuery) en el proyecto de almacenamiento.