En este documento, 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.
Acerca de las anulaciones de compilación de lugares de trabajo
Cuando desarrollas código de flujo de trabajo de SQL 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 Proyecto
- Google Cloud en el que Dataform ejecuta el resultado de compilación del lugar de trabajo, configurado en
workflow_settings.yaml
comodefaultProject
o endataform.json
comodefaultDatabase
. - Prefijo de la tabla
- Se agregó un prefijo personalizado a todos los nombres de las tablas en todos los lugares de trabajo del repositorio.
- Sufijo de esquema
Sufijo personalizado que se agrega al esquema de las tablas definidas en
Se establece como
defaultDataset
enworkflow_settings.yaml
,defaultSchema
endataform.json
o en el parámetroschema
en el bloqueconfig
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 agrega 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é espacio de trabajo proviene una tabla.
Cuando estableces ${workspaceName}
como el sufijo del esquema, Dataform agrega
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 ubicar 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:
- Google Cloud ID del proyecto :
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:
- Google Cloud project:
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:
- Google Cloud project:
analytics_dev
- Esquema:
dataform_kai
- nombres de tablas:
kai_name
, por ejemplo,kai_orders
Antes de comenzar
En la consola de Google Cloud, ve a la página Dataform.
Selecciona o crea un repositorio.
Opcional: Para anular el proyecto Google Cloud predeterminado, otorga acceso a tu cuenta de servicio de Dataform al proyecto Google Cloud que planeas usar.
Roles obligatorios
Para obtener los permisos que necesitas para crear anulaciones de compilación de espacios de trabajo,
pídele a tu administrador que te otorgue el rol de IAM de
administrador de Dataform (roles/dataform.admin
) 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.
Crea anulaciones de compilación de lugares de trabajo
Para crear anulaciones de compilación de lugares de trabajo de Dataform, sigue estos pasos:
- En tu repositorio, ve a Configuración.
- Haz clic en Editar.
- En el panel Anulaciones de compilación de lugares de trabajo, en el campo Google Cloud ID del proyecto, ingresa el ID del proyecto Google Cloud .
- En el campo Prefijo de tabla, ingresa un prefijo para todos los nombres de las tablas.
- Opcional: Para crear un prefijo de tabla dinámico que sea único para cada
lugar de trabajo, ingresa
${workspaceName}
como prefijo de la tabla.
- Opcional: Para crear un prefijo de tabla dinámico que sea único para cada
lugar de trabajo, ingresa
- En el campo Sufijo de esquema, ingresa un sufijo para agregar al esquema de la tabla o vista creada.
- Opcional: Para crear un sufijo de esquema dinámico que sea único para cada
lugar de trabajo, ingresa
${workspaceName}
como sufijo de la tabla.
- Opcional: Para crear un sufijo de esquema dinámico que sea único para cada
lugar de trabajo, ingresa
- 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:
- En tu repositorio, ve a Configuración.
- Haz clic en Editar.
- 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:
- En tu repositorio, ve a Configuración.
- Haz clic en Editar.
- En el panel Anulaciones de compilación de lugares de trabajo, haz clic en Borrar todo y, luego, en Guardar.
¿Qué sigue?
- Para obtener información sobre cómo activar la ejecución de forma manual, consulta Cómo activar la ejecución.