Descripción general de las funciones de Dataform

Dataform es un servicio sin servidores para que los analistas de datos desarrollen y, luego, implementen tablas, tablas incrementales o vistas en BigQuery. Dataform ofrece un entorno web para el desarrollo de flujos de trabajo de SQL, conexión con GitHub, GitLab, Azure DevOps Services y Bitbucket, integración continua, implementación continua y ejecución de flujos de trabajo.

Repositorios

Cada proyecto de Dataform se almacena en un repositorio. Un repositorio de Dataform aloja una colección de archivos de configuración JSON, archivos SQLX y archivos JavaScript.

Los repositorios de Dataform contienen los siguientes tipos de archivos:

  • Archivos de configuración

    Los archivos de configuración JSON o SQLX te permiten configurar tus flujos de trabajo de SQL. Contienen la configuración general, los programas de ejecución o el esquema para crear tablas y vistas nuevas.

  • Definiciones

    Las definiciones son archivos SQLX y JavaScript que definen tablas, vistas y operaciones de SQL adicionales nuevas para ejecutar en BigQuery.

  • Incluye

    Las inclusiones son archivos JavaScript en los que puedes definir variables y funciones para usar en tu proyecto.

Cada repositorio de Dataform está conectado a una cuenta de servicio. Puedes seleccionar una cuenta de servicio cuando creas un repositorio o editas la cuenta de servicio más adelante.

De forma predeterminada, Dataform usa una cuenta de servicio derivada de tu número de proyecto en el siguiente formato:

service-YOUR_PROJECT_NUMBER@gcp-sa-dataform.iam.gserviceaccount.com

Control de versión

Dataform usa el sistema de control de versión Git para mantener un registro de cada cambio realizado en los archivos del proyecto y administrar las versiones de los archivos.

Cada repositorio de Dataform puede administrar su propio repositorio de Git o conectarse a un repositorio de Git remoto de terceros. Puedes conectar un repositorio de Dataform a un repositorio de GitHub, GitLab, Azure DevOps Services o Bitbucket.

Los usuarios controlan la versión de su código de flujo de trabajo de SQL en los lugares de trabajo de Dataform. En un lugar de trabajo de Dataform, puedes extraer cambios del repositorio, confirmar todos los cambios (o los seleccionados) y enviarlos a las ramas de Git del repositorio.

Desarrollo del flujo de trabajo

En Dataform, puedes realizar cambios en archivos y directorios dentro de un lugar de trabajo de desarrollo. Un lugar de trabajo de desarrollo es una copia virtual y editable del contenido de un repositorio de Git. Dataform conserva el estado de los archivos en tu lugar de trabajo de desarrollo entre sesiones.

En un lugar de trabajo de desarrollo, puedes desarrollar acciones del flujo de trabajo de SQL mediante Dataform Core con SQLX y JavaScript, o exclusivamente con JavaScript. Puedes formatear automáticamente tu código principal o JavaScript de Dataform.

Cada elemento de un flujo de trabajo de SQL de Dataform, como una tabla o aserción, corresponde a una acción que Dataform realiza en BigQuery. Por ejemplo, un archivo de definición de tablas es una acción de crear o actualizar la tabla en BigQuery.

En un lugar de trabajo de Dataform, puedes desarrollar las siguientes acciones del flujo de trabajo de SQL:

Puedes usar JavaScript para reutilizar el código del flujo de trabajo de Dataform SQL de las siguientes maneras:

Dataform compila el código del flujo de trabajo de SQL en tu lugar de trabajo en tiempo real. En tu lugar de trabajo, puedes ver las consultas compiladas y los detalles de las acciones de cada archivo. También puedes ver el estado de compilación y los errores en el archivo editado o en el repositorio.

Para probar el resultado de una consulta en SQL compilada antes de ejecutarla en BigQuery, puedes ejecutar una vista previa de la consulta en tu lugar de trabajo de Dataform.

Para inspeccionar todo el flujo de trabajo de SQL definido en tu lugar de trabajo, puedes ver un gráfico compilado interactivo que muestra todas las acciones compiladas en tu flujo de trabajo de SQL y las relaciones entre ellas.

Compilación de flujos de trabajo

Dataform usa la configuración de compilación predeterminada, configurada en el archivo de configuración del flujo de trabajo, para compilar el código del flujo de trabajo de SQL en tu lugar de trabajo en SQL en tiempo real, lo que crea un resultado de compilación del lugar de trabajo.

Puedes anular la configuración de compilación para personalizar la forma en que Dataform compila tu flujo de trabajo de SQL en un resultado de compilación.

Con las anulaciones de compilación de lugares de trabajo, puedes configurar anulaciones de compilación para todos los lugares de trabajo en un repositorio. Puedes configurar anulaciones dinámicas de lugares de trabajo a fin de crear resultados de compilación personalizados para cada lugar de trabajo y convertir los lugares de trabajo en entornos de desarrollo aislados. Puedes anular el proyecto de Google Cloud en el que Dataform ejecutará el contenido de un lugar de trabajo, agregar un prefijo a los nombres de todas las tablas compiladas y un sufijo al esquema predeterminado.

Con las configuraciones de lanzamiento, puedes definir plantillas de configuraciones de compilación para crear resultados de compilación de un repositorio de Dataform. En una configuración de lanzamiento, puedes anular el proyecto de Google Cloud en el que Dataform ejecutará los resultados de compilación, agregar un prefijo a los nombres de todas las tablas compiladas, agregar un sufijo al esquema predeterminado y agregar variables de compilación. También puedes configurar la frecuencia de creación de resultados de compilación. Para programar ejecuciones de resultados de compilación creados en una configuración de lanzamiento seleccionada, puedes crear una configuración de flujo de trabajo.

Ejecución del flujo de trabajo

Durante la ejecución del flujo de trabajo, Dataform ejecuta los resultados de la compilación de los flujos de trabajo de SQL para crear o actualizar elementos en BigQuery.

Para crear o actualizar las tablas y vistas definidas en el flujo de trabajo de SQL en BigQuery, puedes iniciar una ejecución del flujo de trabajo de forma manual en un lugar de trabajo de desarrollo o programar ejecuciones.

Puedes programar ejecuciones de Dataform en BigQuery de las siguientes maneras:

Para depurar errores, puedes supervisar las ejecuciones de las siguientes maneras:

¿Qué sigue?