Visão geral dos recursos do Dataform

O Dataform é um serviço sem servidor para analistas de dados desenvolverem e implantarem tabelas, tabelas incrementais ou visualizações no BigQuery. O Dataform oferece um ambiente da Web para desenvolvimento de fluxo de trabalho SQL, conexão com GitHub, GitLab, serviços do Azure DevOps e Bitbucket, integração e implantação contínuas e execução de fluxo de trabalho.

Repositórios

Cada projeto do Dataform é armazenado em um repositório. Um repositório do Dataform abriga uma coleção de arquivos de configuração JSON, arquivos SQLX e arquivos JavaScript.

Os repositórios do Dataform contêm os seguintes tipos de arquivos:

  • Arquivos de configuração

    Os arquivos de configuração JSON ou SQLX permitem configurar seus fluxos de trabalho SQL. Eles contêm configuração geral, programações de execução ou esquemas para criar novas tabelas e visualizações.

  • Definições

    As definições são arquivos SQLX e JavaScript que definem novas tabelas, visualizações e outras operações SQL para executar no BigQuery.

  • Inclui

    Inclui são arquivos JavaScript em que você pode definir variáveis e funções para usar no seu projeto.

Cada repositório do Dataform está conectado a uma conta de serviço. É possível selecionar uma conta de serviço ao criar um repositório ou editar a conta de serviço posteriormente.

Por padrão, o Dataform usa uma conta de serviço derivada do número do projeto no seguinte formato:

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

Controle de versões

O Dataform usa o sistema de controle de versões do Git para manter um registro de cada alteração feita nos arquivos do projeto e para gerenciar as versões dos arquivos.

Cada repositório do Dataform pode gerenciar o próprio repositório Git ou ser conectado a um repositório Git remoto de terceiros. É possível conectar um repositório do Dataform a repositórios do GitHub, GitLab, Azure DevOps Services ou Bitbucket.

Os usuários controlam a versão do código do fluxo de trabalho SQL nos espaços de trabalho do Dataform. Em um espaço de trabalho do Dataform, é possível extrair alterações do repositório, confirmar todas ou algumas mudanças e enviá-las por push para as ramificações Git do repositório.

Desenvolvimento de fluxo de trabalho

No Dataform, você faz alterações nos arquivos e diretórios dentro de um espaço de trabalho de desenvolvimento. Um espaço de trabalho de desenvolvimento é uma cópia virtual e editável do conteúdo de um repositório Git. O Dataform preserva o estado dos arquivos no espaço de trabalho de desenvolvimento entre as sessões.

Em um espaço de trabalho de desenvolvimento, é possível desenvolver ações de fluxo de trabalho SQL usando o Dataform Core com SQLX e JavaScript ou exclusivamente com JavaScript. É possível formatar automaticamente o código JavaScript ou principal do Dataform.

Cada elemento de um fluxo de trabalho SQL do Dataform, como uma tabela ou declaração, corresponde a uma ação que o Dataform realiza no BigQuery. Por exemplo, um arquivo de definição de tabela é uma ação de criar ou atualizar a tabela no BigQuery.

Em um espaço de trabalho do Dataform, é possível desenvolver as seguintes ações do fluxo de trabalho SQL:

É possível usar o JavaScript para reutilizar o código do fluxo de trabalho SQL do Dataform das seguintes maneiras:

O Dataform compila o código do fluxo de trabalho SQL no seu espaço de trabalho em tempo real. No seu espaço de trabalho, é possível visualizar as consultas compiladas e os detalhes das ações em cada arquivo. Você também pode ver o status e os erros da compilação no arquivo editado ou no repositório.

Para testar a saída de uma consulta SQL compilada antes de executá-la no BigQuery, execute a visualização da consulta no espaço de trabalho do Dataform.

Para inspecionar todo o fluxo de trabalho SQL definido no seu espaço de trabalho, visualize um gráfico compilado interativo que mostra todas as ações compiladas no seu fluxo de trabalho SQL e as relações entre elas.

Compilação do fluxo de trabalho

O Dataform usa as configurações de compilação padrão, definidas no arquivo de configurações do fluxo de trabalho, para compilar o código do fluxo de trabalho SQL no seu espaço de trabalho para SQL em tempo real, criando um resultado de compilação do espaço de trabalho.

É possível substituir as configurações de compilação para personalizar como o Dataform compila seu fluxo de trabalho SQL em um resultado de compilação.

Com as substituições de compilação do espaço de trabalho, é possível configurar substituições de compilação para todos os espaços de trabalho em um repositório. É possível definir substituições dinâmicas do espaço de trabalho para criar resultados de compilação personalizados para cada espaço de trabalho, transformando-os em ambientes de desenvolvimento isolados. É possível substituir o projeto do Google Cloud em que o Dataform vai executar o conteúdo de um espaço de trabalho, adicionar um prefixo aos nomes de todas as tabelas compiladas e adicionar um sufixo ao esquema padrão.

Com as configurações de versão, é possível definir modelos de configurações de compilação para criar resultados de compilação de um repositório do Dataform. Em uma configuração de versão, é possível substituir o projeto do Google Cloud em que o Dataform vai executar os resultados de compilação, adicionar um prefixo aos nomes de todas as tabelas compiladas, adicionar um sufixo ao esquema padrão e incluir variáveis de compilação. Você também pode definir a frequência de criação de resultados de compilação. Para programar execuções de resultados de compilação criados em uma configuração de versão selecionada, crie uma configuração de fluxo de trabalho.

Execução do fluxo de trabalho

Durante a execução do fluxo de trabalho, o Dataform executa os resultados de compilação de fluxos de trabalho SQL para criar ou atualizar recursos no BigQuery.

Para criar ou atualizar as tabelas e visualizações definidas no fluxo de trabalho SQL no BigQuery, inicie uma execução de fluxo de trabalho manualmente em um espaço de trabalho de desenvolvimento ou programe execuções.

É possível programar execuções do Dataform no BigQuery destas maneiras:

Para depurar erros, monitore as execuções das seguintes maneiras:

A seguir