Configura acciones adicionales

Este documento te muestra cómo hacer lo siguiente:

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. Crea una tabla.

  5. Define un archivo SQLX de cualquiera de los siguientes tipos:

Roles obligatorios

Para obtener los permisos que necesitas para completar las tareas de este documento, pídele a tu administrador que te otorgue el rol de IAM de editor de Dataform (roles/dataform.editor) en los espacios de trabajo. 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.

Define una instrucción de SQL que se ejecutará antes de la creación de la tabla

Puedes configurar Dataform para que ejecute una o más sentencias SQL antes de crear una tabla seleccionada en BigQuery. Para ejecutar una instrucción SQL antes de que Dataform cree una tabla seleccionada, agrega la instrucción al bloque pre_operations en el archivo SQLX de definición de la tabla.

Para crear una instrucción de SQL personalizada que se ejecute antes de que Dataform cree una tabla específica, sigue estos pasos:

  1. Ve a tu espacio de trabajo de desarrollo.
  2. En el panel Archivos, expande definitions/.
  3. Abre un archivo de definición de tablas SQLX.
  4. Fuera del bloque config, ingresa pre_operations { ... }.
  5. Dentro de pre_operations { ... }, agrega tu instrucción de SQL.
  6. Opcional: Para agregar varias instrucciones, sepáralas con ---.
  7. Opcional: Haz clic en Formato.

En la siguiente muestra de código, se muestra una sentencia pre_operations que crea una función temporal que se puede usar en la sentencia select:

pre_operations {
  CREATE TEMP FUNCTION AddFourAndDivide(x INT64, y INT64)
    RETURNS FLOAT64
    AS ((x + 4) / y);
}

Define una instrucción de SQL que se ejecutará después de la creación de la tabla

Puedes configurar Dataform para que ejecute una o más instrucciones SQL después de crear una tabla seleccionada en BigQuery. Para ejecutar una instrucción de SQL después de que Dataform cree una tabla seleccionada, agrega la instrucción al bloque post_operations en el archivo SQLX de definición de la tabla. Puedes agregar varias instrucciones de SQL al bloque post_operations.

Para crear una instrucción de SQL personalizada que se ejecute después de que Dataform cree una tabla específica, sigue estos pasos:

  1. Ve a tu espacio de trabajo de desarrollo.
  2. En el panel Archivos, expande definitions/.
  3. Abre un archivo de definición de tablas SQLX.
  4. Fuera del bloque config, ingresa post_operations { ... }.
  5. Dentro de post_operations { ... }, agrega tu instrucción de SQL.
  6. Opcional: Haz clic en Formato.

En la siguiente muestra de código, se muestran sentencias post_operations que otorgan a los grupos acceso a la tabla creada:

  post_operations {
    GRANT `roles/bigquery.dataViewer`
    ON
    TABLE ${self()}
    TO "group:allusers@example.com", "user:otheruser@example.com"
  }

Inhabilita la creación de tablas

Para evitar que Dataform cree una tabla seleccionada en BigQuery, puedes inhabilitarla en su archivo de definición de tablas SQLX. Dataform mantiene una tabla inhabilitada en el gráfico de dependencias, pero no la compila ni la crea. Esto puede ser útil, por ejemplo, si una tabla falla y no quieres que falle todo el flujo de trabajo mientras solucionas el problema.

Para inhabilitar una tabla, sigue estos pasos:

  1. Ve a tu espacio de trabajo de desarrollo.
  2. En el panel Archivos, expande definitions/.
  3. Selecciona un archivo de definición de tabla SQLX.
  4. En el bloque config del archivo, ingresa disabled: true.
  5. Opcional: Haz clic en Formato.

En el siguiente muestra de código, se muestra una tabla inhabilitada:

config {
  type: "table",
  disabled: true
}

select * from ${ref("source_data")}

Agrega etiquetas de ejecución

En esta sección, se muestra cómo agregar etiquetas a los archivos SQLX del núcleo de Dataform para categorizar tu flujo de trabajo.

Para organizar los componentes de tu flujo de trabajo en colecciones, puedes agregar etiquetas personalizadas a los archivos SQLX de los siguientes tipos:

  • table
  • view
  • incremental
  • assertion
  • operations

Durante la ejecución del flujo de trabajo, puedes ejecutar solo archivos con una etiqueta seleccionada.

Con Cloud Composer o Workflows junto con Cloud Scheduler, puedes crear un programa que ejecute un flujo de trabajo de Dataform con una etiqueta seleccionada en un intervalo específico.

Agregar una etiqueta

Puedes agregar varias etiquetas a un archivo SQLX.

Para agregar una etiqueta a un archivo SQLX, sigue estos pasos:

  1. Ve a tu espacio de trabajo de desarrollo.
  2. En el panel Archivos, expande definitions/.
  3. Selecciona un archivo SQLX.
  4. En el bloque config, agrega una etiqueta con el siguiente formato:

    tags: ["CUSTOM_TAG"]
    

    Reemplaza CUSTOM_TAG por tu etiqueta.

  5. Opcional: Para agregar varias etiquetas, sepáralas con una coma (,).

  6. Opcional: Haz clic en Formato.

En la siguiente muestra de código, se muestra la vista user_counts con las etiquetas daily y hourly:

config {
  type: "view",
  name: "user_counts",
  tags: ["daily", "hourly"]
}

¿Qué sigue?