Best practice per le dimensioni del repository
Le dimensioni del repository influiscono su più aspetti dello sviluppo in Dataform, quali:
- Collaborazione
- Leggibilità del codebase
- Processi di sviluppo
- Compilazione del flusso di lavoro
- Esecuzione flusso di lavoro
Implementazione forzata di Dataform Quote e limiti delle API sulle risorse di compilazione. Il repository di grandi dimensioni può causare il superamento di queste quote e limiti. Questo può comportare la mancata compilazione e l'esecuzione dei tuoi nel flusso di lavoro SQL.
Per ridurre questo rischio, consigliamo di suddividere i repository di grandi dimensioni. Quando suddividi un repository di grandi dimensioni, suddividi un flusso di lavoro SQL di grandi dimensioni in un di flussi di lavoro SQL più piccoli ospitati in diversi repository e connessi da dipendenze tra repository.
Questo approccio ti consente di rispettare le quote e i limiti di Dataform, processi e autorizzazioni e migliorare la leggibilità e la collaborazione del codebase. Tuttavia, la gestione di repository divisi può essere più difficile che gestire un unico repository.
Per saperne di più sull'impatto delle dimensioni del repository in Dataform best practice per la suddivisione dei repository, vedi Suddivisione dei repository.
Best practice per la struttura del repository
Consigliamo di strutturare i file nella directory definitions
in modo che riflettano la
fasi del flusso di lavoro. Tieni presente che puoi adottare una struttura personalizzata
che meglio risponde alle tue esigenze.
La seguente struttura consigliata di definitions
sottodirectory riflette
le fasi chiave della maggior parte dei flussi di lavoro SQL:
sources
, archiviazione delle dichiarazioni dell'origine datiintermediate
, archiviazione della logica di trasformazione dei datioutput
, memorizzazione delle definizioni delle tabelle di output- (Facoltativo)
extras
, archiviazione di file aggiuntivi
I nomi di tutti i file in Dataform devono essere conformi a BigQuery
linee guida per la denominazione delle tabelle. Consigliamo di inserire i nomi dei file nel
La directory definitions
in un repository Dataform riflette la
nella struttura delle sottodirectory.
Per saperne di più sulle best practice per strutturare e di denominazione dei file in un repository, vedi Struttura del codice in un repository.
Best practice per il ciclo di vita del codice
Il ciclo di vita predefinito del codice in Dataform è costituito dalle seguenti fasi:
Sviluppo del codice del flusso di lavoro SQL nelle aree di lavoro Dataform
Puoi sviluppare con Core Dataform o solo con JavaScript.
Compilazione del tuo codice in un risultato della compilazione utilizzando le impostazioni del file delle impostazioni del flusso di lavoro.
Puoi configurare i risultati delle compilazioni personalizzate con configurazioni di release e override di compilazione delle aree di lavoro.
Con le configurazioni della release, puoi configurare compilazioni personalizzate dei risultati dell'intero repository. Puoi programmarne l'esecuzione in un secondo momento configurazioni del flusso di lavoro.
Con gli override delle compilazioni delle aree di lavoro, puoi configurare override delle compilazioni per tutte le aree di lavoro del repository, creando risultati di compilazione personalizzati di ogni area di lavoro.
Esecuzione del risultato della compilazione in BigQuery
Puoi pianificare le esecuzioni o i risultati della compilazione del repository con configurazioni del flusso di lavoro.
Per gestire il ciclo di vita del codice in Dataform, puoi creare modelli ambienti di lavoro, ad esempio sviluppo, gestione temporanea e produzione.
Per scoprire di più sul ciclo di vita del codice in Dataform, consulta Introduzione al ciclo di vita del codice in Dataform.
Puoi scegliere di conservare gli ambienti di esecuzione in un unico repository, o in più repository.
Ambienti di esecuzione in un unico repository
Puoi creare ambienti di esecuzione isolati come sviluppo, gestione temporanea e produzione Repository Dataform con override delle compilazioni delle aree di lavoro e configurazioni di release.
Puoi creare ambienti di esecuzione isolati nei seguenti modi:
- Suddividi le tabelle di sviluppo e produzione per schema
- Suddividi le tabelle di sviluppo e produzione per schema e progetto Google Cloud
- Suddividi le tabelle di sviluppo, gestione temporanea e produzione per progetto Google Cloud
Quindi, puoi pianificare le esecuzioni in ambienti di gestione temporanea e produzione con configurazioni del flusso di lavoro. I nostri suggerimenti che attivano manualmente le esecuzioni nell'ambiente di sviluppo.
Per scoprire di più sulle best practice per la gestione del ciclo di vita del codice in Dataform, vedi Gestione del ciclo di vita del codice.
Ciclo di vita del codice in più repository
Per personalizzare le autorizzazioni di Identity and Access Management per ogni fase del ciclo di vita del codice, puoi creare più copie di un repository e archiviarle in progetti Google Cloud.
Ogni progetto Google Cloud funge da ambiente di esecuzione che corrisponde a una fase del ciclo di vita del codice, ad esempio lo sviluppo e la produzione.
In questo approccio, consigliamo di conservare il codebase del repository la stessa in tutti i progetti Google Cloud. Per personalizzare la compilazione e l'esecuzione in ogni copia del repository, usa override delle compilazioni delle aree di lavoro, configurazioni di release e configurazioni del flusso di lavoro.
Passaggi successivi
- Per scoprire di più sulle dimensioni del repository in Dataform, consulta Panoramica delle dimensioni del repository.
- Per scoprire di più sulle best practice per la suddivisione dei repository, vedi Suddivisione dei repository.
- Per scoprire di più sulle best practice per la struttura di repository, consulta Strutturare il codice in un repository
- Per scoprire di più sul ciclo di vita del codice in Dataform e sui diversi modi per configurarlo, consulta Introduzione al ciclo di vita del codice in Dataform.
- Per scoprire di più sulle best practice per il ciclo di vita del codice, consulta Gestione del ciclo di vita del codice.