En este documento, se describe el ciclo de vida del código en Dataform y las formas de configurar la compilación y la ejecución en Dataform.
Información 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 crea 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 de tu 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 en el mismo resultado de compilación de SQL cada vez. Dataform compila tu código en un entorno de zona de pruebas sin acceso a Internet. No hay acciones adicionales, como llamar a APIs externas, disponibles 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.
Para 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 manualmente para influir en el momento en que Dataform ejecuta todo tu flujo de trabajo de SQL o sus 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 parámetros de configuración de lanzamiento para configurar plantillas para crear resultados de compilación de un repositorio de Dataform. Luego, puedes crear una configuración de flujo de trabajo para programar ejecuciones de los 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 resultado de compilación único 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 de forma manual 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 la compilación del lugar de trabajo.
Puedes configurar las siguientes anulaciones de compilación de espacios de trabajo:
- Es el proyectoGoogle Cloud en el que Dataform ejecuta el contenido del espacio 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 y del sufijo del esquema dinámicos contienen la variable ${workspaceName}
.
Cuando activas la ejecución en un lugar de trabajo, Dataform reemplaza la
varibale ${workspaceName}
con el nombre del lugar de trabajo actual y crea
anulaciones de compilación únicas para el 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 parámetros de configuración de lanzamiento
Con las configuraciones de lanzamiento, puedes configurar plantillas de parámetros 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 con la que se crean los resultados de compilación de todo el repositorio.
En una configuración de lanzamiento, puedes configurar las siguientes anulaciones de compilación:
- Google Cloud proyecto
- Prefijo de la tabla
- Sufijo de esquema
- Valor de una variable de compilación
Puedes crear varias configuraciones de lanzamiento en un repositorio de Dataform, una para cada etapa de tu ciclo de vida de desarrollo, lo que crea resultados de compilación de repositorio aislados.
Luego, puedes crear configuraciones de flujo de trabajo para programar ejecuciones de los 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 solicitudes de 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 commit 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:
- Google Cloud proyecto
- Prefijo de la tabla
- Sufijo de esquema
- Valor de una variable de compilación
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 de configuración de 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.
- Parámetros de configuración del flujo de trabajo
- Puedes programar ejecuciones de resultados de compilación creados en una configuración de lanzamiento seleccionada. Puedes seleccionar acciones de flujo de trabajo de SQL para ejecutar y configurar la frecuencia y la zona horaria de las ejecuciones.
Cómo activar la ejecución instantánea en un lugar de trabajo
En un lugar de trabajo de Dataform, puedes ejecutar de forma manual el flujo de trabajo de SQL en tu lugar de trabajo, fuera de cualquier programación.
Puedes ejecutar manualmente los siguientes elementos del flujo de trabajo de SQL en tu espacio 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.
Crea 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 varias configuraciones de flujo de trabajo en un repositorio de Dataform.
En la configuración de un flujo de trabajo, puedes configurar los siguientes parámetros de ejecución:
- Configuración de lanzamiento de compilación aplicada
- Selección de las acciones del flujo de trabajo de SQL que se ejecutarán
- Programación 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 etiquetas seleccionadas
Luego, durante una ejecución programada de la configuración de tu flujo de trabajo, Dataform implementa tu selección de acciones del resultado de compilación aplicado a BigQuery.
Los parámetros de configuración de lanzamiento y de 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 recursos del ciclo de vida
Dataform almacena los resultados de la compilación y las invocaciones de flujo de trabajo durante un período específico.
Vencimiento de las invocaciones de flujos 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 de flujo de trabajo más recientes 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 la 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 activo. Un nuevo resultado de compilación reemplaza el resultado de compilación en vivo actual. Dataform retiene el resultado de la compilación en vivo hasta que se reemplaza por un resultado de compilación nuevo. Un resultado de compilación reemplazado vence en un plazo de 24 horas.
Dataform quita los resultados de compilación vencidos de la lista de resultados de compilación anteriores en la página Detalles de una configuración de lanzamiento.
Dataform retiene los resultados de compilación creados por las invocaciones de flujo de trabajo durante toda la vida de la invocación de flujo de trabajo, hasta 24 horas después de que la invocació de flujo de trabajo venza o se borre.
¿Qué sigue?
- Para obtener información sobre las prácticas recomendadas para el ciclo de vida del código en Dataform, consulta Cómo administrar el ciclo de vida del código.
- Si quieres aprender a configurar anulaciones de compilación de espacios de trabajo de Dataform, consulta Cómo crear anulaciones de compilación de espacios de trabajo.
- Para aprender a configurar un solo resultado de compilación con las anulaciones de compilación de la API de Dataform, consulta Configura anulaciones de compilación con la API de Dataform.
- Si quieres aprender a crear configuraciones de lanzamiento de Dataform, consulta Cómo crear una configuración de lanzamiento.
- Para obtener información sobre cómo activar la ejecución de forma manual en un lugar de trabajo, consulta Cómo activar la ejecución.
- Para aprender a crear configuraciones de flujo de trabajo, consulta Cómo programar ejecuciones con configuraciones de flujo de trabajo.