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
- 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.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Make sure that billing is enabled for your Google Cloud project.
-
Enable the BigQuery and Dataform APIs.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Make sure that billing is enabled for your Google Cloud project.
-
Enable the BigQuery and Dataform 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
En la consola de Google Cloud, ve a la página Dataform.
Haz clic en
Crear repositorio.En la página Crear repositorio, haz lo siguiente:
En el campo ID del repositorio, ingresa
quickstart-repository
.En la lista Región, selecciona
europe-west4
.Haz clic en Crear.
Crea e inicializa un espacio de trabajo de desarrollo de Dataform
En la consola de Google Cloud, ve a la página Dataform.
Haz clic en
quickstart-repository
.Haz clic en
Crear lugar de trabajo de desarrollo.En la ventana Crear espacio de trabajo de desarrollo, haz lo siguiente:
En el campo ID del lugar de trabajo, ingresa
quickstart-workspace
.Haz clic en Crear.
Aparecerá la página del lugar de trabajo de desarrollo.
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
En el panel Archivos, junto a
definitions/
, haz clic en el menú Más.Haz clic en Crear archivo.
En el panel Crear un archivo nuevo, haz lo siguiente:
En el campo Agregar una ruta de archivo, ingresa
definitions/quickstart-source.sqlx
.Haz clic en Crear archivo.
Define una vista
En el panel Archivos, expande la carpeta definitions.
Haz clic en
definitions/quickstart-source.sqlx
.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
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
En el panel Archivos, junto a
definitions/
, haz clic en el menú Más y, luego, selecciona Crear archivo.En el campo Agregar una ruta de acceso al archivo, ingresa
definitions/quickstart-table.sqlx
.Haz clic en Crear archivo.
Define el tipo de tabla, la estructura y las dependencias
En el panel Archivos, expande el directorio
definitions/
.Selecciona
quickstart-table.sqlx
y, luego, ingresa el siguiente tipo de tabla y la sentenciaSELECT
:config { type: "table" } SELECT fruit, SUM(count) as count FROM ${ref("quickstart-source")} GROUP BY 1
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:
- BigQuery Data Editor en los proyectos a los que Dataform necesita acceso de lectura y escritura. Por lo general, incluyen el proyecto que aloja tu repositorio de Dataform.
- BigQuery Data Viewer en proyectos a los que Dataform necesita acceso de solo lectura
- Usuario del trabajo de BigQuery en el proyecto que aloja tu repositorio de Dataform.
Para otorgar estos roles, sigue estos pasos:
En la consola de Google Cloud, ve a la página IAM.
Haz clic en Agregar.
En el campo Principales nuevas, ingresa el ID de tu cuenta de servicio de Dataform.
En la lista desplegable Seleccionar un rol, selecciona el rol Usuario de trabajo de BigQuery.
Haz clic en Agregar otro rol y, luego, en la lista desplegable Selecciona un rol, selecciona el rol Editor de datos de BigQuery.
Haz clic en Agregar otro rol y, luego, en la lista desplegable Selecciona un rol, elige el rol Visualizador de datos de BigQuery.
Haz clic en Guardar.
Ejecuta el flujo de trabajo
En la consola de Google Cloud, ve a la página Dataform.
En la página
quickstart-workspace
, haz clic en Iniciar ejecución.Haz clic en Todas las acciones.
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
En la página
quickstart-repository
, haz clic en Registros de ejecución del flujo de trabajo.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
.
En la consola de Google Cloud, ve a la página de BigQuery.
En el panel Explorador, expande tu proyecto y selecciona
dataform
.Haz clic en el menú
Acciones y, luego, selecciona Borrar.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:
En la consola de Google Cloud, ve a la página Dataform.
Haz clic en
quickstart-repository
.En la pestaña Lugares de trabajo de desarrollo, haz clic en el menú
Más dequickstart-workspace
y, luego, selecciona Borrar.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:
En la consola de Google Cloud, ve a la página Dataform.
Para las
quickstart-repository
, haz clic en el menú Más y, luego, selecciona Borrar.En la ventana Borrar repositorio, ingresa el nombre del repositorio para confirmar su eliminación.
Para confirmar la acción, haz clic en Borrar.
¿Qué sigue?
Para obtener más información sobre Dataform, consulta la descripción general de Dataform.
Para obtener más información sobre las funciones de Dataform, consulta Funciones de Dataform.
Para obtener más información sobre el núcleo de Dataform, consulta la Descripción general del núcleo de Dataform.
Para obtener información sobre cómo anular la configuración predeterminada de Dataform de tu repositorio, consulta Configura la configuración de Dataform.
Para obtener más información sobre la administración de conjuntos de datos en BigQuery, consulta Administra conjuntos de datos.
Para obtener más información sobre cómo administrar tablas en BigQuery, consulta Administra tablas.