Prácticas recomendadas para el tamaño del repositorio
El tamaño del repositorio afecta a varios aspectos del desarrollo en Dataform, como los siguientes:
- Colaboración
- Legibilidad de la base de código
- Procesos de desarrollo
- Compilación del flujo de trabajo
- Ejecución del flujo de trabajo
Dataform aplica cuotas y límites de la API en los recursos de compilación. El tamaño grande del repositorio puede hacer que supere estas cuotas y límites. Esto puede provocar que la compilación y ejecución de tu flujo de trabajo de SQL falle.
Para mitigar ese riesgo, te recomendamos que dividas los repositorios grandes. Cuando divides un repositorio grande, divides un flujo de trabajo de SQL grande en una serie de flujos de trabajo de SQL más pequeños alojados en diferentes repositorios y conectados por dependencias entre repositorios.
Este enfoque te permite cumplir con las cuotas y los límites de Dataform, los procesos y los permisos detallados, y mejorar la legibilidad y la colaboración de la base de código. Sin embargo, administrar repositorios divididos puede ser más desafiante que administrar un repositorio único.
Para obtener más información sobre el impacto del tamaño del repositorio en Dataform y las prácticas recomendadas para dividir repositorios, consulta Cómo dividir repositorios.
Prácticas recomendadas para la estructura del repositorio
Te recomendamos que estructures los archivos en el directorio definitions
para reflejar las etapas de tu flujo de trabajo. Ten en cuenta que puedes adoptar una estructura personalizada
que mejor se adapte a tus necesidades.
La siguiente estructura recomendada de subdirectorios definitions
refleja las etapas clave de la mayoría de los flujos de trabajo de SQL:
sources
, almacena las declaraciones de fuentes de datosintermediate
, que almacena la lógica de transformación de datosoutput
, que almacena definiciones de tablas de salida- Opcional:
extras
, que almacena archivos adicionales
Los nombres de todos los archivos de Dataform deben cumplir con los lineamientos de nombres de las tablas de BigQuery. Te recomendamos que los nombres de los archivos del directorio definitions
en un repositorio de Dataform reflejen la estructura de subdirectorios.
Para obtener más información sobre las prácticas recomendadas para estructurar y nombrar archivos en un repositorio, consulta Cómo estructurar el código en un repositorio.
Prácticas recomendadas para el ciclo de vida del código
El ciclo de vida de código predeterminado en Dataform consta de las siguientes fases:
Desarrollo del código de flujo de trabajo de SQL en los espacios de trabajo de Dataform
Puedes desarrollar con Dataform core o exclusivamente con JavaScript.
Compilación de tu código en un resultado de compilación con la configuración de tu archivo de configuración de flujo de trabajo.
Puedes configurar resultados de compilación personalizados con configuraciones de lanzamiento y anulaciones de compilación de espacios de trabajo.
Con las configuraciones de lanzamiento, puedes configurar los resultados de compilación personalizados de todo tu repositorio. Más adelante, puedes programar su ejecución en los parámetros de configuración de flujos de trabajo.
Con las anulaciones de compilación de lugares de trabajo, puedes configurar anulaciones de compilación para todos los lugares de trabajo de tu repositorio y crear resultados de compilación personalizados de cada lugar de trabajo.
Ejecución del resultado de la compilación en BigQuery
Puedes programar ejecuciones o resultados de compilación del repositorio con parámetros de configuración de flujo de trabajo.
Para administrar el ciclo de vida del código en Dataform, puedes crear entornos de ejecución, por ejemplo, desarrollo, etapa de pruebas y producción.
Para obtener más información sobre el ciclo de vida del código en Dataform, consulta Introducción al ciclo de vida del código en Dataform.
Puedes elegir mantener tus entornos de ejecución en un solo repositorio o en varios.
Entornos de ejecución en un solo repositorio
Puedes crear entornos de ejecución aislados, como desarrollo, etapa de pruebas y producción, en un solo repositorio de Dataform con anulaciones de compilación de lugares de trabajo y parámetros de configuración de lanzamiento.
Puedes crear entornos de ejecución aislados de las siguientes maneras:
- Cómo dividir las tablas de desarrollo y producción por esquema
- Cómo dividir las tablas de desarrollo y producción por esquema y proyecto de Google Cloud
- Cómo dividir las tablas de desarrollo, etapa de pruebas y producción por proyecto de Google Cloud
Luego, puedes programar ejecuciones en entornos de pruebas y producción con parámetros de configuración de flujo de trabajo. Recomendamos activar las ejecuciones de forma manual en el entorno de desarrollo.
Si quieres obtener más información sobre las prácticas recomendadas para administrar el ciclo de vida del código en Dataform, consulta Cómo administrar el ciclo de vida del código.
Ciclo de vida del código en varios repositorios
Para adaptar los permisos de Identity and Access Management a cada etapa del ciclo de vida del código, puedes crear varias copias de un repositorio y almacenarlas en diferentes proyectos deGoogle Cloud .
Cada proyecto de Google Cloud funciona como un entorno de ejecución que corresponde a una etapa del ciclo de vida de tu código, por ejemplo, desarrollo y producción.
En este enfoque, recomendamos mantener la base de código del repositorio igual en todos los proyectos de Google Cloud. Para personalizar la compilación y la ejecución en cada copia del repositorio, usa las anulaciones de compilación de espacios de trabajo, las configuraciones de lanzamiento y las configuraciones de flujo de trabajo.
¿Qué sigue?
- Para obtener más información sobre el tamaño del repositorio en Dataform, consulta Descripción general del tamaño del repositorio.
- Para obtener más información sobre las prácticas recomendadas para dividir repositorios, consulta Cómo dividir repositorios.
- Para obtener más información sobre las prácticas recomendadas para la estructura del repositorio, consulta Cómo estructurar el código en un repositorio.
- Para obtener más información sobre el ciclo de vida del código en Dataform y las diferentes formas de configurarlo, consulta Introducción al ciclo de vida del código en Dataform.
- Si quieres obtener más información sobre las prácticas recomendadas para el ciclo de vida del código, consulta Cómo administrar el ciclo de vida del código.