Questa pagina mostra come modificare le impostazioni di elaborazione Dataform per un repository specifico.
Ti consigliamo di modificare il file delle impostazioni per rinominare gli schemi o aggiungere variabili di compilazione personalizzate al repository.
Informazioni sulle impostazioni del repository
Ogni repository Dataform contiene un file di impostazioni workflow_settings.yaml
univoco. Il file contiene l'ID progetto Google Cloud e lo schema in cui Dataform pubblica asset in BigQuery.
Dataform utilizza impostazioni predefinite che puoi sostituire in base alle tue
esigenze modificando il file workflow_settings.yaml
.
Il seguente esempio di codice mostra un file workflow_settings.yaml
di esempio:
defaultProject: my-gcp-project-id
defaultDataset: dataform
defaultLocation: australia-southeast2
defaultAssertionDataset: dataform_assertions
Nel codice campione, le coppie chiave-valore e tutte le altre opzioni per le impostazioni del flusso di lavoro sono descritte nel riferimento delle configurazioni per le impostazioni del flusso di lavoro.
Puoi accedere alle proprietà definite in workflow_settings.yaml
nel codice del progetto come proprietà dell'oggetto dataform.projectConfig
. Vengono applicate le seguenti
mappature dalle opzioni workflow_settings.yaml
alle opzioni del codice accessibile
dataform.projectConfig
:
defaultProject
=>defaultDatabase
.defaultDataset
=>defaultSchema
.defaultAssertionDataset
=>assertionSchema
.projectSuffix
=>databaseSuffix
.datasetSuffix
=>schemaSuffix
.namePrefix
=>tablePrefix
.
Per saperne di più sull'oggetto dataform.projectConfig
, consulta IProjectConfig
Riferimento principale Dataform.
Il seguente esempio di codice mostra l'oggetto dataform.projectConfig
chiamato in un'istruzione
SELECT
in una vista:
config { type: "view" }
SELECT ${when(
!dataform.projectConfig.tablePrefix,
"table prefix is set!",
"table prefix is not set!"
)}
Prima di iniziare
Ruoli obbligatori
Per ottenere le autorizzazioni necessarie per configurare le impostazioni Dataform,
chiedi all'amministratore di concederti il ruolo IAM
Amministratore Dataform (roles/dataform.admin
) sui repository.
Per saperne di più sulla concessione dei ruoli, consulta Gestire l'accesso.
Potresti anche essere in grado di ottenere le autorizzazioni richieste tramite i ruoli personalizzati o altri ruoli predefiniti.
Configura i nomi degli schemi
Questa attività mostra come configurare le proprietà defaultDataset
e defaultAssertionSchema
nel file workflow_settings.yaml
.
Per modificare il nome di uno schema:
Nel riquadro File dell'area di lavoro di sviluppo, fai clic sul file
workflow_settings.yaml
.Modifica il valore di
defaultDataset
,defaultAssertionSchema
o entrambi.
Il seguente esempio di codice mostra un nome defaultDataset
personalizzato nel
file workflow_settings.yaml
:
...
defaultDataset: mytables
...
Creare variabili di compilazione personalizzate
Le variabili di compilazione contengono valori che puoi modificare con override di compilazione in una richiesta API Dataform.
Dopo aver definito una variabile di compilazione in workflow_settings.yaml
e averla aggiunta alle tabelle selezionate, puoi utilizzarne il valore in
Override delle compilazioni API Dataform per eseguire le tabelle in modo condizionale.
Per creare una variabile di compilazione da utilizzare in un repository, segui questi passaggi:
- Vai all'area di lavoro di sviluppo di Dataform.
- Nel riquadro File, seleziona il file
workflow_settings.yaml
. Inserisci il seguente snippet di codice:
"vars": { "YOUR_VARIABLE":"VALUE" }
Sostituisci quanto segue:
- YOUR_VARIABLE con un nome per la variabile.
- VALUE con il valore predefinito della variabile di compilazione.
Il seguente esempio di codice mostra la variabile di compilazione myVariableName
impostata su myVariableValue
nel file workflow_settings.yaml
:
...
vars:
myVariableName: myVariableValue
...
Il seguente esempio di codice mostra il file workflow_settings.yaml
con la variabile di compilazione executionSetting
impostata su dev
:
defaultProject: default_bigquery_database
defaultLocation:us-west1
defaultDataset: dataform_data,
vars:
executionSetting: dev
Aggiungere una variabile di compilazione a una tabella
Per aggiungere una variabile di compilazione a un file di definizione di tabella SQLX, segui questi passaggi:
- Vai all'area di lavoro di sviluppo di Dataform.
- Nel riquadro File, seleziona un file di definizione della tabella SQLX.
Nel file, inserisci una clausola
when
nel seguente formato:${when(dataform.projectConfig.vars.YOUR_VARIABLE === "SET_VALUE", "CONDITION")}
Sostituisci quanto segue:
- YOUR_VARIABLE con il nome della variabile,
ad esempio
executionSetting
. - SET_VALUE con un valore per la variabile,
ad esempio
staging
. - CONDITION con una condizione per l'esecuzione della tabella.
- YOUR_VARIABLE con il nome della variabile,
ad esempio
Il seguente esempio di codice mostra un file SQLX di definizione della tabella con una clausola when
e la variabile executionSetting
che esegue il 10% dei dati nell'impostazione di esecuzione temporanea:
select
*
from ${ref("data")}
${when(
dataform.projectConfig.vars.executionSetting === "staging",
"where mod(farm_fingerprint(id) / 10) = 0",
)}
Il seguente esempio di codice mostra un file SQLX di definizione della vista con una clausola when
e la variabile myVariableName
:
config { type: "view" }
SELECT ${when(
dataform.projectConfig.vars.myVariableName === "myVariableValue",
"myVariableName is set to myVariableValue!",
"myVariableName is not set to myVariableValue!"
)}
Passaggi successivi
Per saperne di più sulle impostazioni del progetto Dataform, consulta Riferimento
IProjectConfig
.Per scoprire come controllare la versione del codice in Dataform, consulta Controllo della versione del codice.
Per scoprire come definire una tabella, consulta Creare una tabella.