Introdução ao ciclo de vida do código no Dataform

Este documento descreve o ciclo de vida do código no Dataform e maneiras de configurar a compilação e a execução no Dataform.

Sobre o ciclo de vida do código no Dataform

O ciclo de vida do código do Dataform consiste nas seguintes fases:

Desenvolvimento
Você desenvolve um fluxo de trabalho SQL em um espaço de trabalho do Dataform.
Compilação

O Dataform compila 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 que pode ser executado no BigQuery. O Dataform usa configurações que você definiu no arquivo dataform.json para criar o resultado da compilação.

A compilação do Dataform é hermética para garantir a consistência, ou seja, o mesmo código é compilado no mesmo resultado de compilação SQL todas as vezes. O Dataform compila seu código em um ambiente de sandbox sem acesso à Internet. Nenhuma outra ação, como chamar APIs externas, está disponível durante a compilação.

Execução

Em uma invocação de fluxo de trabalho, o Dataform executa o resultado de compilação do espaço de trabalho no BigQuery.

Para personalizar o ciclo de vida do código do Dataform de acordo com suas necessidades, configure o resultado da compilação para influenciar onde e como o Dataform executa seu fluxo de trabalho SQL. Em seguida, é possível acionar ou programar manualmente execuções para influenciar quando o Dataform executa todo o fluxo de trabalho SQL ou os elementos selecionados.

Formas de configurar a compilação do Dataform

Por padrão, o Dataform usa as configurações no arquivo dataform.json para criar resultados de compilação. Você pode substituir as configurações padrão por substituições de compilação para criar resultados personalizados. É possível acionar manualmente a execução de um resultado de compilação personalizado ou programar execuções.

O Dataform oferece as opções abaixo para configurar os resultados da compilação:

Substituições de compilação do espaço de trabalho
É possível configurar substituições de compilação que se aplicam a todos os espaços de trabalho em um repositório. É possível usar substituições de compilação do espaço de trabalho para criar ambientes de desenvolvimento isolados.
Configurações da versão
É possível criar configurações de versão para definir modelos a fim de criar resultados de compilação de um repositório do Dataform. Em seguida, é possível criar uma configuração de fluxo de trabalho para programar execuções de resultados de compilação criados em uma configuração de lançamento selecionada.
Substituições de compilação da API Dataform
Você pode transmitir as solicitações da API Dataform no terminal para criar e executar um único resultado de compilação com substituições.

Configurar substituições de compilação do espaço de trabalho

Com as substituições de compilação do Workspace, é possível criar substituições de compilação para todos os espaços de trabalho em um repositório do Dataform. É possível criar uma configuração de substituições de compilação do espaço de trabalho por repositório.

Quando você aciona manualmente a execução em um espaço de trabalho em um repositório com substituições de compilação do espaço de trabalho, o Dataform aplica essas substituições ao resultado da compilação do espaço de trabalho.

É possível configurar as seguintes substituições de compilação do espaço de trabalho:

  • Projeto do Google Cloud em que o Dataform executa o conteúdo do espaço de trabalho
  • Prefixo da tabela
  • Sufixo do esquema

É possível usar substituições de compilação do espaço de trabalho para criar ambientes de desenvolvimento isolados isolando os resultados de compilação do espaço de trabalho no BigQuery com substituições de compilação dinâmica. As substituições de compilação de prefixos de tabela e sufixo de esquema contêm a variável ${workspaceName}. Quando você aciona a execução em um espaço de trabalho, o Dataform substitui a variável ${workspaceName} pelo nome do espaço de trabalho atual, criando substituições de compilação exclusivas para ele.

Lembre-se de que não é possível programar execuções de resultados de compilação criados com substituições de compilação do espaço de trabalho.

Criar configurações de versão

Com as configurações de versão, é possível definir modelos de configurações para criar resultados de compilação de repositórios.

Em uma configuração de versão, é possível definir substituições de compilação de configurações de dataform.json, variáveis de compilação e a frequência de criação de resultados de compilação de todo o repositório.

Em uma configuração de versão, é possível configurar as seguintes substituições de compilação:

É possível criar várias configurações de versão em um repositório do Dataform, uma para cada etapa do ciclo de vida de desenvolvimento, criando resultados de compilação de repositórios isolados.

É possível criar configurações de fluxo de trabalho para programar execuções de resultados de compilação criados em uma configuração de versão selecionada.

Também é possível acionar manualmente a execução de um resultado de compilação em uma configuração de lançamento selecionada.

Configurar um único resultado de compilação com substituições de compilação da API Dataform

Ao transmitir as solicitações da API Dataform no terminal, você pode configurar substituições de compilação para um único resultado.

Na solicitação compilationResults.create, é possível criar um único resultado de compilação de um espaço de trabalho do Dataform ou um comittish Git especificado.

No objeto CodeCompilationConfig da solicitação compilationResults.create, é possível configurar substituições de compilação para a solicitação.

É possível configurar as seguintes substituições de compilação da API Dataform:

As substituições de compilação da API Dataform se aplicam a um único resultado de compilação e a uma única execução. Não é possível usá-los para programar execuções do Dataform.

Você pode executar um resultado de compilação na solicitação workflowInvocations.create.

Formas de configurar a execução do Dataform

O Dataform oferece as seguintes opções de configuração de execução:

Execução manual em um espaço de trabalho
É possível acionar manualmente a execução instantânea de um fluxo de trabalho SQL em um espaço de trabalho do Dataform, fora de qualquer programação. É possível executar ações selecionadas no fluxo de trabalho SQL.
Configurações do fluxo de trabalho
É possível programar execuções de resultados de compilação criados em uma configuração de versão selecionada. É possível selecionar as ações do fluxo de trabalho SQL a serem executadas e definir a frequência e o fuso horário das execuções.

Acionar a execução instantânea em um espaço de trabalho

Em um espaço de trabalho do Dataform, é possível executar instantaneamente manualmente o fluxo de trabalho SQL no seu espaço de trabalho, fora de qualquer programação.

É possível executar manualmente os seguintes elementos do fluxo de trabalho SQL no seu espaço de trabalho:

Se o repositório tiver substituições de compilação do espaço de trabalho, será possível conferir quais substituições de compilação o Dataform vão aplicar ao resultado.

Criar configurações de fluxo de trabalho

Com as configurações do fluxo de trabalho, é possível programar execuções de resultados de compilação de uma configuração de versão selecionada. É possível criar várias configurações de fluxo de trabalho em um repositório do Dataform.

Em uma configuração de fluxo de trabalho, é possível definir as seguintes configurações de execução:

  • Configuração da versão de compilação aplicada
  • Seleção de ações do fluxo de trabalho SQL a serem executadas
  • Programação e fuso horário das execuções

Selecione as seguintes ações do fluxo de trabalho SQL para serem executadas:

  • Todas as ações
  • Ações selecionadas
  • Ações com as tags selecionadas

Em seguida, durante uma execução programada da configuração do fluxo de trabalho, o Dataform implanta sua seleção de ações do resultado da compilação aplicado no BigQuery.

As configurações de versão do Dataform e de fluxo de trabalho permitem que você configure a compilação e programe execuções no Dataform, sem precisar depender de outros serviços.

Expiração dos recursos do ciclo de vida

O Dataform armazena resultados da compilação e invocações de fluxo de trabalho por um período específico.

Expiração das invocações de fluxo de trabalho

As invocações de fluxo de trabalho expiram após 90 dias ou quando você as exclui manualmente.

Em uma configuração de fluxo de trabalho, é possível visualizar uma lista das invocações de fluxo de trabalho mais recentes criadas pela configuração. Quando uma invocação de fluxo de trabalho criada por uma configuração de fluxo de trabalho expira, o Dataform a remove da lista de invocações recentes.

Expiração dos resultados da compilação

A expiração dos resultados de compilação depende da maneira como eles são criados: em um espaço de trabalho de desenvolvimento, em uma configuração de versão ou por uma invocação de fluxo de trabalho.

Quando você desenvolve um fluxo de trabalho SQL em um espaço de trabalho do Dataform, o Dataform compila seu código em um resultado de compilação em tempo real para fornecer validação de consulta. Os resultados da compilação criados dessa forma expiram após 24 horas.

Em uma configuração de lançamento, o resultado de compilação mais recente se torna o resultado ativo. Um novo resultado de compilação substitui o resultado atual da compilação. O Dataform retém o resultado da compilação ativa até que ele seja substituído por um novo resultado. Um resultado de compilação substituído expira em até 24 horas.

O Dataform remove os resultados de compilação expirados da lista de resultados anteriores na página Detalhes de uma configuração de versão.

O Dataform retém os resultados da compilação criados pelas invocações de fluxo de trabalho durante toda a vida útil da invocação do fluxo de trabalho, até 24 horas após a expiração ou a exclusão dela.

A seguir