Introducción al ciclo de vida del código en Dataform

En este documento, se describe el ciclo de vida del código en Dataform y las formas de configurar la compilación y ejecución en Dataform.

Acerca del ciclo de vida del código en Dataform

El ciclo de vida del código de Dataform consta de las siguientes fases:

Desarrollo
Desarrollas un flujo de trabajo de SQL en un lugar de trabajo de Dataform.
Compilación

Dataform compila el código del flujo de trabajo de SQL en tu lugar de trabajo a SQL en tiempo real, lo que genera un resultado de compilación del lugar de trabajo que puedes ejecutar en BigQuery. Dataform usa la configuración que definiste en el archivo de configuración del flujo de trabajo para crear el resultado de la compilación.

La compilación de Dataform es hermética para garantizar la coherencia de la compilación, lo que significa que el mismo código se compila siempre en el mismo resultado de compilación de SQL. Dataform compila tu código en un entorno de zona de pruebas sin acceso a Internet. No hay acciones adicionales, como llamar a las APIs externas, durante la compilación.

Ejecución

En una invocación de flujo de trabajo, Dataform ejecuta el resultado de la compilación del lugar de trabajo en BigQuery.

Si deseas adaptar el ciclo de vida del código de Dataform a tus necesidades, puedes configurar el resultado de la compilación para influir en dónde y cómo Dataform ejecuta tu flujo de trabajo de SQL. Luego, puedes activar o programar ejecuciones de forma manual para influir en el momento en que Dataform ejecute todo el flujo de trabajo de SQL o los elementos seleccionados.

Formas de configurar la compilación de Dataform

De forma predeterminada, Dataform usa la configuración del archivo de configuración del flujo de trabajo para crear resultados de compilación. Puedes anular la configuración predeterminada con anulaciones de compilación para crear resultados de compilación personalizados. Luego, puedes activar de forma manual la ejecución de un resultado de compilación personalizado o programar ejecuciones.

Dataform proporciona las siguientes opciones para configurar los resultados de compilación:

Anulaciones de compilación de lugares de trabajo
Puedes configurar anulaciones de compilación que se apliquen a todos los lugares de trabajo en un repositorio. Puedes usar anulaciones de compilación de lugares de trabajo para crear entornos de desarrollo aislados.
Configuraciones de lanzamiento
Puedes crear configuraciones de lanzamiento para configurar plantillas destinadas a crear resultados de compilación de un repositorio de Dataform. Luego, puedes crear una configuración de flujo de trabajo para programar ejecuciones de resultados de compilación creados en una configuración de lanzamiento seleccionada.
Anulaciones de compilación de la API de Dataform
Puedes pasar solicitudes a la API de Dataform en la terminal para crear y ejecutar un solo resultado de compilación con anulaciones de compilación.

Configura anulaciones de compilación de espacios de trabajo

Con las anulaciones de compilación de lugares de trabajo, puedes crear anulaciones de compilación para todos los lugares de trabajo en un repositorio de Dataform. Puedes crear una configuración de anulaciones de compilación de lugares de trabajo por repositorio.

Cuando activas manualmente la ejecución en un lugar de trabajo en un repositorio con anulaciones de compilación de lugares de trabajo, Dataform aplica estas anulaciones al resultado de compilación del lugar de trabajo.

Puedes configurar las siguientes anulaciones de compilación de lugares de trabajo:

  • Proyecto de Google Cloud en el que Dataform ejecuta el contenido del lugar de trabajo
  • Prefijo de la tabla
  • Sufijo de esquema

Puedes usar anulaciones de compilación de lugares de trabajo para crear entornos de desarrollo aislados. Para ello, aísla los resultados de la compilación del lugar de trabajo en BigQuery con anulaciones de compilación dinámicas. Las anulaciones de compilación del prefijo de la tabla dinámica y el sufijo del esquema contienen la variable ${workspaceName}. Cuando activas la ejecución en un lugar de trabajo, Dataform reemplaza la variable ${workspaceName} por el nombre del lugar de trabajo actual, lo que crea anulaciones de compilación exclusivas del lugar de trabajo.

Ten en cuenta que no puedes programar ejecuciones de resultados de compilación creados con anulaciones de compilación de lugares de trabajo.

Crea configuraciones de lanzamiento

Con las configuraciones de lanzamiento, puedes definir plantillas de configuración para crear resultados de compilación de repositorios.

En una configuración de lanzamiento, puedes configurar anulaciones de compilación de la configuración del flujo de trabajo, las variables de compilación y la frecuencia de creación de resultados de compilación de todo el repositorio.

En una configuración de lanzamiento, puedes establecer las siguientes anulaciones de compilación:

Puedes crear varias configuraciones de lanzamiento en un repositorio de Dataform, una para cada etapa del ciclo de vida del desarrollo, lo que crea resultados de compilación de repositorios aislados.

Luego, puedes crear configuraciones de flujo de trabajo para programar ejecuciones de resultados de compilación creados en una configuración de lanzamiento seleccionada.

También puedes activar manualmente la ejecución de un resultado de compilación en una configuración de lanzamiento seleccionada.

Configura un solo resultado de compilación con anulaciones de compilación de la API de Dataform

Si pasas las solicitudes a la API de Dataform en la terminal, puedes configurar anulaciones de compilación para un solo resultado de compilación.

En la solicitud compilationResults.create, puedes crear un solo resultado de compilación de un lugar de trabajo de Dataform o un comittish de Git especificado.

En el objeto CodeCompilationConfig de la solicitud compilationResults.create, puedes configurar anulaciones de compilación para la solicitud de compilación.

Puedes configurar las siguientes anulaciones de compilación de la API de Dataform:

Ten en cuenta que las anulaciones de compilación de la API de Dataform se aplican a un solo resultado de compilación y a una sola ejecución. No puedes usarlos para programar ejecuciones de Dataform.

Puedes ejecutar un resultado de compilación en la solicitud workflowInvocations.create.

Formas de configurar la ejecución de Dataform

Dataform proporciona las siguientes opciones para configurar la ejecución:

Ejecución manual en un lugar de trabajo
Puedes activar de forma manual la ejecución instantánea de un flujo de trabajo de SQL en un lugar de trabajo de Dataform, fuera de cualquier programa. Puedes ejecutar acciones seleccionadas en el flujo de trabajo de SQL.
Configuraciones del flujo de trabajo
Puedes programar ejecuciones de resultados de compilaciones creados en una configuración de lanzamiento seleccionada. Puedes seleccionar las acciones del flujo de trabajo de SQL que deseas ejecutar y establecer la frecuencia y la zona horaria de las ejecuciones.

Activa la ejecución instantánea en un lugar de trabajo

En un lugar de trabajo de Dataform, puedes instantáneas y ejecutar manualmente el flujo de trabajo de SQL en tu lugar de trabajo, fuera de cualquier programa.

Puedes ejecutar de forma manual los siguientes elementos del flujo de trabajo de SQL en tu lugar de trabajo:

Si tu repositorio contiene anulaciones de compilación de lugares de trabajo, puedes ver qué anulaciones de compilación aplicará Dataform al resultado de compilación del lugar de trabajo.

Crear configuraciones de flujo de trabajo

Con las configuraciones de flujo de trabajo, puedes programar ejecuciones de resultados de compilación desde una configuración de lanzamiento seleccionada. Puedes crear varios parámetros de configuración de flujo de trabajo en un repositorio de Dataform.

En la configuración de un flujo de trabajo, puedes establecer la siguiente configuración de ejecución:

  • Se aplicó la configuración de lanzamiento de la compilación
  • Selección de acciones del flujo de trabajo de SQL que se ejecutarán
  • Programa y zona horaria de las ejecuciones

Puedes seleccionar las siguientes acciones de flujo de trabajo de SQL para que se ejecuten:

  • Todas las acciones
  • Acciones seleccionadas
  • Acciones con las etiquetas seleccionadas

Luego, durante una ejecución programada de la configuración del flujo de trabajo, Dataform implementa en BigQuery la selección de acciones del resultado de compilación aplicado.

Los parámetros de configuración del lanzamiento y del flujo de trabajo de Dataform te permiten configurar la compilación y programar ejecuciones en Dataform, sin necesidad de depender de servicios adicionales.

Vencimiento de los recursos del ciclo de vida

Dataform almacena los resultados de la compilación y las invocaciones del flujo de trabajo por un período específico.

Vencimiento de las invocaciones del flujo de trabajo

Las invocaciones de flujo de trabajo vencen después de 90 días o cuando las borras de forma manual.

En una configuración de flujo de trabajo, puedes ver una lista de las invocaciones más recientes del flujo de trabajo que creó la configuración. Cuando vence una invocación de flujo de trabajo creada por una configuración de flujo de trabajo, Dataform quita esa invocación de la lista de invocaciones recientes.

Vencimiento de los resultados de la compilación

El vencimiento de los resultados de compilación depende de la forma en que se crean: en un lugar de trabajo de desarrollo, en una configuración de lanzamiento o mediante una invocación de flujo de trabajo.

Cuando desarrollas un flujo de trabajo de SQL en un lugar de trabajo de Dataform, Dataform compila tu código en un resultado de compilación en tiempo real para proporcionar validación de consultas. Los resultados de compilación creados de esta manera vencen después de 24 horas.

En una configuración de lanzamiento, el resultado de compilación más reciente se convierte en el resultado de compilación en vivo. Un resultado de compilación nuevo reemplaza el resultado de compilación en vivo actual. Dataform retiene el resultado de la compilación en vivo hasta que se reemplaza por uno nuevo. Un resultado de compilación reemplazado vence en 24 horas.

Dataform quita los resultados de compilación vencidos de la lista de resultados de compilaciones anteriores en la página Detalles de una configuración de lanzamiento.

Dataform retiene los resultados de la compilación creados por invocaciones del flujo de trabajo durante toda su vida útil, hasta 24 horas después de que la invocación del flujo de trabajo se vence o se borra.

¿Qué sigue?