Con la CLI open source di Dataform, puoi inizializzare, compilare, testare, ed eseguire Dataform Core localmente, al di fuori di Google Cloud.
La CLI di Dataform supporta le Credenziali predefinite dell'applicazione (ADC). Con le ADC, puoi rendere disponibili le credenziali per la tua applicazione in vari ambienti, ad esempio per lo sviluppo locale o la produzione, senza dover modificare il codice dell'applicazione. Per utilizzare le ADC, devi prima fornire le tue credenziali alle ADC.
Prima di iniziare
Prima di installare la CLI di Dataform, installa NPM.
Installare la CLI di Dataform
Per installare la CLI di Dataform, esegui questo comando:
npm i -g @dataform/cli
Inizializzare un progetto Dataform
Per inizializzare un nuovo progetto Dataform, esegui questo comando nella directory del progetto:
dataform init . YOUR_GOOGLE_CLOUD_PROJECT_ID DEFAULT_LOCATIONSostituisci quanto segue:
YOUR_GOOGLE_CLOUD_PROJECT_ID: l' Google Cloud ID progetto.DEFAULT_LOCATION: la località BigQuery in cui vuoi che Dataform elabori e memorizzi i dati.
Aggiornare Dataform Core
Per aggiornare il framework Dataform Core, aggiorna
dataformCoreVersionnel fileworkflow_settings.yaml. QuandodataformCoreVersionè impostato inworkflow_settings.yaml, Dataform installa@dataform/coreautomaticamente in fase di runtime. Se invece il progetto gestisce@dataform/corein un filepackage.jsonsenzadataformCoreVersioninworkflow_settings.yaml, aggiorna la versione inpackage.jsoned esegui:dataform install
Aggiornare la CLI di Dataform
Per aggiornare lo strumento della CLI di Dataform, esegui questo comando:
npm i -g @dataform/cli@^3.0.50
Creare un file di credenziali
Dataform richiede un file di credenziali per connettersi ai servizi remoti e creare il file .df-credentials.json sul disco.
Per creare il file di credenziali:
Esegui questo comando:
dataform init-credsSegui la procedura guidata
init-credsche ti guida nella creazione del file di credenziali.
Creare un progetto
Un progetto Dataform vuoto in Dataform Core 3.0.0 o versioni successive ha la seguente struttura:
project-dir
├── definitions
├── includes
└── workflow_settings.yaml
Per creare un progetto Dataform per eseguire il deployment degli asset in BigQuery, esegui questo comando:
dataform init PROJECT_NAME --default-database YOUR_GOOGLE_CLOUD_PROJECT_ID --default-location DEFAULT_LOCATIONSostituisci quanto segue:
PROJECT_NAME: il nome della directory del progetto.YOUR_GOOGLE_CLOUD_PROJECT_ID: l' Google Cloud ID progetto.DEFAULT_LOCATION: la località BigQuery in cui vuoi che Dataform elabori e memorizzi i dati.
Clonare un progetto
Per clonare un progetto Dataform esistente da un repository Git di terze parti, segui le istruzioni del tuo provider Git.
Se il progetto clonato dichiara dipendenze esterne in un file
package.json(senzadataformCoreVersioninworkflow_settings.yaml), esegui questo comando nella directory del repository clonato:dataform install
Definire una tabella
Archivia le definizioni nella cartella definitions/.
Per definire una tabella, esegui questo comando:
echo "config { type: 'TABLE_TYPE' } SELECT_STATEMENT" > definitions/FILE.sqlxSostituisci quanto segue:
TABLE_TYPE: il tipo di tabella:table,incrementaloview.SELECT_STATEMENT: un'istruzioneSELECTche definisce la tabella.FILE: il nome del file di definizione della tabella.
Il seguente esempio di codice definisce una visualizzazione nel file SQLX example.
echo "config { type: 'view' } SELECT 1 AS test" > definitions/example.sqlx
Definire un'asserzione manuale
Archivia le definizioni nella cartella definitions/.
Per definire un'asserzione manuale, esegui questo comando:
echo "config { type: 'assertion' } SELECT_STATEMENT" > definitions/FILE.sqlxSostituisci quanto segue:
SELECT_STATEMENT: un'istruzioneSELECTche definisce l'asserzione.FILE: il nome del file di definizione dell'operazione SQL personalizzata.
Definire un'operazione SQL personalizzata
Archivia le definizioni nella cartella definitions/.
Per definire un'operazione SQL personalizzata, esegui questo comando:
echo "config { type: 'operations' } SQL_QUERY" > definitions/FILE.sqlxSostituisci quanto segue:
SQL_QUERY: la tua operazione SQL personalizzata.FILE: il nome del file di definizione dell'operazione SQL personalizzata.
Visualizzare l'output di compilazione
Dataform compila il codice in tempo reale.
Per visualizzare l'output del processo di compilazione nel terminale, esegui questo comando:
dataform compilePer visualizzare l'output del processo di compilazione come oggetto JSON, esegui questo comando:
dataform compile --jsonPer visualizzare l'output della compilazione con variabili di compilazione personalizzate, esegui questo comando:
dataform compile --vars=SAMPLE_VAR=SAMPLE_VALUE,foo=barSostituisci quanto segue:
SAMPLE_VAR: la tua variabile di compilazione personalizzata.SAMPLE_VALUE: il valore della variabile di compilazione personalizzata.
Eseguire codice
Per eseguire il codice, Dataform accede a BigQuery per determinarne lo stato attuale e adattare di conseguenza l'SQL risultante.
Per eseguire il codice del progetto Dataform, esegui questo comando:
dataform runPer eseguire il codice del progetto Dataform in BigQuery con variabili di compilazione personalizzate, esegui questo comando:
dataform run --vars=SAMPLE_VAR=SAMPLE_VALUE,sampleVar2=sampleValue2Sostituisci quanto segue:
SAMPLE_VAR: la tua variabile di compilazione personalizzata.SAMPLE_VALUE: il valore della variabile di compilazione personalizzata.
Per eseguire il codice del progetto Dataform in BigQuery e ricompilare da zero le tabelle incrementali (a meno che non siano contrassegnate come
protected), esegui questo comando:dataform run --full-refresh
Senza --full-refresh, Dataform aggiorna le tabelle incrementali senza ricompilarle da zero (le tabelle e le visualizzazioni normali vengono sempre ricompilate).
Per eseguire un dry run del codice in BigQuery, esegui questo comando:
dataform run --dry-run
Assistenza
Per visualizzare l'elenco di tutti i comandi e le opzioni disponibili, esegui questo comando:
dataform helpPer visualizzare la descrizione di un comando specifico, esegui questo comando:
dataform help COMMANDSostituisci
COMMANDcon il comando di cui vuoi saperne di più.
Passaggi successivi
- Per saperne di più sui comandi e sui flag della CLI di Dataform, consulta il riferimento alla CLI di Dataform e il riferimento alla CLI di Dataform su GitHub.
- Per saperne di più su Dataform, consulta la panoramica di Dataform.