Questo documento mostra come eseguire le seguenti operazioni in Dataform:
- Comprendi il ciclo di vita del codice in Dataform.
- Crea override di compilazione dell'area di lavoro.
- Configura le sostituzioni di compilazione con l'API Dataform.
- Crea una configurazione della release.
Prima di iniziare
Nella console Google Cloud, vai alla pagina Dataform.
Seleziona o crea un repository.
Seleziona o crea un'area di lavoro di sviluppo.
(Facoltativo) Per eseguire l'override del progetto Google Cloud predefinito nella configurazione della release, concedi al tuo account di servizio Dataform l'accesso al progetto che intendi utilizzare.
Ruoli obbligatori
Per ottenere le autorizzazioni necessarie per completare le attività descritte in questo documento, chiedi all'amministratore di concederti i seguenti ruoli IAM nei repository:
-
Amministratore Dataform (
roles/dataform.admin
) -
Editor Dataform (
roles/dataform.editor
)
Per ulteriori informazioni sulla concessione dei ruoli, consulta Gestire l'accesso a progetti, cartelle e organizzazioni.
Potresti anche riuscire a ottenere le autorizzazioni richieste tramite i ruoli personalizzati o altri ruoli predefiniti.
Introduzione al ciclo di vita del codice in Dataform
Questa sezione descrive il ciclo di vita del codice in Dataform e i modi per configurare la compilazione e l'esecuzione all'interno di Dataform.
Il ciclo di vita del codice Dataform è costituito dalle seguenti fasi:
- Sviluppo
- Sviluppi un flusso di lavoro in un workspace Dataform.
- Compilation
Dataform compila il codice del flusso di lavoro nella tua area di lavoro in SQL in tempo reale, creando un risultato di compilazione dell'area di lavoro che puoi eseguire in BigQuery. Dataform utilizza le impostazioni che definisci nel file di impostazioni del flusso di lavoro per creare il risultato della compilazione.
La compilazione di Dataform è ermetica per garantire la coerenza della compilazione, ovvero che lo stesso codice venga compilato nello stesso risultato di compilazione SQL ogni volta. Dataform compila il codice in un ambiente sandbox senza accesso a internet. Durante la compilazione non sono disponibili azioni aggiuntive, come le chiamate alle API esterne.
- Esecuzione
In un'invocazione del workflow, Dataform esegue il risultato della compilazione dello spazio di lavoro in BigQuery.
Per personalizzare il ciclo di vita del codice Dataform in base alle tue esigenze, puoi configurare il risultato della compilazione in modo da influire su dove e come Dataform esegue il flusso di lavoro. Dopodiché, puoi attivare o pianificare manualmente le esecuzioni per decidere quando Dataform deve eseguire l'intero workflow o i suoi elementi selezionati.
Metodi per configurare la compilazione di Dataform
Per impostazione predefinita, Dataform utilizza le impostazioni nel file delle impostazioni del flusso di lavoro per creare i risultati della compilazione. Puoi sostituire le impostazioni predefinite con gli override di compilazione per creare risultati di compilazione personalizzati. Puoi quindi attivare manualmente l'esecuzione di un risultato di compilazione personalizzato o pianificare le esecuzioni.
Dataform fornisce le seguenti opzioni per configurare i risultati della compilazione:
- Override di compilazione dello spazio di lavoro
- Puoi configurare gli override della compilazione che si applicano a tutte le aree di lavoro in un repository. Puoi utilizzare gli override di compilazione dell'area di lavoro per creare ambienti di sviluppo isolati.
- Configurazioni della release
- Puoi creare configurazioni di release per configurare i modelli per la creazione dei risultati di compilazione di un repository Dataform. Puoi quindi creare una configurazione del workflow per pianificare le esecuzioni dei risultati di compilazione creati in una configurazione della release selezionata.
- Sostituzioni di compilazione dell'API Dataform
- Puoi passare le richieste dell'API Dataform nel terminale per creare ed eseguire un singolo risultato di compilazione con sostituzioni di compilazione.
Configura gli override di compilazione dell'area di lavoro
Con gli override della compilazione dell'area di lavoro, puoi creare override della compilazione per tutti gli spazi di lavoro in un repository Dataform. Puoi creare una configurazione di override della compilazione dello spazio di lavoro per ogni repository.
Quando attivi manualmente un'esecuzione in uno spazio di lavoro in un repository con override di compilazione dello spazio di lavoro, Dataform applica questi override al risultato della compilazione dello spazio di lavoro.
Puoi configurare i seguenti override della compilazione dell'area di lavoro:
- Progetto Google Cloud in cui Dataform esegue i contenuti dello spazio di lavoro
- Prefisso tabella
- Suffisso schema
Puoi utilizzare gli override di compilazione dell'area di lavoro per creare ambienti di sviluppo isolati isolando i risultati della compilazione dell'area di lavoro in BigQuery con gli override di compilazione dinamica. Gli override delle compilazioni del prefisso della tabella
e del suffisso dello schema dinamico contengono la variabile ${workspaceName}
.
Quando attivi un'esecuzione in uno spazio di lavoro, Dataform sostituisce la variabile ${workspaceName}
con il nome dello spazio di lavoro corrente, creando override di compilazione univoci per lo spazio di lavoro.
Tieni presente che non puoi pianificare le esecuzioni dei risultati della compilazione creati con gli override di compilazione dell'area di lavoro.
Crea configurazioni della release
Con le configurazioni della release, puoi configurare modelli di impostazioni per creare risultati di compilazione dei repository.
In una configurazione della release, puoi configurare gli override della compilazione delle impostazioni del workflow, delle variabili di compilazione e della frequenza di creazione dei risultati della compilazione dell'intero repository.
In una configurazione della release, puoi configurare i seguenti override della compilazione:
- Progetto Google Cloud
- Prefisso tabella
- Suffisso schema
- Valore di una variabile di compilazione
Puoi creare più configurazioni di release in un repository Dataform, una per ogni fase del ciclo di vita di sviluppo, creando risultati di compilazione del repository isolati.
Puoi quindi creare configurazioni del flusso di lavoro per pianificare le esecuzioni dei risultati di compilazione creati in una configurazione di release selezionata.
Configurare un singolo risultato di compilazione con le sostituzioni di compilazione dell'API Dataform
Passando le richieste dell'API Dataform nel terminale, puoi configurare le sostituzioni di compilazione per un singolo risultato di compilazione.
Nella richiesta
compilationResults.create
puoi creare un singolo risultato di compilazione di uno spazio di lavoro Dataform o di un committish Git specificato.
Nell'oggetto
CodeCompilationConfig
della richiesta compilationResults.create
, puoi configurare le sostituzioni
della compilazione per la richiesta di compilazione.
Puoi configurare i seguenti override di compilazione dell'API Dataform:
- Progetto Google Cloud
- Prefisso tabella
- Suffisso schema
- Valore di una variabile di compilazione
Tieni presente che le sostituzioni della compilazione dell'API Dataform si applicano a un singolo risultato di compilazione e a una singola esecuzione. Non puoi utilizzarli per pianificare le esecuzioni di Dataform.
Puoi eseguire un risultato di compilazione nella richiesta
workflowInvocations.create
.
Metodi per configurare l'esecuzione di Dataform
Dataform fornisce le seguenti opzioni per configurare l'esecuzione:
- Esecuzione manuale in uno spazio di lavoro
- Puoi attivare manualmente l'esecuzione istantanea di un workflow in uno spazio di lavoro Dataform, al di fuori di qualsiasi pianificazione. Puoi eseguire alcune azioni nel flusso di lavoro.
- Configurazioni dei flussi di lavoro
- Puoi pianificare le esecuzioni dei risultati della compilazione creati in una configurazione di release selezionata. Puoi selezionare le azioni di flusso di lavoro da eseguire e impostare la frequenza e il fuso orario delle esecuzioni.
Attivare l'esecuzione istantanea in uno spazio di lavoro
In uno spazio di lavoro Dataform, puoi attivare manualmente l'esecuzione immediata di un flusso di lavoro al di fuori di qualsiasi pianificazione.
Puoi eseguire manualmente i seguenti elementi del flusso di lavoro nello spazio di lavoro:
Se il tuo repository contiene override della compilazione dell'area di lavoro, puoi visualizzare gli override della compilazione che Dataform applicherà al risultato della compilazione dell'area di lavoro.
Creare configurazioni dei workflow
Con le configurazioni dei flussi di lavoro, puoi pianificare le esecuzioni dei risultati di compilazione da una configurazione di release selezionata. Puoi creare più configurazioni del flusso di lavoro in un repository Dataform.
In una configurazione del workflow, puoi configurare le seguenti impostazioni di esecuzione:
- Configurazione della release di compilazione applicata.
- Selezione delle azioni del workflow da eseguire.
- Pianificazione e fuso orario delle esecuzioni.
Puoi selezionare le seguenti azioni di flusso di lavoro da eseguire:
- Tutte le azioni
- Azioni selezionate
- Azioni con i tag selezionati
Poi, durante un'esecuzione pianificata della configurazione del workflow, Dataform esegue il deployment della selezione di azioni dal risultato della compilazione applicata a BigQuery.
Le configurazioni delle release e dei flussi di lavoro di Dataform ti consentono di configurare la compilazione e pianificare le esecuzioni in Dataform senza dover fare affidamento su servizi aggiuntivi.
Scadenza delle risorse del ciclo di vita
Dataform memorizza i risultati della compilazione e le chiamate dei flussi di lavoro per un periodo di tempo specifico.
Scadenza delle invocazioni del flusso di lavoro
Le chiamate di workflow scadono dopo 90 giorni o quando le elimini manualmente.
In una configurazione del flusso di lavoro, puoi visualizzare un elenco delle invocazioni del flusso di lavoro più recenti create dalla configurazione. Quando un'invocazione del flusso di lavoro creata da una configurazione del flusso di lavoro scade, Dataform la rimuove dall'elenco delle invocazioni recenti.
Scadenza dei risultati della compilazione
La scadenza dei risultati di compilazione dipende dal fatto che siano stati creati in uno spazio di lavoro di sviluppo, in una configurazione di release o tramite un'invocazione del flusso di lavoro.
Quando sviluppi un flusso di lavoro in uno spazio di lavoro Dataform, Dataform compila il codice in un risultato di compilazione in tempo reale per fornire la convalida delle query. I risultati della compilazione creati in questo modo scadono dopo 24 ore.
In una configurazione della release, l'ultimo risultato di compilazione diventa il risultato di compilazione in produzione. Un nuovo risultato della compilazione sostituisce il risultato della compilazione in tempo reale corrente. Dataform conserva il risultato della compilazione in tempo reale fino a quando non viene sostituito da un nuovo risultato di compilazione. Il risultato di una compilazione sostituita scade dopo massimo 24 ore.
Dataform rimuove i risultati di compilazione scaduti dall'elenco dei risultati di compilazione passati nella pagina Dettagli di una configurazione di release.
Dataform conserva i risultati di compilazione creati dalle invocazioni del flusso di lavoro per l'intera durata dell'invocazione, fino a 24 ore dopo la scadenza o l'eliminazione dell'invocazione del flusso di lavoro.
Creare override di compilazione dell'area di lavoro
Le sezioni seguenti mostrano come creare override di compilazione dell'area di lavoro per isolare le tabelle e le visualizzazioni create dalle aree di lavoro Dataform in BigQuery. Puoi utilizzare gli override di compilazione dell'area di lavoro per creare ambienti di sviluppo Dataform isolati.
Quando sviluppi il codice del flusso di lavoro in uno spazio di lavoro Dataform, Dataform compila il codice nello spazio di lavoro in tempo reale per creare un risultato di compilazione dello spazio di lavoro. Dataform utilizza le impostazioni definite nel file di impostazioni del flusso di lavoro per creare il risultato della compilazione dell'area di lavoro. Poi, quando attivi l'esecuzione in uno spazio di lavoro, Dataform esegue il risultato della compilazione dello spazio di lavoro in BigQuery.
Per eseguire l'override delle impostazioni predefinite impostate nelle impostazioni del workflow per tutti gli spazi di lavoro nel tuo repository, puoi creare override della compilazione dell'area di lavoro.
Con gli override della compilazione dell'area di lavoro, puoi eseguire l'override delle seguenti impostazioni per tutte le aree di lavoro nel tuo repository:
- Progetto
- Il progetto Google Cloud in cui Dataform esegue il risultato della compilazione dello spazio di lavoro, impostato in
workflow_settings.yaml
comedefaultProject
o indataform.json
comedefaultDatabase
. - Prefisso tabella
- Il prefisso personalizzato aggiunto a tutti i nomi delle tabelle in tutte le aree di lavoro del repository.
- Suffisso schema
- Il suffisso personalizzato aggiunto allo schema delle tabelle. Imposta come
defaultDataset
inworkflow_settings.yaml
,defaultSchema
indataform.json
o nel parametroschema
nel bloccoconfig
di una tabella.
Per creare ambienti di sviluppo isolati, puoi isolare gli spazi di lavoro con override di compilazione unici. Puoi modificare dinamicamente gli override della compilazione del prefisso della tabella e del suffisso dello schema con la variabile ${workspaceName}
.
Quando attivi manualmente l'esecuzione in uno spazio di lavoro, la variabile ${workspaceName}
inserisce il nome dello spazio di lavoro negli override di compilazione dello spazio di lavoro.
Quando imposti ${workspaceName}
come prefisso della tabella, Dataform aggiunge il nome dello spazio di lavoro ai nomi di tutte le tabelle dello spazio di lavoro. Dopo
l'esecuzione, in BigQuery puoi identificare lo spazio di lavoro da cui proviene una tabella.
Quando imposti ${workspaceName}
come suffisso dello schema, Dataform aggiunge il nome dell'area di lavoro a defaultSchema
, creando uno schema personalizzato dedicato all'area di lavoro. Dopo l'esecuzione, in BigQuery puoi trovare tutte le tabelle eseguite da uno spazio di lavoro specifico nello schema dedicato.
Esempio di override di compilazione dell'area di lavoro dinamica
L'esempio seguente mostra gli override delle compilazioni degli spazi di lavoro dinamici applicati a un
repository contenente spazi di lavoro denominati in base agli sviluppatori che lavorano al
repository: Sasha
e Kai
.
Lo scopo degli override di compilazione dell'area di lavoro in questo esempio è creare ambienti di sviluppo isolati per Sasha e Kai.
In workflow_settings.yaml
sono impostate le seguenti impostazioni predefinite:
defaultProject
:analytics
defaultDataset
:dataform
I seguenti override della compilazione dello spazio di lavoro creano un prefisso della tabella e un suffisso dello schema dinamici per ogni spazio di lavoro nel repository:
- ID progetto Google Cloud:
analytics_dev
- Prefisso della tabella:
${workspaceName}
- Suffisso dello schema:
${workspaceName}
Quando Sasha attiva manualmente l'esecuzione nello spazio di lavoro Sasha
, Dataform esegue i relativi contenuti con le seguenti impostazioni:
- Progetto Google Cloud:
analytics_dev
- Schema:
dataform_sasha
- Nomi delle tabelle:
sasha_name
, ad esempiosasha_orders
Quando Kai attiva manualmente l'esecuzione nello spazio di lavoro Kai
, Dataform esegue i relativi contenuti con le seguenti impostazioni:
- Progetto Google Cloud:
analytics_dev
- Schema:
dataform_kai
- Nomi delle tabelle:
kai_name
, ad esempiokai_orders
Creare override di compilazione dell'area di lavoro
Per creare override di compilazione dello spazio di lavoro Dataform:
- Nel repository, vai a Impostazioni.
- Fai clic su Modifica.
- Nel riquadro Override di compilazione dell'area di lavoro, inserisci l'ID del progetto nel campo ID progetto Google Cloud.
- Nel campo Prefisso tabella, inserisci un prefisso per tutti i nomi delle tabelle.
- (Facoltativo) Per creare un prefisso tabella dinamico univoco per ogni area di lavoro, inserisci
${workspaceName}
come prefisso tabella.
- (Facoltativo) Per creare un prefisso tabella dinamico univoco per ogni area di lavoro, inserisci
- Nel campo Suffisso schema, inserisci un suffisso da aggiungere allo schema della tabella o della vista creata.
- (Facoltativo) Per creare un suffisso dello schema dinamico univoco per ogni area di lavoro, inserisci
${workspaceName}
come suffisso della tabella.
- (Facoltativo) Per creare un suffisso dello schema dinamico univoco per ogni area di lavoro, inserisci
- Fai clic su Salva.
Dataform applica override di compilazione dell'area di lavoro a tutte le aree di lavoro nel repository.
Modificare gli override di compilazione dell'area di lavoro
Per modificare gli override di compilazione dello spazio di lavoro Dataform:
- Nel repository, vai a Impostazioni.
- Fai clic su Modifica.
- Modifica gli override di compilazione dell'area di lavoro e poi fai clic su Salva.
Eliminare gli override di compilazione dello spazio di lavoro
Per eliminare le sostituzioni di compilazione dello spazio di lavoro Dataform:
- Nel repository, vai a Impostazioni.
- Fai clic su Modifica.
- Nel riquadro Override di compilazione dell'area di lavoro, fai clic su Cancella tutto e poi su Salva.
Configurare gli override della compilazione con l'API Dataform
Questa sezione mostra come creare ed eseguire un risultato di compilazione con le sostituzioni di compilazione utilizzando l'API Dataform.
Informazioni sulle sostituzioni di compilazione dell'API Dataform
Per eseguire il flusso di lavoro, Dataform compila il codice in SQL per creare un risultato di compilazione. Poi, durante un'invocazione del workflow, Dataform esegue il risultato della compilazione in BigQuery.
Per impostazione predefinita, Dataform utilizza le impostazioni nel file delle impostazioni del flusso di lavoro per creare il risultato della compilazione. Per isolare i dati eseguiti in fasi diverse del ciclo di vita dello sviluppo, puoi eseguire l'override delle impostazioni predefinite con gli override di compilazione.
Passando le richieste dell'API Dataform nel terminale, puoi creare ed eseguire un singolo risultato di compilazione con sostituzioni di compilazione. Puoi creare un risultato di compilazione di uno spazio di lavoro o di un commit Git selezionato.
Per creare un risultato di compilazione con sostituzioni di compilazione, devi inviare la richiesta
compilationResults.create
dell'API Dataform. Nella richiesta, devi
specificare un'origine, che deve essere uno spazio di lavoro o un commit Git,
perché Dataform venga compilato nel risultato della compilazione. Nell'oggetto
CodeCompilationConfig
della richiesta compilationResults.create
, puoi configurare le sostituzioni di compilazione.
Puoi quindi
eseguire il risultato della compilazione creato
in una richiesta
workflowInvocations.create
dell'API Dataform.
Puoi configurare le seguenti sostituzioni di compilazione utilizzando l'API Dataform:
- Progetto Google Cloud
- Il progetto in cui Dataform esegue il risultato della compilazione, impostato nel file
workflow_settings.yaml
come proprietàdefaultProject
o nel filedataform.json
come proprietàdefaultDatabase
. - Prefisso tabella
- Il prefisso personalizzato aggiunto a tutti i nomi delle tabelle nel risultato della compilazione.
- Suffisso schema
- Il suffisso personalizzato aggiunto allo schema delle tabelle definito nella proprietà
defaultDataset
del fileworkflow_settings.yaml
, nella proprietàdefaultSchema
del filedataform.json
o nel parametroschema
nel bloccoconfig
di una tabella. - Valore di una variabile di compilazione
- Il valore di una variabile di compilazione da utilizzare nel risultato della compilazione. Puoi utilizzare le variabili di compilazione per eseguire le tabelle in modo condizionale.
In alternativa alle sostituzioni di compilazione dell'API Dataform, che puoi utilizzare solo per un risultato di compilazione, puoi configurare le sostituzioni di compilazione dello spazio di lavoro nella console Google Cloud.
Per scoprire metodi alternativi per configurare le sostituzioni di compilazione in Dataform, consulta Introduzione al ciclo di vita del codice.
Impostare un'origine del risultato della compilazione
Per inviare la richiesta dell'API Dataform
compilationResults.create
, devi specificare un'origine per il risultato della compilazione.
Puoi impostare uno spazio di lavoro Dataform o un ramo Git, un tag Git o un SHA commit Git come origine nella richiesta
compilationResults.create
.
Impostare uno spazio di lavoro come origine del risultato della compilazione
Nella richiesta
compilationResults.create
, compila la proprietàworkspace
con il percorso di uno spazio di lavoro Dataform selezionato nel seguente formato:{ "workspace": "projects/PROJECT_NAME/locations/LOCATION/repositories/REPOSITORY_NAME/workspaces/WORKSPACE_NAME" }
Sostituisci quanto segue:
- PROJECT_NAME: il nome del tuo progetto Google Cloud.
- LOCATION: la posizione del repository Dataform, impostata nelle impostazioni del flusso di lavoro.
- REPOSITORY_NAME: il nome del repository Dataform.
- WORKSPACE_NAME: il nome dello spazio di lavoro Dataform.
Il seguente esempio di codice mostra la proprietà workspace
nella richiesta compilationResults.create
impostata su uno spazio di lavoro denominato "sales-test"
:
{
"workspace": "projects/analytics/locations/europe-west4/repositories/sales/workspaces/sales-test"
}
Impostare un commitish Git come origine del risultato della compilazione
Nella richiesta
compilationResults.create
, compila la proprietàgitCommitish
con il branch, il tag o la SHA del commit Git selezionato nel seguente formato:{ "gitCommitish": "GIT_COMMITISH" }
Sostituisci GIT_COMMITISH con il branch Git, il tag Git o un SHA del commit Git selezionato per il risultato della compilazione.
Il seguente esempio di codice mostra la proprietà gitCommitish
nella
compilationResults.create
richiesta impostata su "staging"
:
{
"gitCommitish": "staging"
}
Sostituire il progetto predefinito
Per creare tabelle di staging o di produzione in un progetto Google Cloud separato da quello utilizzato per lo sviluppo, puoi passare un ID progetto diverso nell'oggetto
CodeCompilationConfig
nella richiesta
compilationResults.create
dell'API Dataform.
Se nella richiesta compilationResults.create
viene passato un ID progetto predefinito distinto, viene eseguito l'override dell'ID progetto predefinito configurato nel file delle impostazioni di flusso di lavoro, ma non degli ID progetto configurati nelle singole tabelle.
Per eseguire l'override dell'ID progetto predefinito, imposta la proprietà
defaultDatabase
sull'ID progetto selezionato nell'oggettoCodeCompilationConfig
nel seguente formato:{ "codeCompilationConfig": { "defaultDatabase": "PROJECT_NAME" } }
Sostituisci PROJECT_NAME con l'ID progetto che vuoi impostare per il risultato della compilazione.
Aggiungere un prefisso alla tabella
Per identificare rapidamente le tabelle dal risultato della compilazione, puoi aggiungere un prefisso a tutti i nomi delle tabelle nel risultato della compilazione passando il prefisso della tabella nell'oggetto CodeCompilationConfig
nella richiesta dell'API Dataform compilationResults.create
.
Per aggiungere un prefisso di tabella, imposta la proprietà
tablePrefix
nell'oggettoCodeCompilationConfig
nel seguente formato:{ "codeCompilationConfig": { "tablePrefix": "PREFIX", } }
Sostituisci PREFIX con il prefisso da aggiungere, ad esempio
staging
.Ad esempio, se il nome della tabella è
table_name
, Dataform crea tabelle con il nomestaging_table_name
.
Aggiungere un suffisso allo schema
Per separare i dati di sviluppo, di staging e di produzione, puoi aggiungere un suffisso agli schemi in un risultato di compilazione passando il suffisso dello schema nell'oggetto
CodeCompilationConfig
nella richiesta
compilationResults.create
dell'API Dataform.
Per aggiungere un suffisso allo schema, imposta la proprietà
schemaSuffix
nell'oggettoCodeCompilationConfig
nel seguente formato:{ "codeCompilationConfig": { "schemaSuffix": "SUFFIX", } }
Sostituisci SUFFIX con il suffisso da aggiungere, ad esempio
_staging
.Ad esempio, se la proprietà
defaultDataset
nelworkflow_settings.yaml
file è impostata sudataform
, Dataform crea tabelle nello schemadataform_staging
.
Esegui i file selezionati in modo condizionale con le variabili di compilazione
Per eseguire una tabella selezionata solo in un'impostazione di esecuzione specifica, puoi
creare una variabile di compilazione
per l'impostazione di esecuzione e poi passare il relativo valore nell'oggetto
CodeCompilationConfig
nella richiesta dell'API Dataform
compilationResults.create
.
Per eseguire una tabella in modo condizionale in un'impostazione di esecuzione specifica utilizzando l'API Dataform:
- Crea una variabile di compilazione e aggiungila alle tabelle selezionate.
Imposta la coppia chiave-valore YOUR_VARIABLE e VALUE nel blocco
codeCompilationConfig
di una richiesta di compilazione dell'API Dataform nel seguente formato:{ "codeCompilationConfig": { "vars": { "YOUR_VARIABLE": "VALUE" } } }
Sostituisci YOUR_VARIABLE con il nome della variabile, ad esempio
executionSetting
.Sostituisci VALUE con il valore della variabile per questo risultato di compilazione che soddisfa la condizione
when
impostata nelle tabelle selezionate.
Il seguente esempio di codice mostra la variabile executionSetting
passata a una richiesta di compilazione dell'API Dataform:
{
"gitCommitish": "staging",
"codeCompilationConfig": {
"vars": {
"executionSetting": "staging"
}
}
}
Eseguire un risultato della compilazione con override della compilazione
- Per eseguire il risultato della compilazione creato da una richiesta
compilationResults.create
, devi passare l'ID risultato della compilazione restituito dalla richiestacompilationResults.create
in una richiestaworkflowInvocations.create
.
Il seguente esempio di codice mostra un ID risultato di compilazione passato in una richiesta
workflowInvocations.create
:
{
"compilationResult": "projects/my-project-name/locations/europe-west4/repositories/my-repository-name/compilationResults/7646b4ed-ac8e-447f-93cf-63c43249ff11"
}
Crea una configurazione di release
Le sezioni seguenti mostrano come creare una configurazione della release in Dataform per configurare i modelli di impostazioni di compilazione, che puoi eseguire in base a una pianificazione. Puoi utilizzare le configurazioni di release per configurare gli ambienti di esecuzione, ad esempio gestione temporanea e produzione.
Per eseguire i workflow in BigQuery, Dataform compila il codice del flusso di lavoro SQL in un risultato di compilazione. Questa procedura viene eseguita automaticamente quando sviluppi un workflow in un'area di lavoro Dataform.
Le configurazioni di release ti consentono di personalizzare i risultati di compilazione. Puoi utilizzarle per creare ambienti di esecuzione, ad esempio la gestione temporanea.
Impostazioni di configurazione della release
In una configurazione della release, puoi configurare gli override di compilazione delle impostazioni del flusso di lavoro, impostare le variabili di compilazione e la frequenza di creazione dei risultati di compilazione.
Una configurazione della release Dataform contiene le seguenti impostazioni di compilazione:
- Impostazioni di release
- L'ID della release, il commitish Git per i risultati di compilazione e la frequenza di creazione dei risultati di compilazione. La frequenza è un'impostazione facoltativa. Se impostato, la frequenza minima è 1 ora.
- Override delle compilazioni
- Sostituzioni del progetto Google Cloud, del prefisso della tabella, del suffisso dello schema e delle variabili di compilazione definite nelle impostazioni del flusso di lavoro.
Come funziona una configurazione della release
Dataform crea i risultati di compilazione da una configurazione della release con la frequenza specificata o quando attivi la compilazione. La frequenza è un'impostazione facoltativa e non è necessaria per creare una configurazione della release. Se impostato, la frequenza minima è 1 ora. Puoi
attivare manualmente la compilazione nella pagina Dettagli della configurazione della release,
o attivare la compilazione con il
metodo releaseConfigs
dell'API Dataform.
Durante la compilazione, Dataform esegue il pull del codice dal commitish Git specificato del tuo repository. Quindi, Dataform compila il codice con le sostituzioni di compilazione applicate (se presenti) e crea il risultato della compilazione. L'ultimo risultato di compilazione creato per la configurazione della release è il risultato della compilazione in tempo reale.
Puoi pianificare le esecuzioni dei risultati di compilazione dalle configurazioni della release in configurazioni dei flussi di lavoro. Puoi anche eseguire una configurazione di release selezionata al di fuori di qualsiasi pianificazione. Durante l'esecuzione di una configurazione del flusso di lavoro, Dataform esegue il risultato della compilazione in tempo reale dalla configurazione della release selezionata.
Crea una configurazione di release
Per creare una configurazione di release di Dataform:
- Nel repository, vai a Uscite e pianificazione.
- Nella sezione Configurazioni della release, fai clic su Crea.
Nel riquadro Crea configurazione della release, configura le impostazioni della release.
Nel campo ID release, inserisci un ID univoco per la configurazione della release.
Gli ID possono includere solo numeri, lettere, trattini e trattini bassi.
Nel campo Commitish Git, inserisci il branch Git o l'SHA del commit Git per la release.
In un repository Dataform non collegato a un repository remoto, il valore è sempre
main
.(Facoltativo) Nell'elenco Frequenza, seleziona la frequenza con cui creare i risultati della compilazione.
Se impostato, la frequenza minima è 1 ora.
(Facoltativo) Nella sezione Sostituzioni di compilazione, configura le impostazioni di compilazione.
- Nel campo ID progetto Google Cloud, inserisci l'ID del progetto Google Cloud in cui vuoi memorizzare il risultato della compilazione.
- Nel campo Suffisso schema, inserisci un suffisso da aggiungere allo schema configurato nelle impostazioni del flusso di lavoro.
- Nel campo Prefisso tabella, inserisci un prefisso per tutti i nomi delle tabelle.
(Facoltativo) Nella sezione Variabili di compilazione, imposta le variabili di compilazione.
- Fai clic su Aggiungi variabile.
- Nel campo Chiave, inserisci la variabile di compilazione.
- Nel campo Valore, inserisci il valore per la variabile di compilazione.
- Per aggiungere un'altra variabile di compilazione, fai clic su Aggiungi variabile.
Fai clic su Crea.
Se sostituisci il progetto predefinito, assicurati che il tuo account di servizio Dataform abbia accesso al progetto impostato nella configurazione della release.
Ad esempio, la seguente configurazione della release crea un risultato di compilazione production
del ramo main
ogni ora,
senza alcun override di compilazione:
- ID release:
production
- Commitish di Git:
main
- Frequenza: ogni ora
- Nessun override di compilazione
Visualizzare i dettagli di una configurazione di release
Puoi visualizzare i seguenti dettagli di una configurazione della release:
- Impostazioni di release
- Commitish Git
- Timestamp del risultato di compilazione più recente
- Pianificazione cron
- Override delle compilazioni
- Variabili di compilazione
- Risultato della compilazione in tempo reale
- Timestamp creazione
- Commitish Git
- SHA del commit
- Risultati di compilazione precedenti
Per visualizzare i dettagli di una configurazione di release:
- Nel repository, vai a Uscite e pianificazione.
- Seleziona una configurazione della release.
- Nella pagina Dettagli di configurazione della release, controlla i dettagli della configurazione della release.
La tabella Risultati della compilazione pianificata mostra i risultati di compilazione passati creati automaticamente dalla configurazione della release.
La tabella Risultati di compilazione manuale/API mostra i risultati di compilazione creati manualmente o tramite chiamate all'API Dataform tra i 1000 risultati di compilazione più recenti nel repository.
Attivare manualmente la compilazione
Per creare manualmente un risultato di compilazione da una configurazione di release selezionata:
- Nel repository, vai a Uscite e pianificazione.
- Seleziona una configurazione della release.
- Nella pagina Dettagli configurazione release, fai clic su Nuova compilazione.
Il risultato della compilazione appena creato diventa il risultato in tempo reale per la configurazione della release.
I risultati della compilazione manuale vengono visualizzati nella tabella Risultati di compilazione manuale/API della pagina Dettagli configurazione release.
Attivare l'esecuzione di una configurazione della release
Per attivare l'esecuzione del risultato della compilazione in tempo reale in una configurazione di release selezionata in BigQuery:
- Nel repository, vai a Uscite e pianificazione.
- Nella sezione Configurazioni della release, fai clic su Avvia esecuzione.
- Nel riquadro Esegui flusso di lavoro manuale, nell'elenco Configurazione release, seleziona una configurazione release.
- Seleziona le azioni del flusso di lavoro da eseguire:
- Per eseguire l'intero flusso di lavoro, fai clic su Tutte le azioni.
- Per eseguire le azioni selezionate nel flusso di lavoro, fai clic su Selezione di azioni e poi seleziona le azioni.
- Per eseguire azioni con i tag selezionati, fai clic su Selezione di tag e poi seleziona i tag.
- (Facoltativo) Per eseguire le azioni o i tag selezionati e le relative dipendenze, seleziona l'opzione Includi dipendenze.
- (Facoltativo) Per eseguire le azioni o i tag selezionati e i relativi elementi dipendenti, seleziona l'opzione Includi elementi dipendenti.
(Facoltativo) Per ricostruire tutte le tabelle da zero, seleziona l'opzione Esegui con aggiornamento completo.
Senza questa opzione, Dataform aggiorna le tabelle incrementali senza ricostruirle da zero.
Fai clic su Avvia esecuzione.
Modificare una configurazione della release
Per modificare una configurazione di release:
- Nel repository, vai a Uscite e pianificazione.
- Accanto alla configurazione della release che vuoi modificare, fai clic sul menu Altro e poi su Modifica.
- Nel riquadro Modifica configurazione della release, modifica le impostazioni della configurazione della release e poi fai clic su Salva.
Eliminare una configurazione di release
Per eliminare una configurazione di release:
- Nel repository, vai a Uscite e pianificazione.
- Accanto alla configurazione della release che vuoi eliminare, fai clic sul menu Altro e poi su Elimina.
- Nella finestra di dialogo Elimina configurazione della release, fai clic su Elimina.
Passaggi successivi
- Per scoprire le best practice per il ciclo di vita del codice in Dataform, consulta Gestire il ciclo di vita del codice.
- Per scoprire come attivare manualmente l'esecuzione in uno spazio di lavoro, consulta Attivare l'esecuzione.
- Per scoprire come creare configurazioni dei flussi di lavoro, consulta Pianificare le esecuzioni con le configurazioni dei flussi di lavoro.
- Per scoprire di più sull'API Dataform, consulta API Dataform.