Crea y ejecuta un flujo de trabajo en SQL en Dataform

En esta guía de inicio rápido, se explica el siguiente proceso en Dataform para crear un flujo de trabajo de SQL y ejecutarlo en BigQuery:

Antes de comenzar

  1. Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
  2. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Go to project selector

  3. Make sure that billing is enabled for your Google Cloud project.

  4. Enable the BigQuery and Dataform APIs.

    Enable the APIs

  5. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Go to project selector

  6. Make sure that billing is enabled for your Google Cloud project.

  7. Enable the BigQuery and Dataform APIs.

    Enable the APIs

Roles obligatorios

Para obtener los permisos que necesitas para realizar todas las tareas de este instructivo, pídele a tu administrador que te otorgue los siguientes roles de IAM en tu proyecto:

  • Administrador de Dataform (roles/dataform.admin): Repositorios
  • Editor de Dataform (roles/dataform.editor): invocaciones de flujos de trabajo y lugares 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.

Crea un repositorio de Dataform

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

    Ir a Dataform

  2. Haz clic en Crear repositorio.

  3. En la página Crear repositorio, haz lo siguiente:

    1. En el campo ID del repositorio, ingresa quickstart-repository.

    2. En la lista Región, selecciona europe-west4.

    3. Haz clic en Crear.

Crea e inicializa un espacio de trabajo de desarrollo de Dataform

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

    Ir a Dataform

  2. Haz clic en quickstart-repository.

  3. Haz clic en Crear lugar de trabajo de desarrollo.

  4. En la ventana Crear espacio de trabajo de desarrollo, haz lo siguiente:

    1. En el campo ID del lugar de trabajo, ingresa quickstart-workspace.

    2. Haz clic en Crear.

    Aparecerá la página del lugar de trabajo de desarrollo.

  5. Haga clic en Inicializar espacio de trabajo.

Crea una vista

En las siguientes secciones, definirás una vista que luego usarás como fuente de datos para una tabla.

Crea un archivo SQLX para definir una vista

  1. En el panel Archivos, junto a definitions/, haz clic en el menú Más.

  2. Haz clic en Crear archivo.

  3. En el panel Crear un archivo nuevo, haz lo siguiente:

    1. En el campo Agregar una ruta de archivo, ingresa definitions/quickstart-source.sqlx.

    2. Haz clic en Crear archivo.

Define una vista

  1. En el panel Archivos, expande la carpeta definitions.

  2. Haz clic en definitions/quickstart-source.sqlx.

  3. En el archivo, ingresa el siguiente fragmento de código:

    config {
     type: "view"
    }
    
    SELECT
     "apples" AS fruit,
     2 AS count
    UNION ALL
    SELECT
     "oranges" AS fruit,
     5 AS count
    UNION ALL
    SELECT
     "pears" AS fruit,
     1 AS count
    UNION ALL
    SELECT
     "bananas" AS fruit,
     0 AS count
    
  4. Haz clic en Formato.

Crea una tabla

En las siguientes secciones, definirás el tipo de tabla en un archivo SQLX y, luego, escribirás una declaración SELECT para definir la estructura de la tabla dentro del mismo archivo.

Crea un archivo SQLX para la definición de tablas

  1. En el panel Archivos, junto a definitions/, haz clic en el menú Más y, luego, selecciona Crear archivo.

  2. En el campo Agregar una ruta de acceso al archivo, ingresa definitions/quickstart-table.sqlx.

  3. Haz clic en Crear archivo.

Define el tipo de tabla, la estructura y las dependencias

  1. En el panel Archivos, expande el directorio definitions/.

  2. Selecciona quickstart-table.sqlx y, luego, ingresa el siguiente tipo de tabla y la sentencia SELECT:

    config {
     type: "table"
    }
    
    SELECT
     fruit,
     SUM(count) as count
    FROM ${ref("quickstart-source")}
    GROUP BY 1
    
  3. Haz clic en Formato.

Después de definir el tipo de tabla, Dataform muestra un error de validación de consulta porque quickstart-source aún no existe en BigQuery. Este error se resuelve cuando ejecutas el flujo de trabajo de SQL más adelante en este instructivo.

Otorga acceso de Dataform a BigQuery

Para ejecutar flujos de trabajo en BigQuery, la cuenta de servicio de Dataform debe tener los siguientes roles obligatorios:

Para otorgar estos roles, sigue estos pasos:

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

    Ve a la página IAM

  2. Haz clic en Agregar.

  3. En el campo Principales nuevas, ingresa el ID de tu cuenta de servicio de Dataform.

  4. En la lista desplegable Seleccionar un rol, selecciona el rol Usuario de trabajo de BigQuery.

  5. Haz clic en Agregar otro rol y, luego, en la lista desplegable Selecciona un rol, selecciona el rol Editor de datos de BigQuery.

  6. Haz clic en Agregar otro rol y, luego, en la lista desplegable Selecciona un rol, elige el rol Visualizador de datos de BigQuery.

  7. Haz clic en Guardar.

Ejecuta el flujo de trabajo

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

    Ir a Dataform

  2. En la página quickstart-workspace, haz clic en Iniciar ejecución.

  3. Haz clic en Todas las acciones.

  4. En el panel Ejecutar, haz clic en Iniciar ejecución.

    Dataform usa la configuración predeterminada del repositorio para crear el contenido de tu flujo de trabajo en un conjunto de datos de BigQuery llamado dataform.

Ver registros de ejecución en Dataform

  1. En la página quickstart-repository, haz clic en Registros de ejecución del flujo de trabajo.

  2. Para ver los detalles de tu ejecución, haz clic en la ejecución más reciente.

Limpia

Sigue estos pasos para evitar que se apliquen cargos a tu cuenta de Google Cloud por los recursos que usaste en esta página.

Borra el conjunto de datos creado en BigQuery

Para evitar que se generen cargos por los recursos de BigQuery, borra el conjunto de datos llamado dataform.

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

    Ir a BigQuery

  2. En el panel Explorador, expande tu proyecto y selecciona dataform.

  3. Haz clic en el menú Acciones y, luego, selecciona Borrar.

  4. En el cuadro de diálogo Borrar conjunto de datos, ingresa delete en el campo y, luego, haz clic en Borrar.

Borra el lugar de trabajo de desarrollo de Dataform

La creación de lugares de trabajo de desarrollo de Dataform no genera costos, pero para borrar el lugar de trabajo de desarrollo, puedes seguir estos pasos:

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

    Ir a Dataform

  2. Haz clic en quickstart-repository.

  3. En la pestaña Lugares de trabajo de desarrollo, haz clic en el menú Más de quickstart-workspace y, luego, selecciona Borrar.

  4. Para confirmar la acción, haz clic en Borrar.

Borra el repositorio de Dataform

La creación de repositorios de Dataform no genera costos, pero para borrar el repositorio, puedes seguir estos pasos:

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

    Ir a Dataform

  2. Para las quickstart-repository, haz clic en el menú Más y, luego, selecciona Borrar.

  3. En la ventana Borrar repositorio, ingresa el nombre del repositorio para confirmar su eliminación.

  4. Para confirmar la acción, haz clic en Borrar.

¿Qué sigue?