Panoramica delle funzionalità di Dataform

Dataform è un servizio serverless che consente agli analisti di dati di sviluppare e eseguire il deployment di tabelle, tabelle incrementali o viste in BigQuery. Dataform offre un ambiente web per lo sviluppo dei flussi di lavoro SQL, connessione con GitHub, GitLab, Azure DevOps Services e Bitbucket, integrazione ed esecuzione continua ed esecuzione del flusso di lavoro.

Repository

Ogni progetto Dataform viene archiviato repository. Un repository Dataform ospita una raccolta di file di configurazione JSON, i file SQLX e JavaScript.

I repository Dataform contengono i seguenti tipi di file:

  • File di configurazione

    I file JSON o SQLX di configurazione consentono di configurare i flussi di lavoro SQL. Contengono la configurazione generale, le pianificazioni di esecuzione o lo schema per creando nuove tabelle e viste.

  • Definizioni

    Le definizioni sono file SQLX e JavaScript che definiscono nuove tabelle, viste e operazioni SQL aggiuntive per l'esecuzione in BigQuery.

  • Include

    Include i file JavaScript in cui puoi definire variabili e funzioni da usare nel tuo progetto.

Ogni repository Dataform è connesso a un account di servizio. Puoi seleziona un account di servizio quando crei un repository oppure modifica l'account di servizio in un secondo momento.

Per impostazione predefinita, Dataform utilizza un account di servizio derivato numero di progetto nel seguente formato:

service-YOUR_PROJECT_NUMBER@gcp-sa-dataform.iam.gserviceaccount.com

Controllo delle versioni

Dataform utilizza il sistema di controllo della versione Git per mantenere un record ogni modifica apportata ai file di progetto e per gestire le versioni dei file.

Ogni repository Dataform può gestire il proprio repository Git connesso a un repository Git remoto di terze parti. Puoi connettere un repository Dataform a un repository GitHub, GitLab, Azure DevOps Services o Bitbucket.

Controllo della versione del codice del flusso di lavoro SQL degli utenti all'interno delle aree di lavoro Dataform. In un'area di lavoro Dataform, puoi eseguire il pull delle modifiche dal repository, eseguire il commit di tutte le modifiche o solo di alcune ed eseguirne il push nei rami Git del repository.

Sviluppo del flusso di lavoro

In Dataform, apporti modifiche a file e directory all'interno di un area di lavoro di sviluppo. Un'area di lavoro di sviluppo è una copia virtuale modificabile i contenuti di un repository Git. Dataform conserva lo stato nell'area di lavoro di sviluppo tra una sessione e l'altra.

In un'area di lavoro di sviluppo, puoi sviluppare azioni del flusso di lavoro SQL utilizzando Dataform core con SQLX e JavaScript oppure solo con JavaScript. Puoi formattare automaticamente il codice Dataform core o JavaScript.

Ogni elemento di un flusso di lavoro SQL Dataform, ad esempio una tabella o un'asserzione, corrisponde a un'azione eseguita da Dataform in BigQuery. Ad esempio, un file di definizione di una tabella è un'azione per creare o aggiornare in BigQuery.

In un'area di lavoro Dataform, puoi sviluppare quanto segue Azioni del flusso di lavoro SQL:

Puoi usare JavaScript per riutilizzare il codice del flusso di lavoro SQL di Dataform nei seguenti modi:

Dataform compila il codice del flusso di lavoro SQL nella tua area di lavoro in tempo reale. Nell'area di lavoro, puoi visualizzare le query compilate e i dettagli delle azioni in ciascun file. Puoi anche visualizzare lo stato di compilazione e gli errori in nel file modificato o nel repository.

Per testare l'output di una query SQL compilata prima di eseguirla BigQuery, puoi esegui l'anteprima della query nell'area di lavoro Dataform.

Per ispezionare l'intero flusso di lavoro SQL definito nell'area di lavoro, puoi: visualizza un grafico compilato interattivo che mostra tutte le azioni compilate nel flusso di lavoro SQL e le relazioni tra queste.

Compilazione del flusso di lavoro

Dataform utilizza le impostazioni di compilazione predefinite, configurate nel file delle impostazioni del flusso di lavoro, per compilare il flusso di lavoro SQL codice nella tua area di lavoro a SQL in tempo reale creando un risultato di compilazione dell'area di lavoro.

Puoi ignorare le impostazioni di compilazione per personalizzare il modo in cui Dataform compila il flusso di lavoro SQL in un risultato di compilazione.

Con gli override delle compilazioni delle aree di lavoro, puoi configurare gli override delle compilazioni per tutte le aree di lavoro in un repository. Puoi impostare override dell'area di lavoro dinamica per creare risultati di compilazione personalizzati per ogni area di lavoro, trasformandole in ambienti di sviluppo isolati. Puoi eseguire l'override del progetto Google Cloud in cui verrà eseguito Dataform i contenuti di un'area di lavoro, aggiungi un prefisso ai nomi di tutte le tabelle compilate e aggiungi un suffisso allo schema predefinito.

Con le configurazioni della release, puoi configurare modelli di impostazioni di compilazione per la creazione i risultati della compilazione di un repository Dataform. In una release puoi eseguire l'override del progetto Google Cloud in cui Dataform eseguirà i risultati della compilazione e aggiungerà un prefisso ai nomi tutte le tabelle compilate, aggiungi un suffisso allo schema predefinito e aggiungere variabili di compilazione. Puoi anche impostare la frequenza creando i risultati delle compilazioni. Per pianificare l'esecuzione dei risultati della compilazione creati in una configurazione di release selezionata, puoi creare una configurazione del flusso di lavoro.

Esecuzione flusso di lavoro

Durante l'esecuzione del flusso di lavoro, Dataform esegue i risultati della compilazione Flussi di lavoro SQL per creare o aggiornare asset in BigQuery.

Per creare o aggiornare le tabelle e le viste definite nel flusso di lavoro SQL in BigQuery, puoi avviare manualmente l'esecuzione di un flusso di lavoro in un'area di lavoro di sviluppo o pianificarne le esecuzioni.

Puoi pianificare le esecuzioni di Dataform in BigQuery nei seguenti modi:

Per eseguire il debug degli errori, puoi monitorare le esecuzioni nei seguenti modi:

Passaggi successivi