Configura las compilaciones

En este documento, se muestra cómo hacer lo siguiente en Dataform:

Antes de comenzar

  1. En la consola de Google Cloud, ve a la página Dataform.

    Ir a Dataform

  2. Selecciona o crea un repositorio.

  3. Selecciona o crea un lugar de trabajo de desarrollo.

  4. Opcional: Para anular el proyecto de Google Cloud predeterminado en la configuración de la versión, otorga acceso a tu cuenta de servicio de Dataform al proyecto que planeas usar.

Roles obligatorios

Para obtener los permisos que necesitas para completar las tareas de este documento, pídele a tu administrador que te otorgue los siguientes roles de IAM en los repositorios:

Para obtener más información sobre cómo otorgar roles, consulta Administra el acceso a proyectos, carpetas y organizaciones.

También puedes obtener los permisos necesarios mediante roles personalizados o cualquier otro rol predefinido.

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

En esta sección, 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.

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

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

Dataform compila el código del flujo de trabajo 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 defines 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 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. Luego, puedes activar o programar ejecuciones manualmente para influir en cuándo Dataform ejecuta todo tu flujo de trabajo 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 del lugar de trabajo para cada repositorio.

Cuando activas de forma manual una 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 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 y del sufijo del esquema dinámicos contienen la variable ${workspaceName}. Cuando activas una 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 tu repositorio.

En una configuración de lanzamiento, puedes configurar las siguientes anulaciones 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 parámetros de configuración 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:

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 en un lugar de trabajo de Dataform, fuera de cualquier programa. Puedes ejecutar acciones seleccionadas en el flujo de trabajo.
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 las acciones de flujo de trabajo que se ejecutarán 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 activar de forma manual la ejecución instantánea de un flujo de trabajo en tu lugar de trabajo, fuera de cualquier programa.

Puedes ejecutar manualmente los siguientes elementos del flujo de trabajo 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 la compilación del lugar de trabajo.

Crea configuraciones de flujo de trabajo

Con los parámetros de configuración 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 que se ejecutarán.
  • Programa y zona horaria de las ejecuciones.

Puedes seleccionar las siguientes acciones de flujo de trabajo 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 los 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 si se crearon en un espacio 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 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.

Crea anulaciones de compilación de lugares de trabajo

En las siguientes secciones, se muestra cómo crear anulaciones de compilación de lugares de trabajo para aislar tablas y vistas creadas desde tus lugares de trabajo de Dataform en BigQuery. Puedes usar anulaciones de compilación de espacios de trabajo para crear entornos de desarrollo de Dataform aislados.

Cuando desarrollas código de flujo de trabajo en un lugar de trabajo de Dataform, Dataform compila el código en tu lugar de trabajo en tiempo real para crear un resultado de compilación del lugar de trabajo. Dataform usa la configuración definida en el archivo de configuración de flujo de trabajo para crear el resultado de la compilación del espacio de trabajo. Luego, cuando activas la ejecución en un lugar de trabajo, Dataform ejecuta el resultado de la compilación del lugar de trabajo en BigQuery.

Para anular la configuración predeterminada establecida en la configuración de flujo de trabajo para todos los lugares de trabajo de tu repositorio, puedes crear anulaciones de compilación de lugares de trabajo.

Con las anulaciones de compilación de lugares de trabajo, puedes anular la siguiente configuración para todos los lugares de trabajo de tu repositorio:

Proyecto
El proyecto de Google Cloud en el que Dataform ejecuta el resultado de la compilación del espacio de trabajo, configurado en workflow_settings.yaml como defaultProject o en dataform.json como defaultDatabase.
Prefijo de la tabla
Es el prefijo personalizado que se agregó a todos los nombres de las tablas de todos los espacios de trabajo del repositorio.
Sufijo de esquema
El sufijo personalizado que se adjunta al esquema de las tablas. Se establece como defaultDataset en workflow_settings.yaml, defaultSchema en dataform.json o en el parámetro schema en el bloque config de una tabla.

Para crear entornos de desarrollo aislados, puedes aislar espacios de trabajo con anulaciones de compilación únicas. Puedes modificar de forma dinámica las anulaciones de compilación del prefijo de la tabla y del sufijo del esquema con la variable ${workspaceName}.

Cuando activas la ejecución de forma manual en un lugar de trabajo, la variable ${workspaceName} inserta el nombre del lugar de trabajo en las anulaciones de compilación del lugar de trabajo.

Cuando estableces ${workspaceName} como el prefijo de la tabla, Dataform añade el nombre del lugar de trabajo a los nombres de todas las tablas del lugar de trabajo. Después de la ejecución, en BigQuery, puedes identificar de qué lugar de trabajo proviene una tabla.

Cuando estableces ${workspaceName} como el sufijo del esquema, Dataform aggrega el nombre del lugar de trabajo a defaultSchema y crea un esquema personalizado dedicado al lugar de trabajo. Después de la ejecución, en BigQuery, puedes encontrar todas las tablas que se ejecutaron desde un espacio de trabajo específico en el esquema dedicado.

Ejemplo de anulaciones de compilación de lugares de trabajo dinámicos

En el siguiente ejemplo, se muestran las anulaciones de compilación de espacios de trabajo dinámicos aplicadas a un repositorio que contiene espacios de trabajo nombrados en función de los desarrolladores que trabajan en el repositorio: Sasha y Kai.

El objetivo de las anulaciones de compilación de lugares de trabajo en este ejemplo es crear entornos de desarrollo aislados para Sasha y Kai.

La siguiente configuración predeterminada se establece en workflow_settings.yaml:

  • defaultProject : analytics
  • defaultDataset: dataform

Las siguientes anulaciones de compilación del lugar de trabajo crean un prefijo de tabla y un sufijo de esquema dinámicos para cada lugar de trabajo en el repositorio:

  • ID del proyecto de Google Cloud: analytics_dev
  • Prefijo de la tabla: ${workspaceName}
  • Sufijo del esquema: ${workspaceName}

Cuando Sasha activa de forma manual la ejecución en el lugar de trabajo Sasha, Dataform ejecuta su contenido con la siguiente configuración:

  • Proyecto de Google Cloud: analytics_dev
  • Esquema: dataform_sasha
  • Nombres de tablas: sasha_name, por ejemplo, sasha_orders

Cuando Kai activa la ejecución de forma manual en el lugar de trabajo Kai, Dataform ejecuta su contenido con la siguiente configuración:

  • Proyecto de Google Cloud: analytics_dev
  • Esquema: dataform_kai
  • Nombres de tablas: kai_name, por ejemplo, kai_orders

Crea anulaciones de compilación de lugares de trabajo

Para crear anulaciones de compilación de lugares de trabajo de Dataform, sigue estos pasos:

  1. En tu repositorio, ve a Configuración.
  2. Haz clic en Editar.
  3. En el panel Anulaciones de compilación de Workspace, en el campo ID del proyecto de Google Cloud, ingresa el ID del proyecto.
  4. En el campo Prefijo de tabla, ingresa un prefijo para todos los nombres de las tablas.
    1. Opcional: Para crear un prefijo de tabla dinámico que sea único para cada lugar de trabajo, ingresa ${workspaceName} como prefijo de la tabla.
  5. En el campo Sufijo de esquema, ingresa un sufijo para agregar al esquema de la tabla o vista creada.
    1. Opcional: Para crear un sufijo de esquema dinámico que sea único para cada lugar de trabajo, ingresa ${workspaceName} como sufijo de la tabla.
  6. Haz clic en Guardar.

Dataform aplica anulaciones de compilación de lugares de trabajo a todos los lugares de trabajo en tu repositorio.

Edita las anulaciones de compilación de lugares de trabajo

Para editar las anulaciones de compilación del lugar de trabajo de Dataform, sigue estos pasos:

  1. En tu repositorio, ve a Configuración.
  2. Haz clic en Editar.
  3. Edita las anulaciones de compilación del lugar de trabajo y, luego, haz clic en Guardar.

Borra las anulaciones de compilación de lugares de trabajo

Para borrar las anulaciones de compilación del lugar de trabajo de Dataform, sigue estos pasos:

  1. En tu repositorio, ve a Configuración.
  2. Haz clic en Editar.
  3. En el panel Anulaciones de compilación de lugares de trabajo, haz clic en Borrar todo y, luego, en Guardar.

Configura anulaciones de compilación con la API de Dataform

En esta sección, se muestra cómo crear y ejecutar un resultado de compilación con anulaciones de compilación mediante la API de Dataform.

Acerca de las anulaciones de compilación de la API de Dataform

Para ejecutar tu flujo de trabajo, Dataform compila tu código en SQL para crear un resultado de compilación. Luego, durante una invocación de flujo de trabajo, Dataform ejecuta el resultado de la compilación en BigQuery.

De forma predeterminada, Dataform usa la configuración del archivo de configuración del flujo de trabajo para crear el resultado de la compilación. Para aislar los datos ejecutados en diferentes etapas del ciclo de vida de desarrollo, puedes anular la configuración predeterminada con anulaciones de compilación.

Si pasas solicitudes a la API de Dataform en la terminal, puedes crear y ejecutar un resultado de compilación único con anulaciones de compilación. Puedes crear un resultado de compilación de un lugar de trabajo o de un commit de Git seleccionado.

Para crear un resultado de compilación con anulaciones de compilación, debes enviar la solicitud compilationResults.create de la API de Dataform. En la solicitud, debes especificar una fuente, que debe ser un lugar de trabajo o una confirmación de Git, para que Dataform la compile en el resultado de la compilación. En el objeto CodeCompilationConfig de la solicitud compilationResults.create, puedes configurar las anulaciones de compilación.

Luego, puedes ejecutar el resultado de la compilación creada en una solicitud a la API de workflowInvocations.create Dataform.

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

Proyecto de Google Cloud
Es el proyecto en el que Dataform ejecuta el resultado de la compilación, establecido en el archivo workflow_settings.yaml como la propiedad defaultProject o en el archivo dataform.json como la propiedad defaultDatabase.
Prefijo de la tabla
Es el prefijo personalizado que se agrega a todos los nombres de las tablas en el resultado de la compilación.
Sufijo de esquema
El sufijo personalizado que se agrega al esquema de tablas definido en la propiedad defaultDataset del archivo workflow_settings.yaml, la propiedad defaultSchema del archivo dataform.json o en el parámetro schema del bloque config de una tabla.
Valor de una variable de compilación
Es el valor de una variable de compilación que se usará en el resultado de la compilación. Puedes usar variables de compilación para ejecutar tablas de forma condicional.

Como alternativa a las anulaciones de compilación de la API de Dataform que solo puedes usar para un resultado de compilación, puedes configurar anulaciones de compilación del espacio de trabajo en la consola de Google Cloud.

Para obtener información sobre formas alternativas de configurar anulaciones de compilación en Dataform, consulta Introducción al ciclo de vida del código.

Cómo establecer una fuente de resultados de compilación

Para generar la solicitud compilationResults.create de la API de Dataform, debes especificar una fuente para el resultado de la compilación.

Puedes configurar un lugar de trabajo de Dataform o una rama, una etiqueta o un SHA de confirmación de Git como la fuente en la solicitud de compilationResults.create.

Cómo configurar un espacio de trabajo como fuente de resultados de compilación

  • En la solicitud compilationResults.create, propaga la propiedad workspace con la ruta de acceso de un espacio de trabajo de Dataform seleccionado en el siguiente formato:

    {
    "workspace": "projects/PROJECT_NAME/locations/LOCATION/repositories/REPOSITORY_NAME/workspaces/WORKSPACE_NAME"
    }
    

    Reemplaza lo siguiente:

    • PROJECT_NAME: El nombre de tu proyecto de Google Cloud.
    • LOCATION: Es la ubicación de tu repositorio de Dataform, que se establece en la configuración del flujo de trabajo.
    • REPOSITORY_NAME: Es el nombre de tu repositorio de Dataform.
    • WORKSPACE_NAME: Es el nombre de tu espacio de trabajo de Dataform.

En la siguiente muestra de código, se muestra la propiedad workspace en la solicitud compilationResults.create establecida en un espacio de trabajo llamado "sales-test":

{
"workspace": "projects/analytics/locations/europe-west4/repositories/sales/workspaces/sales-test"
}

Cómo configurar un commit de Git como fuente de resultados de compilación

  • En la solicitud compilationResults.create, propaga la propiedad gitCommitish con la rama, la etiqueta o el SHA de confirmación de Git seleccionados en el siguiente formato:

    {
      "gitCommitish": "GIT_COMMITISH"
    }
    

    Reemplaza GIT_COMMITISH por la rama, la etiqueta o el SHA de confirmación de Git seleccionados para el resultado de la compilación.

En la siguiente muestra de código, se muestra la propiedad gitCommitish en la solicitud compilationResults.create establecida en "staging":

{
  "gitCommitish": "staging"
}

Anula el proyecto predeterminado

Para crear tablas de etapa o producción en un proyecto de Google Cloud independiente del proyecto que se usa para el desarrollo, puedes pasar un ID de proyecto distinto en el objeto CodeCompilationConfig de la solicitud compilationResults.create de la API de Dataform.

Pasar un ID de proyecto predeterminado independiente en la solicitud compilationResults.create anula el ID de proyecto predeterminado configurado en el archivo de configuración del flujo de trabajo, pero no anula los IDs de proyecto configurados en tablas individuales.

  • Para anular el ID de proyecto predeterminado, establece la propiedad defaultDatabase en el ID de proyecto seleccionado en el objeto CodeCompilationConfig con el siguiente formato:

    {
      "codeCompilationConfig": {
        "defaultDatabase": "PROJECT_NAME"
      }
    }
    

    Reemplaza PROJECT_NAME por el ID del proyecto que deseas configurar para el resultado de la compilación.

Agrega un prefijo de tabla

Para identificar rápidamente las tablas del resultado de la compilación, puedes agregar un prefijo a todos los nombres de las tablas en el resultado de la compilación pasando el prefijo de la tabla en el objeto CodeCompilationConfig en la solicitud compilationResults.create de la API de Dataform.

  • Para agregar un prefijo de tabla, establece la propiedad tablePrefix en el objeto CodeCompilationConfig con el siguiente formato:

    {
      "codeCompilationConfig": {
        "tablePrefix": "PREFIX",
      }
    }
    

    Reemplaza PREFIX por el prefijo que deseas agregar, por ejemplo, staging.

    Por ejemplo, si el nombre de tu tabla es table_name, Dataform creará tablas con el nombre staging_table_name.

Agrega un sufijo de esquema

Para separar los datos de desarrollo, etapa y producción, puedes agregar un sufijo a los esquemas en un resultado de compilación. Para ello, pasa el sufijo del esquema en el objeto CodeCompilationConfig en la solicitud compilationResults.create de la API de Dataform.

  • Para agregar un sufijo de esquema, establece la propiedad schemaSuffix en el objeto CodeCompilationConfig en el siguiente formato:

    {
      "codeCompilationConfig": {
        "schemaSuffix": "SUFFIX",
      }
    }
    

    Reemplaza SUFFIX por el sufijo que deseas agregar, por ejemplo, _staging.

    Por ejemplo, si la propiedad defaultDataset del archivo workflow_settings.yaml está configurada en dataform, Dataform crea tablas en el esquema dataform_staging.

Ejecuta archivos seleccionados de forma condicional con variables de compilación

Para ejecutar una tabla seleccionada solo en una configuración de ejecución específica, puedes crear una variable de compilación para la configuración de ejecución y, luego, pasar su valor en el objeto CodeCompilationConfig en la solicitud compilationResults.create de la API de Dataform.

Para ejecutar una tabla de forma condicional en una configuración de ejecución específica con la API de Dataform, sigue estos pasos:

  1. Crea una variable de compilación y agrégala a las tablas seleccionadas.
  2. Establece el par clave-valor YOUR_VARIABLE y VALUE en el bloque codeCompilationConfig de una solicitud de compilación de la API de Dataform en el siguiente formato:

    {
      "codeCompilationConfig": {
        "vars": {
          "YOUR_VARIABLE": "VALUE"
        }
      }
    }
    
  3. Reemplaza YOUR_VARIABLE por el nombre de tu variable, por ejemplo, executionSetting.

  4. Reemplaza VALUE por el valor de la variable para este resultado de compilación que cumpla con la condición when establecida en las tablas seleccionadas.

En la siguiente muestra de código, se muestra la variable executionSetting que se pasa a una solicitud de compilación de la API de Dataform:

{
  "gitCommitish": "staging",
  "codeCompilationConfig": {
    "vars": {
      "executionSetting": "staging"
    }
  }
}

Ejecuta un resultado de compilación con anulaciones de compilación

En la siguiente muestra de código, se muestra un ID de resultado de compilación que se pasa en una solicitud workflowInvocations.create:

{
  "compilationResult": "projects/my-project-name/locations/europe-west4/repositories/my-repository-name/compilationResults/7646b4ed-ac8e-447f-93cf-63c43249ff11"
}

Crea una configuración de lanzamiento

En las siguientes secciones, se muestra cómo crear una configuración de lanzamiento en Dataform para configurar plantillas de parámetros de configuración de compilación, que puedes ejecutar según un programa. Puedes usar configuraciones de lanzamiento para configurar entornos de ejecución, por ejemplo, la etapa de pruebas y producción.

Para ejecutar flujos de trabajo en BigQuery, Dataform compila el código del flujo de trabajo de SQL en un resultado de compilación. Este proceso se realiza automáticamente cuando desarrollas un flujo de trabajo en un espacio de trabajo de Dataform.

Las configuraciones de lanzamiento te permiten personalizar los resultados de la compilación. Puedes usarlos para crear entornos de ejecución, por ejemplo, de etapa de pruebas.

Configuración de la configuración de lanzamiento

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

Una configuración de lanzamiento de Dataform contiene la siguiente configuración de compilación:

Configuración de la versión
El ID de la versión, el commitish de Git para los resultados de compilación y la frecuencia con la que se crean los resultados de compilación. La frecuencia es un parámetro de configuración opcional. Si se establece, la frecuencia mínima es de 1 hora.
Anulaciones de compilación
Anulaciones del proyecto de Google Cloud, el prefijo de la tabla, el sufijo del esquema y las variables de compilación definidas en la configuración del flujo de trabajo.

Cómo funciona una configuración de lanzamiento

Dataform crea resultados de compilación a partir de una configuración de lanzamiento con la frecuencia especificada o cuando activas la compilación. La frecuencia es una configuración opcional y no es necesaria para crear una configuración de lanzamiento. Si se configura, la frecuencia mínima es de 1 hora. Puedes activar la compilación de forma manual en la página Detalles de la configuración de lanzamiento o activar la compilación con el método releaseConfigs de la API de Dataform.

Durante la compilación, Dataform extrae código del commit de Git especificado de tu repositorio. Luego, Dataform compila el código con las anulaciones de compilación aplicadas (si las hay) y crea el resultado de la compilación. El resultado de compilación más reciente que se creó para la configuración de lanzamiento es el resultado de la compilación en vivo.

Puedes programar ejecuciones de resultados de compilación desde parámetros de configuración de lanzamiento en parámetros de configuración de flujo de trabajo. También puedes ejecutar una configuración de lanzamiento seleccionada fuera de cualquier programa. Durante la ejecución de una configuración de flujo de trabajo, Dataform ejecuta el resultado de compilación en vivo de la configuración de lanzamiento seleccionada.

Crea una configuración de lanzamiento

Para crear una configuración de lanzamiento de Dataform, sigue estos pasos:

  1. En el repositorio, ve a Lanzamientos y programación.
  2. En la sección Configuraciones de lanzamiento, haz clic en Crear.
  3. En el panel Crear configuración de lanzamiento, configura la configuración de la versión.

    1. En el campo ID de versión, ingresa un ID único para la configuración de la versión.

      Los IDs solo pueden incluir números, letras, guiones y guiones bajos.

    2. En el campo Commitish de Git, ingresa la rama de Git o el SHA de confirmación de Git para la versión.

      En un repositorio de Dataform que no está conectado a un repositorio remoto, el valor siempre es main.

    3. Opcional: En la lista Frecuencia, selecciona la frecuencia con la que se crean los resultados de compilación.

      Si se establece, la frecuencia mínima es de 1 hora.

  4. Opcional: En la sección Anulaciones de compilación, configura la configuración de compilación.

    1. En el campo ID del proyecto de Google Cloud, ingresa el ID del proyecto de Google Cloud en el que deseas almacenar el resultado de la compilación.
    2. En el campo Sufijo de esquema, ingresa un sufijo para agregar al esquema configurado en la configuración del flujo de trabajo.
    3. En el campo Prefijo de tabla, ingresa un prefijo para todos los nombres de las tablas.
  5. Opcional: En la sección Variables de compilación, configura las variables de compilación.

    1. Haz clic en Agregar variable.
    2. En el campo Clave, ingresa la variable de compilación.
    3. En el campo Valor, ingresa el valor de la variable de compilación.
    4. Para agregar otra variable de compilación, haz clic en Agregar variable.
  6. Haz clic en Crear.

Si anulas el proyecto predeterminado, asegúrate de que la cuenta de servicio de Dataform tenga acceso al proyecto establecido en la configuración de lanzamiento.

Por ejemplo, la siguiente configuración de lanzamiento crea un resultado de compilación production de la rama main cada hora, sin ninguna anulación de compilación:

  • ID de versión: production
  • Git commitish: main
  • Frecuencia: por hora
  • No hay anulaciones de compilación

Cómo ver los detalles de la configuración de una versión

Puedes ver los siguientes detalles de una configuración de lanzamiento:

  • Configuración de la versión
    • Commitish de Git
    • Marca de tiempo del resultado de compilación más reciente
    • Programa de cron
    • Anulaciones de compilación
    • Variables de compilación
  • Resultado de la compilación en vivo
    • Marca de tiempo de creación
    • Commitish de Git
    • SHA de confirmación
  • Resultados de compilaciones anteriores

Para ver los detalles de una configuración de lanzamiento, sigue estos pasos:

  1. En el repositorio, ve a Lanzamientos y programación.
  2. Selecciona una configuración de lanzamiento.
  3. En la página Release configuration details, inspecciona los detalles de la configuración de lanzamiento.

En la tabla Resultados de la compilación programada, se muestran los resultados de compilación anteriores que creó automáticamente la configuración de lanzamiento.

La tabla Resultados de compilación manual/con API muestra los resultados de compilación que se crearon de forma manual o a través de llamadas a la API de Dataform de los 1,000 resultados de compilación más recientes del repositorio.

Cómo activar la compilación de forma manual

Para crear un resultado de compilación de forma manual a partir de una configuración de lanzamiento seleccionada, sigue estos pasos:

  1. En el repositorio, ve a Lanzamientos y programación.
  2. Selecciona una configuración de lanzamiento.
  3. En la página Detalles de la configuración de lanzamiento, haz clic en Nueva compilación.

El resultado de la compilación recién creado se convierte en el resultado en vivo de esa configuración de lanzamiento.

Los resultados de la compilación manual se muestran en la tabla Resultados de compilación manual/con API en la página Detalles de la configuración de lanzamiento.

Activa la ejecución de una configuración de lanzamiento

Para activar la ejecución del resultado de la compilación en vivo en una configuración de lanzamiento seleccionada en BigQuery, sigue estos pasos:

  1. En el repositorio, ve a Lanzamientos y programación.
  2. En la sección Configuraciones de lanzamiento, haz clic en Iniciar ejecución.
  3. En el panel Ejecutar flujo de trabajo manual, en la lista Configuración de lanzamiento, selecciona una configuración de lanzamiento.
  4. Selecciona las acciones del flujo de trabajo que se ejecutarán:
    1. Para ejecutar todo el flujo de trabajo, haz clic en Todas las acciones.
    2. Para ejecutar las acciones seleccionadas en el flujo de trabajo, haz clic en Selección de acciones y, luego, selecciona las acciones.
    3. Para ejecutar acciones con etiquetas seleccionadas, haz clic en Selección de etiquetas y, luego, selecciona las etiquetas.
  5. Opcional: Para ejecutar las acciones o etiquetas seleccionadas y sus dependencias, selecciona la opción Incluir dependencias.
  6. Opcional: Para ejecutar las acciones o etiquetas seleccionadas y sus dependencias, selecciona la opción Incluir dependencias.
  7. Opcional: Para volver a compilar todas las tablas desde cero, selecciona la opción Run with full refresh.

    Sin esta opción, Dataform actualiza las tablas incrementales sin volver a compilarlas desde cero.

  8. Haz clic en Iniciar ejecución.

Edita una configuración de lanzamiento

Para editar la configuración de una versión, sigue estos pasos:

  1. En el repositorio, ve a Lanzamientos y programación.
  2. En la configuración de lanzamiento que deseas editar, haz clic en el menú Más y, luego, en Editar.
  3. En el panel Editar configuración de lanzamiento, edita la configuración de la configuración de lanzamiento y, luego, haz clic en Guardar.

Borra una configuración de lanzamiento

Para borrar una configuración de lanzamiento, sigue estos pasos:

  1. En el repositorio, ve a Lanzamientos y programación.
  2. En la configuración de lanzamiento que deseas borrar, haz clic en el menú Más y, luego, en Borrar.
  3. En el diálogo Borrar configuración de lanzamiento, haz clic en Borrar.

¿Qué sigue?