Crear y ejecutar un flujo de trabajo de SQL en Dataform
En esta guía de inicio rápido, se explica el proceso siguiente 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
A fin de obtener los permisos que necesitas para realizar todas las tareas de este instructivo, solicita a tu administrador que te otorgue el los siguientes roles de IAM en tu proyecto:
-
Administrador de Dataform (
roles/dataform.admin
): Repositorios -
Editor de Dataform (
roles/dataform.editor
): invocaciones del flujo de trabajo y lugares de trabajo
Si quieres obtener más información para otorgar roles, consulta Administra el acceso.
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 inicializar un lugar 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 desarrollo. Workspace.En la ventana Crear lugar 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 vista fuente de una tabla.
Crea un archivo SQLX para definir una vista
En el panel Archivos, junto a
definitions/
, haz clic en el Menú MásHaz clic en Crear archivo.
En el panel Crear archivo nuevo, haz lo siguiente:
En el campo Agregar una ruta de archivo, ingresa
definitions/quickstart-source.sqlx
.Haz clic en Crear archivo.
Cómo definir una vista
En el panel Files, expande la carpeta de definiciones.
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.
Crear una tabla
En las siguientes secciones, definirás el tipo de tabla en un archivo SQLX y, luego,
escribir una sentencia 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 en el menú Más y, luego, selecciona Crear archivo.En el campo Add a file path, ingresa
definitions/quickstart-table.sqlx
.Haz clic en Crear archivo.
Cómo definir el tipo, la estructura y las dependencias de la tabla
En el panel Files, expande el directorio
definitions/
.Selecciona
quickstart-table.sqlx
y, luego, ingresa el siguiente tipo de tabla InstrucciónSELECT
: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 arroja un error de validación de consulta.
porque quickstart-source
aún no existe en BigQuery. Esta
se resolverá cuando ejecutes 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 API de Dataform la cuenta de servicio debe tener los siguientes roles obligatorios:
- Editor de datos de BigQuery en proyectos para los que Dataform necesita acceso de lectura y escritura. Ellas suelen incluir el proyecto que aloja tu repositorio de Dataform.
- Visualizador de datos de BigQuery en los proyectos a los que Dataform necesita acceso de solo lectura.
- Usuario de 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 tu servicio de Dataform. ID de la cuenta.
En la lista desplegable Seleccionar un rol, selecciona Rol Usuario del trabajo de BigQuery.
Haz clic en Agregar otro rol y, luego, en el menú desplegable Selecciona un rol. selecciona el rol Editor de datos de BigQuery.
Haz clic en Agregar otro rol y, luego, en el menú desplegable Selecciona un rol. selecciona 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 de
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 contenidos 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 última ejecución.
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 apliquen 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 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 del espacio de trabajo de desarrollo de Dataform no genera costos, pero se debe borrar en el lugar de trabajo de desarrollo, sigue estos pasos:
En la consola de Google Cloud, ve a la página Dataform.
Haz clic en
quickstart-repository
.En la pestaña Development workspaces, 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 del repositorio de Dataform no genera costos, pero borrar de Terraform, puedes seguir estos pasos:
En la consola de Google Cloud, ve a la página Dataform.
En
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 Dataform. descripción general.
Para obtener más información sobre las funciones de Dataform, consulta la Descripción general de Atributos de Dataform.
Para obtener más información sobre Dataform Core, consulta Descripción general de Dataform Core.
Para aprender a anular la configuración predeterminada de Dataform de tu en un repositorio de datos, consulta Cómo configurar Dataform Configuración.
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 en BigQuery. tablas.