Prácticas recomendadas para el tamaño del repositorio
El tamaño del repositorio afecta varios aspectos del desarrollo en Dataform. por ejemplo:
- Colaboración
- Legibilidad de la base de código
- Procesos de desarrollo
- Compilación de flujos de trabajo
- Ejecución del flujo de trabajo
Dataform aplica Cuotas y límites de API en los recursos de compilación. Un repositorio grande puede provocar que este supere estas cuotas y límites. Esto puede generar errores en la compilación y ejecución de tu Flujo de trabajo de SQL.
Para mitigar ese riesgo, recomendamos dividir los repositorios grandes. Cuando se divide un repositorio grande, se divide un flujo de trabajo de SQL grande en un de flujos de trabajo de SQL más pequeños alojados en distintos repositorios y conectados entre repositorios.
Este enfoque te permite cumplir con las cuotas y los límites de Dataform, con detalles procesos y permisos, y mejorar la legibilidad y la colaboración de la base de código. Sin embargo, administrar repositorios divididos puede ser más difícil que administrar en un solo repositorio.
Para obtener más información sobre el impacto del tamaño del repositorio en Dataform y prácticas recomendadas para dividir repositorios, consulta Divide repositorios.
Prácticas recomendadas para la estructura del repositorio
Te recomendamos estructurar los archivos en el directorio definitions
para reflejar el
etapas de tu flujo de trabajo. Recuerda 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
, almacenando declaraciones de fuente de datosintermediate
, almacenando la lógica de transformación de los datosoutput
, almacenan las definiciones de las tablas de salida- Opcional:
extras
, el almacenamiento de archivos adicionales
Los nombres de todos los archivos en Dataform deben cumplir con BigQuery
pautas para nombrar tablas. Recomendamos que los nombres de los archivos de la
El directorio definitions
de un repositorio de Dataform refleja la
del subdirectorio.
Para obtener más información sobre las prácticas recomendadas de estructuración nombrar archivos en un repositorio, consulta Estructura código en un repositorio.
Prácticas recomendadas para el ciclo de vida del código
El ciclo de vida del código predeterminado en Dataform consta de las siguientes fases:
Desarrollo del código de flujo de trabajo de SQL en espacios de trabajo de Dataform
Puedes desarrollar con Núcleo de Dataform o exclusivamente con JavaScript.
Una compilación de tu código en un resultado de compilación con la configuración del archivo de configuración del flujo de trabajo.
Puedes configurar resultados de compilación personalizados con parámetros de configuración de lanzamiento y anulaciones de compilación de lugares de trabajo.
Con las configuraciones de lanzamiento, puedes configurar compilaciones personalizadas resultados de todo el repositorio. Puedes programar su ejecución más tarde en configuraciones del flujo 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, lo que crea resultados de compilación personalizados de cada espacio de trabajo.
Ejecución del resultado de la compilación en BigQuery
Puedes programar ejecuciones o resultados de compilación de repositorios con configuraciones del flujo de trabajo.
Para administrar el ciclo de vida del código en Dataform, puedes crear una ejecución como 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 optar por mantener tus entornos de ejecución en un solo repositorio, o en varios repositorios.
Entornos de ejecución en un solo repositorio
Puedes crear entornos de ejecución aislados como desarrollo, etapa de pruebas y producción Repositorio de Dataform con anulaciones de compilación de lugares de trabajo y las configuraciones de lanzamiento.
Puedes crear entornos de ejecución aislados de las siguientes maneras:
- Divide las tablas de desarrollo y producción por esquema
- Divide las tablas de desarrollo y producción por esquema y proyecto de Google Cloud
- Dividir las tablas de desarrollo, etapa de pruebas y producción por proyecto de Google Cloud
Luego, puedes programar ejecuciones en entornos de etapa de pruebas y producción con configuraciones del flujo de trabajo. Recomendaciones activar ejecuciones de forma manual en el entorno de desarrollo.
Si deseas obtener más información sobre las prácticas recomendadas para administrar el ciclo de vida del código en Dataform, consulta Administra el ciclo de vida del código.
Ciclo de vida del código en varios repositorios
Adaptar los permisos de Identity and Access Management a cada del ciclo de vida del código, puedes crear varias copias de un repositorio y almacenarlas en diferentes proyectos de Google Cloud.
Cada proyecto de Google Cloud funciona como un entorno de ejecución que corresponda a una etapa del ciclo de vida del código, por ejemplo, desarrollo y producción.
En este enfoque, recomendamos mantener la base de código del repositorio el mismo en todos los proyectos de Google Cloud. Para personalizar la compilación y ejecución en cada copia del repositorio, usa anulaciones de compilación de workspace parámetros de configuración de lanzamiento configuraciones del 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.
- Si quieres obtener más información sobre las prácticas recomendadas para dividir repositorios, consulta Divide repositorios.
- Si quieres obtener más información sobre las prácticas recomendadas para la estructura del repositorio, consulta Estructura 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 para configurarlo, consulta Introducción al ciclo de vida del código en Dataform.
- Si deseas obtener más información sobre las prácticas recomendadas para el ciclo de vida del código, consulta Administra el ciclo de vida del código.