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

Neste documento, descrevemos 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 uma 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ê definidas no arquivo de configurações do fluxo de trabalho para criar o resultado da compilação.

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

Execução

Em uma invocação de fluxo de trabalho, O Dataform executa o resultado da 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 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 execuções manualmente para influenciar quando o Dataform executa todo o fluxo de trabalho SQL ou seus elementos selecionados.

Formas de configurar a compilação do Dataform

Por padrão, o Dataform usa as configurações arquivo de configurações do fluxo de trabalho para criar resultados de compilação. É possível substituir as configurações padrão com substituições de compilação para criar resultados de compilação personalizados. É possível acionar manualmente a execução de um resultado de compilação personalizado ou programar execuções.

O Dataform oferece as seguintes opções de configuração 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 de uma repositório de dados. É possível usar substituições de compilação do espaço de trabalho para criar ambientes de desenvolvimento de software.
Configurações de versão
Você pode criar configurações de versão para definir modelos para a criação resultados de compilação de um repositório do Dataform. Em seguida, você pode criar um configuração do fluxo de trabalho para programar execuções de resultados de compilação criados em uma configuração de versão selecionada.
Substituições de compilação da API Dataform
Você pode transmitir solicitações da API Dataform no terminal para criar e executar uma resultado único de uma compilação com substituições de compilação.

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

Com as substituições de compilação do espaço de trabalho, é possível criar substituições de compilação para todos os espaços de trabalho em um Dataform repositório de dados. É 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 de uma 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 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 elementos de desenvolvimento isolados ambientes isolando os resultados de compilação do espaço de trabalho no BigQuery com substituições de compilação dinâmica. Prefixo da tabela dinâmica As substituições de compilação do sufixo do esquema contêm a variável ${workspaceName}. Quando você aciona a execução em um espaço de trabalho, o Dataform substitui as Variável ${workspaceName} com o nome do espaço de trabalho atual, criando substituições de compilação exclusivas do espaço de trabalho.

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

Criar configurações de versão

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

Em uma configuração de versão, você pode configurar substituições de compilação de configurações do fluxo de trabalho, variáveis de compilação e a frequência de criação resultados de compilação de todo o repositório.

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

Você pode criar várias configurações de versão em um Dataform de projeto, um para cada estágio do seu ciclo de vida de desenvolvimento, criando os resultados da compilação do repositório.

Em seguida, é 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.

Você também pode acionar manualmente a execução de um resultado de compilação em uma configuração de versão selecionada.

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

Ao transmitir solicitações da API Dataform no terminal, é possível configurar a compilação. substituições para um único resultado de compilação.

Na solicitação compilationResults.create, você pode criar um único resultado de compilação de um Dataform workspace ou um comittish Git especificado.

No objeto CodeCompilationConfig do compilationResults.create, é possível configurar substituições de compilação para a solicitação de compilaçã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 o resultado da compilação e uma única execução. Não é possível usá-los para programar Execuções do Dataform.

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

Formas de configurar a execução do Dataform

O Dataform oferece as seguintes opções para configurar a 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 do SQL.
Configurações de fluxo de trabalho
É possível programar execuções de resultados de compilação criados em um configuração de lançamento. É possível selecionar ações do fluxo de trabalho SQL a serem executadas. defina 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 fazer execuções instantâneas manualmente do 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 na sua espaço de trabalho:

Se o repositório tiver substituições de compilação do espaço de trabalho, é possível conferir quais substituições de compilação que o Dataform vai aplicar ao espaço de trabalho com base no resultado da compilação.

Criar configurações de fluxo de trabalho

Com as configurações de fluxo de trabalho, é possível agendar execuções de resultados de compilação de um configuração de lançamento. É 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 aplicada da versão de compilação
  • Seleção de ações do fluxo de trabalho SQL a serem executadas
  • Programação e fuso horário das execuções

É possível selecionar as seguintes ações do fluxo de trabalho SQL para execução:

  • Todas as ações
  • Ações selecionadas
  • Ações com 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 da o resultado da compilação no BigQuery.

As configurações de versão e de fluxo de trabalho do Dataform permitem configurar compilação e programar execuções no Dataform; sem depender de outros serviços.

Expiração dos recursos do ciclo de vida

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

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

Invocações do fluxo de trabalho expiram após 90 dias ou quando você os exclui manualmente.

Em uma configuração de fluxo de trabalho, confira uma lista das invocações mais recentes do fluxo de trabalho criados pela configuração. Quando uma invocação de fluxo de trabalho criada por um fluxo de trabalho expira, o Dataform remove essa invocação de fluxo de trabalho na lista de invocações recentes.

Expiração dos resultados da compilação

Expiração dos resultados da compilação. depende da forma como 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.

Ao desenvolver 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 validar as consultas. Os resultados de compilação criados dessa forma expiram após 24 horas.

Em uma configuração de versão, o resultado mais recente da compilação se torna o arquivo com base no resultado da compilação. Um novo resultado de compilação substitui o conteúdo atual com base no resultado da compilação. O Dataform mantém o resultado da compilação em tempo real até que seja substituído por um novo resultado de compilação. O resultado de uma compilação substituída expira em em até 24 horas.

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

O Dataform retém os resultados de compilação criados por invocações do fluxo de trabalho por toda a vida útil da invocação do fluxo de trabalho, até 24 horas após o fluxo de trabalho da invocação expirar ou for excluída.

A seguir