Descripción general de Dataform

En este documento, se presentan los conceptos y procesos de Dataform.

Dataform es un servicio para que los analistas de datos desarrollen, prueben, control de versión y programen flujos de trabajo de SQL complejos para la transformación de datos en BigQuery.

Dataform te permite administrar la transformación de datos en el proceso de extracción, carga y transformación (ELT) para la integración de datos. Una vez que los datos sin procesar se extraen de los sistemas de origen y se cargan en BigQuery, Dataform te ayuda a transformarlos en un conjunto de tablas de datos bien definido, probado y documentado.

Dataform te permite realizar las siguientes acciones de transformación de datos:

  • Desarrolla y ejecuta flujos de trabajo de SQL para la transformación de datos.
  • Colabora con miembros del equipo en el desarrollo de flujos de trabajo de SQL a través de Git.
  • Administrar una gran cantidad de tablas y sus dependencias
  • Declara los datos de origen y administra las dependencias de la tabla.
  • Visualiza una visualización del árbol de dependencias de tu flujo de trabajo en SQL.
  • Administra datos con código SQL en un repositorio central.
  • Vuelve a usar el código con JavaScript.
  • Valida la precisión de los datos con pruebas de calidad en las tablas fuente y de salida.
  • Código SQL de control de versión
  • Documenta tablas de datos dentro del código SQL.

Por el momento, Dataform no admite claves de encriptación administradas por el cliente (CMEK) ni Controles del servicio de VPC. Para usar Dataform, debes excluir los recursos de BigQuery del perímetro de los Controles del servicio de VPC. Como alternativa, puedes desarrollar flujos de trabajo de SQL de forma local con la CLI de Dataform.

Procesos de transformación de datos en Dataform

El flujo de trabajo de transformación de datos para Dataform es el siguiente:

  1. Dataform te permite crear repositorios para administrar tu código.
  2. Dataform te permite crear lugares de trabajo para el desarrollo.
  3. Dataform te permite desarrollar flujos de trabajo de SQL en un lugar de trabajo de desarrollo.
  4. Dataform compila el núcleo de Dataform en SQL.
  5. Dataform ejecuta el árbol de dependencias.

Dataform te permite crear repositorios para administrar tu código

En un repositorio de Dataform, usa Dataform core, una extensión de SQL, para escribir archivos SQLX en los que defines tu flujo de trabajo. Los repositorios de Dataform admiten el control de versiones. Puedes vincular un repositorio de Dataform a un proveedor de Git de terceros.

Dataform te permite crear lugares de trabajo para el desarrollo

Puedes crear lugares de trabajo de desarrollo dentro de un repositorio de Dataform para el desarrollo principal de Dataform. En un lugar de trabajo de desarrollo, puedes realizar cambios en el repositorio, compilarlos, probarlos y enviarlos al repositorio principal mediante Git.

Dataform te permite desarrollar Dataform Core en un lugar de trabajo de desarrollo

En un lugar de trabajo de desarrollo, puedes definir y documentar tablas, sus dependencias y lógica de transformación para compilar tu flujo de trabajo de SQL. También puedes configurar acciones en JavaScript.

Dataform compila el núcleo de Dataform

Durante la compilación, Dataform realiza las siguientes tareas:

  • Compila el núcleo de Dataform en un flujo de trabajo de SQL de SQL estándar.
  • Agrega instrucciones de SQL estándar, como CREATE TABLE o INSERT, al código de acuerdo con la configuración de tu consulta.
  • Transpila (compila código fuente a fuente) de JavaScript en SQL.
  • Resuelve dependencias y comprueba si hay errores, incluidas dependencias circulares o faltantes.
  • Compila el árbol de dependencias de todas las acciones que se ejecutarán en BigQuery.

Para depurar en tiempo real, puedes inspeccionar el flujo de trabajo de SQL compilado de tu proyecto en un gráfico interactivo en tu lugar de trabajo de desarrollo.

Dataform compila tu código en un entorno de zona de pruebas V8 sin acceso a Internet. No hay acciones adicionales, como llamar a APIs externas, disponibles durante la compilación.

Dataform ejecuta el árbol de dependencias

En BigQuery, Dataform realiza las siguientes tareas:

  • Ejecuta comandos SQL, siguiendo el orden del árbol de dependencias.
  • Ejecuta consultas de aserción en las tablas y vistas para verificar la precisión de los datos.
  • Ejecuta otras operaciones de SQL que definiste.

Después de la ejecución, puedes usar tus tablas y vistas para todos tus fines estadísticos.

Puedes ver los registros para ver qué tablas se crearon, si las aserciones se aprobaron o fallaron, el tiempo que tardó en completarse cada acción y más información. También puedes ver el código SQL exacto que se ejecutó en BigQuery.

Marco de trabajo de modelado de Dataform

Dataform proporciona un framework de modelado de datos de código abierto, que consta de Dataform Core y CLI de Dataform, que puedes usar fuera de Google Cloud.

¿Qué sigue?