Este documento mostra como fazer o seguinte no Dataform:
- Compreenda o ciclo de vida do fluxo de trabalho no Dataform.
- Crie substituições de compilação do espaço de trabalho.
- Configure substituições de compilação com a API Dataform.
- Crie uma configuração de lançamento.
Antes de começar
Na Google Cloud consola, aceda à página Dataform.
Selecione ou crie um repositório.
Selecione ou crie um espaço de trabalho de desenvolvimento.
Opcional: para substituir o projeto predefinido na configuração de lançamento, conceda acesso à sua conta de serviço do Dataform ao projeto que planeia usar. Google Cloud
Funções necessárias
Para receber as autorizações de que
precisa para concluir as tarefas neste documento,
peça ao seu administrador que lhe conceda a
função do IAM Administrador do Dataform (roles/dataform.admin
) nos repositórios.
Para mais informações sobre a atribuição de funções, consulte o artigo Faça a gestão do acesso a projetos, pastas e organizações.
Também pode conseguir as autorizações necessárias através de funções personalizadas ou outras funções predefinidas.
Para poder atualizar a versão de lançamento de uma configuração de lançamento para um repositório do Dataform quando o modo estrito de agir como está ativado, tem de ter a autorização iam.serviceAccounts.actAs
em todas as contas de serviço nas configurações do fluxo de trabalho que estão a usar esta configuração de lançamento. Esta autorização está disponível na função Utilizador da conta de serviço (roles/iam.serviceAccountUser
).
Introdução ao ciclo de vida do fluxo de trabalho no Dataform
Esta secção descreve o ciclo de vida do fluxo de trabalho no Dataform e as formas de configurar a compilação e a execução no Dataform.
O ciclo de vida do fluxo de trabalho do Dataform consiste nas seguintes fases:
- Programação
- Desenvolve um fluxo de trabalho num espaço de trabalho do Dataform.
- Compilação
O Dataform compila o código do fluxo de trabalho no seu espaço de trabalho para SQL em tempo real, criando um resultado da compilação do espaço de trabalho que pode executar no BigQuery. O Dataform usa as definições que define no ficheiro de definiçõ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 para o mesmo resultado de compilação de SQL sempre. O Dataform compila o seu código num ambiente de sandbox sem acesso à Internet. Não estão disponíveis ações adicionais, como chamar APIs externas, durante a compilação.
- Execução
Numa invocação do 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 fluxo de trabalho do Dataform de acordo com as suas necessidades, pode configurar o resultado da compilação para influenciar onde e como o Dataform executa o seu fluxo de trabalho. Em seguida, pode acionar ou agendar manualmente execuções para influenciar o momento em que o Dataform executa todo o fluxo de trabalho ou os respetivos elementos selecionados.
Formas de configurar a compilação do Dataform
Por predefinição, o Dataform usa as definições no ficheiro de definições do fluxo de trabalho para criar resultados de compilação. Pode substituir as predefinições com substituições de compilação para criar resultados de compilação personalizados. Em seguida, pode acionar manualmente uma execução de um resultado de compilação personalizado ou agendar execuções.
O Dataform oferece as seguintes opções para configurar os resultados da compilação:
- Substituições de compilação do Workspace
- Pode configurar substituições de compilação que se aplicam a todos os espaços de trabalho num repositório. Pode usar substituições de compilação do espaço de trabalho para criar ambientes de desenvolvimento isolados.
- Configurações de lançamento
- Pode criar configurações de lançamento para configurar modelos para criar resultados de compilação de um repositório do Dataform. Em seguida, pode criar uma configuração do fluxo de trabalho para agendar execuções de resultados de compilação criados numa configuração de lançamento selecionada.
- Substituições de compilação da API Dataform
- Pode transmitir pedidos da API Dataform no terminal para criar e executar um único resultado de compilação com substituições de compilação.
Configure substituições de compilação do espaço de trabalho
Com as substituições de compilação do espaço de trabalho, pode criar substituições de compilação para todos os espaços de trabalho num repositório do Dataform. Pode criar uma configuração de substituições de compilação do espaço de trabalho para cada repositório.
Quando aciona manualmente uma execução num espaço de trabalho num repositório com substituições de compilação do espaço de trabalho, o Dataform aplica estas substituições ao resultado da compilação do espaço de trabalho.
Pode configurar as seguintes substituições de compilação do espaço de trabalho:
- Google Cloud projeto no qual o Dataform executa os conteúdos do espaço de trabalho
- Prefixo da tabela
- Sufixo do esquema
Pode usar substituições de compilação do espaço de trabalho para criar ambientes de desenvolvimento isolados, isolando os resultados da compilação do espaço de trabalho no BigQuery com substituições de compilação dinâmicas. A compilação do prefixo da tabela dinâmica e do sufixo do esquema contém a variável ${workspaceName}
.
Quando aciona uma execução num 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 do espaço de trabalho.
Tenha em atenção que não pode agendar execuções de resultados de compilação criados com substituições de compilação do espaço de trabalho.
Crie configurações de lançamentos
Com as configurações de lançamento, pode configurar modelos de definições para criar resultados de compilação de repositórios.
Numa configuração de lançamento, pode configurar substituições de compilação de definições de fluxo de trabalho, variáveis de compilação e a frequência de criação de resultados de compilação de todo o repositório.
Numa configuração de lançamento, pode configurar as seguintes substituições de compilação:
- Google Cloud projeto
- Prefixo da tabela
- Sufixo do esquema
- Valor de uma variável de compilação
Pode criar várias configurações de lançamento num repositório do Dataform, uma para cada fase do ciclo de vida de desenvolvimento, criando resultados de compilação do repositório isolados.
Em seguida, pode criar configurações de fluxo de trabalho para agendar execuções de resultados de compilação criados numa configuração de lançamento selecionada.
Também pode acionar manualmente a execução de um resultado da compilação numa configuração de lançamento selecionada.
Configure um único resultado de compilação com substituições de compilação da API Dataform
Ao transmitir pedidos da Dataform API no terminal, pode configurar substituições de compilação para um único resultado de compilação.
No pedido
compilationResults.create
, pode criar um único resultado de compilação de um espaço de trabalho do Dataform ou de um comittish do Git especificado.
No objeto
CodeCompilationConfig
do pedido compilationResults.create
, pode configurar substituições de compilação para o pedido de compilação.
Pode configurar as seguintes substituições de compilação da API Dataform:
- Google Cloud projeto
- Prefixo da tabela
- Sufixo do esquema
- Valor de uma variável de compilação
Tenha em atenção que as substituições de compilação da API Dataform aplicam-se a um único resultado de compilação e a uma única execução. Não pode usá-las para agendar execuções do Dataform.
Pode executar um resultado de compilação no pedido
workflowInvocations.create
.
Formas de configurar a execução do Dataform
O Dataform oferece as seguintes opções para configurar a execução:
- Execução manual num espaço de trabalho
- Pode acionar manualmente a execução instantânea de um fluxo de trabalho num espaço de trabalho do Dataform, fora de qualquer programação. Pode executar ações selecionadas no fluxo de trabalho.
- Configurações de fluxos de trabalho
- Pode agendar execuções de resultados de compilação criados numa configuração de lançamento selecionada. Pode selecionar as ações do fluxo de trabalho a executar e definir a frequência e o fuso horário das execuções.
Acione a execução instantânea num espaço de trabalho
Num espaço de trabalho do Dataform, pode acionar manualmente a execução instantânea de um fluxo de trabalho no seu espaço de trabalho, fora de qualquer programação.
Pode executar manualmente os seguintes elementos do fluxo de trabalho no seu espaço de trabalho:
Se o seu repositório contiver substituições de compilação do espaço de trabalho, pode ver que substituições de compilação o Dataform vai aplicar ao resultado da compilação do espaço de trabalho.
Crie configurações de fluxo de trabalho
Com as configurações do fluxo de trabalho, pode agendar execuções de resultados de compilação a partir de uma configuração de lançamento selecionada. Pode criar várias configurações de fluxo de trabalho num repositório do Dataform.
Numa configuração do fluxo de trabalho, pode configurar as seguintes definições de execução:
- Configuração de lançamento de compilação aplicada.
- Seleção das ações do fluxo de trabalho a executar.
- Programação e fuso horário das execuções.
Pode selecionar as seguintes ações do fluxo de trabalho a executar:
- Todas as ações
- Ações selecionadas
- Ações com etiquetas selecionadas
Em seguida, durante uma execução agendada da configuração do fluxo de trabalho, o Dataform implementa a sua seleção de ações a partir do resultado da compilação aplicado no BigQuery.
As configurações de lançamento e as configurações de fluxo de trabalho do Dataform permitem-lhe configurar a compilação e agendar execuções no Dataform, sem ter de depender de serviços adicionais.
Expiração dos recursos do ciclo de vida
O Dataform armazena os resultados da compilação e as invocações do fluxo de trabalho durante um período específico.
Validade das invocações de fluxos de trabalho
As invocações do fluxo de trabalho expiram após 90 dias ou quando as elimina manualmente.
Numa configuração do fluxo de trabalho, pode ver uma lista das invocações do 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 remove essa invocação de fluxo de trabalho da lista de invocações recentes.
Expiração dos resultados da compilação
A expiração dos resultados da compilação depende de terem sido criados num espaço de trabalho de desenvolvimento, numa configuração de lançamento ou por uma invocação do fluxo de trabalho.
Quando desenvolve um fluxo de trabalho num espaço de trabalho do Dataform, o Dataform compila o seu código num resultado de compilação em tempo real para fornecer validação de consultas. Os resultados da compilação criados desta forma expiram após 24 horas.
Numa configuração de lançamento, o resultado da compilação mais recente torna-se o resultado da compilação em direto. Um novo resultado de compilação substitui o resultado de compilação em direto atual. O Dataform retém o resultado da compilação em direto até ser substituído por um novo resultado da compilação. Um resultado de compilação substituído expira no prazo de 24 horas.
O Dataform remove os resultados de compilação expirados da lista de resultados de compilação anteriores na página Detalhes de uma configuração de lançamento.
O Dataform retém os resultados da compilação criados por invocações de fluxo de trabalho durante todo o ciclo de vida da invocação de fluxo de trabalho, até 24 horas após a expiração ou a eliminação da invocação de fluxo de trabalho.
Crie substituições de compilação do espaço de trabalho
As secções seguintes mostram como criar substituições de compilação do espaço de trabalho para isolar tabelas e visualizações criadas a partir dos seus espaços de trabalho do Dataform no BigQuery. Pode usar substituições de compilação do espaço de trabalho para criar ambientes de desenvolvimento do Dataform isolados.
Quando desenvolve código de fluxo de trabalho num espaço de trabalho do Dataform, o Dataform compila o código no seu espaço de trabalho em tempo real para criar um resultado da compilação do espaço de trabalho. O Dataform usa as definições definidas no ficheiro de definições do fluxo de trabalho para criar o resultado da compilação do espaço de trabalho. Em seguida, quando aciona a execução num espaço de trabalho, o Dataform executa o resultado da compilação do espaço de trabalho no BigQuery.
Para substituir as predefinições definidas nas definições do fluxo de trabalho para todos os espaços de trabalho no seu repositório, pode criar substituições de compilação do espaço de trabalho.
Com as substituições de compilação do espaço de trabalho, pode substituir as seguintes definições para todos os espaços de trabalho no seu repositório:
- Projeto
- O Google Cloud projeto no qual o Dataform executa o resultado da compilação do espaço de trabalho, definido em
workflow_settings.yaml
comodefaultProject
ou emdataform.json
comodefaultDatabase
. - Prefixo da tabela
- O prefixo personalizado adicionado a todos os nomes das tabelas em todos os espaços de trabalho no repositório.
- Sufixo do esquema
- O sufixo personalizado anexado ao esquema das tabelas. Defina como
defaultDataset
emworkflow_settings.yaml
,defaultSchema
emdataform.json
ou no parâmetroschema
no blococonfig
de uma tabela.
Para criar ambientes de desenvolvimento isolados, pode isolar espaços de trabalho com substituições de compilação únicas. Pode modificar dinamicamente o prefixo da tabela e as substituições de compilação do sufixo do esquema com a variável ${workspaceName}
.
Quando aciona manualmente a execução num espaço de trabalho, a variável ${workspaceName}
injeta o nome do espaço de trabalho nas substituições de compilação do espaço de trabalho.
Quando define ${workspaceName}
como o prefixo da tabela, o Dataform adiciona o nome do espaço de trabalho aos nomes de todas as tabelas no espaço de trabalho. Após a execução, no BigQuery, pode identificar o espaço de trabalho de origem de uma tabela.
Quando define ${workspaceName}
como o sufixo do esquema, o Dataform anexa o nome do espaço de trabalho a defaultSchema
, criando um esquema personalizado dedicado ao espaço de trabalho. Após a execução, no BigQuery, pode
localizar todas as tabelas executadas a partir de um espaço de trabalho específico no esquema
dedicado.
Exemplo de substituições de compilação do espaço de trabalho dinâmico
O exemplo seguinte mostra substituições de compilação do espaço de trabalho dinâmico aplicadas a um repositório que contém espaços de trabalho com os nomes dos programadores que trabalham no repositório: Sasha
e Kai
.
O objetivo das substituições de compilação do espaço de trabalho neste exemplo é criar ambientes de desenvolvimento isolados para a Sasha e o Kai.
As seguintes definições predefinidas estão definidas no workflow_settings.yaml
:
defaultProject
:analytics
defaultDataset
:dataform
As seguintes substituições de compilação do espaço de trabalho criam um prefixo da tabela dinâmico e um sufixo do esquema para cada espaço de trabalho no repositório:
- ID do projeto do Google Cloud:
analytics_dev
- Prefixo da tabela:
${workspaceName}
- Sufixo do esquema:
${workspaceName}
Quando o André aciona manualmente a execução no espaço de trabalho do Sasha
, o Dataform executa o respetivo conteúdo com as seguintes definições:
- Google Cloud project:
analytics_dev
- Esquema:
dataform_sasha
- Nomes das tabelas:
sasha_name
, por exemplo,sasha_orders
Quando o Kai aciona manualmente a execução no espaço de trabalho do Kai
, o Dataform
executa o respetivo conteúdo com as seguintes definições:
- Google Cloud project:
analytics_dev
- Esquema:
dataform_kai
- Nomes das tabelas:
kai_name
, por exemplo,kai_orders
Crie substituições de compilação do espaço de trabalho
Para criar substituições de compilação do espaço de trabalho do Dataform, siga estes passos:
- No repositório, aceda a Definições.
- Clique em Edit.
- No painel Substituições de compilação do Workspace, no campo ID do projeto do Google Cloud, introduza o ID do projeto.
- No campo Prefixo da tabela, introduza um prefixo para todos os nomes das tabelas.
- Opcional: para criar um prefixo de tabela dinâmico que seja único para cada
espaço de trabalho, introduza
${workspaceName}
como prefixo de tabela.
- Opcional: para criar um prefixo de tabela dinâmico que seja único para cada
espaço de trabalho, introduza
- No campo Sufixo do esquema, introduza um sufixo a acrescentar ao esquema da tabela ou vista criada.
- Opcional: para criar um sufixo do esquema dinâmico que seja único para cada espaço de trabalho, introduza
${workspaceName}
como sufixo da tabela.
- Opcional: para criar um sufixo do esquema dinâmico que seja único para cada espaço de trabalho, introduza
- Clique em Guardar.
O Dataform aplica substituições de compilação do espaço de trabalho a todos os espaços de trabalho no seu repositório.
Edite as substituições de compilação do espaço de trabalho
Para editar substituições de compilação do espaço de trabalho do Dataform, siga estes passos:
- No repositório, aceda a Definições.
- Clique em Edit.
- Edite as substituições de compilação do espaço de trabalho e, de seguida, clique em Guardar.
Elimine as substituições de compilação do espaço de trabalho
Para eliminar substituições de compilação do espaço de trabalho do Dataform, siga estes passos:
- No repositório, aceda a Definições.
- Clique em Edit.
- No painel Substituições de compilação do espaço de trabalho, clique em Limpar tudo e, de seguida, clique em Guardar.
Configure substituições de compilação com a API Dataform
Esta secção mostra como criar e executar um resultado de compilação com substituições de compilação através da API Dataform.
Acerca das substituições de compilação da API Dataform
Para executar o fluxo de trabalho, o Dataform compila o código em SQL para criar um resultado da compilação. Em seguida, durante uma invocação do fluxo de trabalho, o Dataform executa o resultado da compilação no BigQuery.
Por predefinição, o Dataform usa as definições no ficheiro de definições do fluxo de trabalho para criar o resultado da compilação. Para isolar os dados executados em diferentes fases do ciclo de vida de desenvolvimento, pode substituir as predefinições com substituições de compilação.
Ao transmitir pedidos da API Dataform no terminal, pode criar e executar um único resultado de compilação com substituições de compilação. Pode criar um resultado de compilação de um espaço de trabalho ou de um committish do Git selecionado.
Para criar um resultado de compilação com substituições de compilação, tem de aumentar o pedido da
API Dataform
compilationResults.create
. No pedido, tem de especificar uma origem, que deve ser um espaço de trabalho ou um commitish do Git, para o Dataform compilar no resultado da compilação. No objeto
CodeCompilationConfig
do pedido compilationResults.create
, pode configurar substituições de compilação.
Em seguida, pode
executar o resultado da compilação criado
num pedido
workflowInvocations.create
da API Dataform.
Pode configurar as seguintes substituições de compilação através da API Dataform:
- Google Cloud projeto
- O projeto no qual o Dataform executa o resultado da compilação, definido no ficheiro
workflow_settings.yaml
como a propriedadedefaultProject
ou no ficheirodataform.json
como a propriedadedefaultDatabase
. - Prefixo da tabela
- O prefixo personalizado adicionado a todos os nomes das tabelas no resultado da compilação.
- Sufixo do esquema
- O sufixo personalizado anexado ao esquema das tabelas definidas na propriedade
defaultDataset
no ficheiroworkflow_settings.yaml
, na propriedadedefaultSchema
no ficheirodataform.json
ou no parâmetroschema
no blococonfig
de uma tabela. - Valor de uma variável de compilação
- O valor de uma variável de compilação a usar no resultado da compilação. Pode usar variáveis de compilação para executar tabelas condicionalmente.
Em alternativa às substituições de compilação da API Dataform, que só pode usar para um resultado de compilação, pode configurar substituições de compilação do espaço de trabalho na Google Cloud consola.
Para saber mais sobre formas alternativas de configurar substituições de compilação no Dataform, consulte o artigo Introdução ao ciclo de vida do fluxo de trabalho no Dataform.
Defina uma origem de resultados de compilação
Para aumentar o pedido da API Dataform
compilationResults.create
, tem de especificar uma origem para o resultado da compilação.
Pode definir um espaço de trabalho do Dataform ou um ramo Git, uma etiqueta Git ou um SHA de commit do Git como a origem no pedido compilationResults.create
.
Defina um espaço de trabalho como uma origem de resultados de compilação
No pedido
compilationResults.create
, preencha a propriedadeworkspace
com o caminho de um espaço de trabalho do Dataform selecionado no seguinte formato:{ "workspace": "projects/PROJECT_NAME/locations/LOCATION/repositories/REPOSITORY_NAME/workspaces/WORKSPACE_NAME" }
Substitua o seguinte:
- PROJECT_NAME: o nome do seu Google Cloud projeto.
- LOCATION: a localização do seu repositório do Dataform, definida nas definições do fluxo de trabalho.
- REPOSITORY_NAME: o nome do seu repositório do Dataform.
- WORKSPACE_NAME: o nome do seu espaço de trabalho do Dataform.
O seguinte exemplo de código mostra a propriedade workspace
no pedido compilationResults.create
definida para um espaço de trabalho denominado "sales-test"
:
{
"workspace": "projects/analytics/locations/europe-west4/repositories/sales/workspaces/sales-test"
}
Defina um commitish do Git como uma origem do resultado da compilação
No pedido
compilationResults.create
, preencha a propriedadegitCommitish
com a ramificação, a etiqueta ou o SHA de confirmação do Git selecionados no seguinte formato:{ "gitCommitish": "GIT_COMMITISH" }
Substitua GIT_COMMITISH pelo ramo Git selecionado, pela etiqueta Git ou por um SHA de consolidação Git para o resultado da compilação.
O seguinte exemplo de código mostra a propriedade gitCommitish
no pedido compilationResults.create
definida como "staging"
:
{
"gitCommitish": "staging"
}
Substitua o projeto predefinido
Para criar tabelas de preparação ou produção num Google Cloud projeto separado do
projeto usado para desenvolvimento, pode transmitir um ID do projeto
diferente no objeto
CodeCompilationConfig
na solicitação
compilationResults.create
da API Dataform.
A transmissão de um ID do projeto predefinido separado no pedido compilationResults.create
substitui o ID do projeto predefinido configurado no ficheiro de definições do fluxo de trabalho, mas não substitui os IDs do projeto configurados em tabelas individuais.
Para substituir o ID do projeto predefinido, defina a propriedade
defaultDatabase
para o ID do projeto selecionado no objetoCodeCompilationConfig
no seguinte formato:{ "codeCompilationConfig": { "defaultDatabase": "PROJECT_NAME" } }
Substitua PROJECT_NAME pelo ID do projeto que quer definir para o resultado da compilação.
Adicione um prefixo de tabela
Para identificar rapidamente as tabelas do resultado da compilação, pode adicionar um prefixo a todos os nomes das tabelas no resultado da compilação transmitindo o prefixo da tabela no objeto CodeCompilationConfig
na API Dataform
compilationResults.create
pedido.
Para adicionar um prefixo de tabela, defina a propriedade
tablePrefix
no objetoCodeCompilationConfig
no seguinte formato:{ "codeCompilationConfig": { "tablePrefix": "PREFIX", } }
Substitua PREFIX pelo prefixo que quer acrescentar, por exemplo,
staging
.Por exemplo, se o nome da tabela for
table_name
, o Dataform cria tabelas com o nomestaging_table_name
.
Anexe um sufixo de esquema
Para separar os dados de desenvolvimento, preparação e produção, pode acrescentar um sufixo aos esquemas num resultado de compilação transmitindo o sufixo do esquema no objeto CodeCompilationConfig
no pedido da API Dataform compilationResults.create
.
Para acrescentar um sufixo de esquema, defina a propriedade
schemaSuffix
no objetoCodeCompilationConfig
no seguinte formato:{ "codeCompilationConfig": { "schemaSuffix": "SUFFIX", } }
Substitua SUFFIX pelo sufixo que quer acrescentar, por exemplo,
_staging
.Por exemplo, se a propriedade
defaultDataset
no ficheiroworkflow_settings.yaml
estiver definida comodataform
, o Dataform cria tabelas no esquemadataform_staging
.
Execute ficheiros selecionados condicionalmente com variáveis de compilação
Para executar uma tabela selecionada apenas numa definição de execução específica, pode
criar uma variável de compilação
para a definição de execução e, em seguida, transmitir o respetivo valor no objeto
CodeCompilationConfig
na API Dataform
compilationResults.create
pedido.
Para executar uma tabela condicionalmente numa definição de execução específica através da API Dataform, siga estes passos:
- Crie uma variável de compilação e adicione-a às tabelas selecionadas.
Defina o par de chave-valor YOUR_VARIABLE e VALUE no bloco
codeCompilationConfig
de um pedido de compilação da API Dataform no seguinte formato:{ "codeCompilationConfig": { "vars": { "YOUR_VARIABLE": "VALUE" } } }
Substitua YOUR_VARIABLE pelo nome da sua variável, por exemplo,
executionSetting
.Substitua VALUE pelo valor da variável para este resultado de compilação que cumpre a condição
when
definida nas tabelas selecionadas.
O seguinte exemplo de código mostra a variável executionSetting
transmitida a um pedido de compilação da API Dataform:
{
"gitCommitish": "staging",
"codeCompilationConfig": {
"vars": {
"executionSetting": "staging"
}
}
}
Execute um resultado de compilação com substituições de compilação
- Para executar o resultado da compilação criado por um pedido
compilationResults.create
, transmita o ID do resultado da compilação devolvido pelo pedidocompilationResults.create
num pedidoworkflowInvocations.create
.
O exemplo de código seguinte mostra um ID do resultado da compilação transmitido num pedido
workflowInvocations.create
:
{
"compilationResult": "projects/my-project-name/locations/europe-west4/repositories/my-repository-name/compilationResults/7646b4ed-ac8e-447f-93cf-63c43249ff11"
}
Crie uma configuração de lançamento
As secções seguintes mostram como criar uma configuração de lançamento no Dataform para configurar modelos de definições de compilação, que pode executar de acordo com um horário. Pode usar configurações de lançamento para configurar ambientes de execução, por exemplo, de preparação e de produção.
Para executar fluxos de trabalho no BigQuery, o Dataform compila o código do fluxo de trabalho SQL num resultado da compilação. Este processo ocorre automaticamente quando desenvolve um fluxo de trabalho num espaço de trabalho do Dataform.
As configurações de lançamento permitem-lhe personalizar os resultados da compilação. Pode usá-los para criar ambientes de execução, por exemplo, de preparação.
Definições de configuração de lançamento
Numa configuração de lançamento, pode configurar substituições de compilação das definições do fluxo de trabalho, definir variáveis de compilação e definir a frequência de criação de resultados de compilação.
Uma configuração de lançamento do Dataform contém as seguintes definições de compilação:
- Definições de lançamento
- O ID da versão, o commitish do Git para resultados de compilação e a frequência de criação de resultados de compilação. A frequência é uma definição opcional. Se estiver definida, a frequência mínima é de 1 hora.
- Substituições de compilação
- Substituições do Google Cloud projeto, prefixo da tabela, sufixo do esquema e variáveis de compilação definidas nas definições do fluxo de trabalho.
Como funciona uma configuração de lançamento
O Dataform cria resultados de compilação a partir de uma configuração de lançamento na frequência especificada ou quando aciona a compilação. A frequência é uma definição opcional e não é necessária para criar uma configuração de lançamento. Se for definido, a frequência mínima é de 1 hora. Pode
acionar manualmente a compilação na página Detalhes da configuração de lançamento
ou acionar a compilação com o método
Dataform API releaseConfigs
.
Durante a compilação, o Dataform extrai código do commitish do Git especificado do seu repositório. Em seguida, o Dataform compila o código com as substituições de compilação aplicadas (se existirem) e cria o resultado da compilação. O resultado da compilação mais recente criado para a configuração de lançamento é o resultado da compilação em direto.
Pode agendar execuções de resultados de compilação a partir de configurações de lançamento em configurações de fluxo de trabalho. Também pode executar uma configuração de lançamento selecionada fora de qualquer programação. Durante a execução de uma configuração do fluxo de trabalho, o Dataform executa o resultado da compilação em direto da configuração de lançamento selecionada.
Crie uma configuração de lançamento
Para criar uma configuração de lançamento do Dataform, siga estes passos:
- No repositório, aceda a Lançamentos e agendamento.
- Na secção Configurações de lançamento, clique em Criar.
No painel Criar configuração de lançamento, configure as definições de lançamento.
No campo ID da versão, introduza um ID exclusivo para a configuração de lançamento.
Os IDs só podem incluir números, letras, hífenes e sublinhados.
No campo Git commitish, introduza o ramo Git ou o SHA de confirmação do Git para o lançamento.
Num repositório do Dataform não associado a um repositório remoto, o valor é sempre
main
.Opcional: no campo Frequência, selecione a frequência de criação de resultados de compilação.
Se estiver definida, a frequência mínima é de 1 hora.
Para desativar os lançamentos automáticos, deixe o campo Frequência vazio.
Opcional: na secção Substituições de compilação, configure as definições de compilação.
- No campo ID do projeto do Google Cloud, introduza o ID do Google Cloud projeto no qual quer armazenar o resultado da compilação.
- No campo Sufixo do esquema, introduza um sufixo a anexar ao esquema configurado nas definições do fluxo de trabalho.
- No campo Prefixo da tabela, introduza um prefixo para todos os nomes das tabelas.
Opcional: na secção Variáveis de compilação, defina as variáveis de compilação.
- Clique em Adicionar variável.
- No campo Chave, introduza a variável de compilação.
- No campo Valor, introduza o valor da variável de compilação.
- Para adicionar outra variável de compilação, clique em Adicionar variável.
Clique em Criar.
Se substituir o projeto predefinido, certifique-se de que a sua conta de serviço do Dataform tem acesso ao projeto definido na configuração de lançamento.
Por exemplo, a seguinte configuração de lançamento cria um resultado de compilação a partir da ramificação main
a cada hora, sem substituições de compilação:production
- ID do lançamento:
production
- Git commitish:
main
- Frequência: de hora em hora
- Nenhuma substituição de compilação
Veja os detalhes de uma configuração de lançamento
Pode ver os seguintes detalhes de uma configuração de lançamento:
- Definições de lançamento
- Git commitish
- Data/hora do resultado da compilação mais recente
- Horário cron
- Substituições de compilação
- Variáveis de compilação
- Resultado de compilação em direto
- Data/hora de criação
- Git commitish
- SHA de consolidação
- Resultados de compilações anteriores
Para ver os detalhes de uma configuração de lançamento, siga estes passos:
- No repositório, aceda a Lançamentos e agendamento.
- Selecione uma configuração de lançamento.
- Na página Detalhes da configuração do lançamento, inspecione os detalhes da configuração do lançamento.
A tabela Resultados da compilação agendada apresenta os resultados da compilação anteriores criados automaticamente pela configuração de lançamento.
A tabela Resultados da compilação manual/API apresenta os resultados da compilação criados manualmente ou através de chamadas para a API Dataform a partir dos 1000 resultados de compilação mais recentes no repositório.
Acione a compilação manualmente
Para criar manualmente um resultado de compilação a partir de uma configuração de lançamento selecionada, siga estes passos:
- No repositório, aceda a Lançamentos e agendamento.
- Selecione uma configuração de lançamento.
- Na página Detalhes da configuração do lançamento, clique em Nova compilação.
Se estiver a usar a IU, um resultado recém-compilado é publicado automaticamente para a configuração de lançamento. Se estiver a usar a API, tem de criar um novo resultado da compilação a partir da configuração de lançamento e, em seguida, atualizar a configuração de lançamento para definir o campo releaseCompilationResult
com este novo valor.
Os resultados da compilação manual são apresentados na tabela Resultados da compilação manual/API na página Detalhes da configuração de lançamento.
Acione a execução de uma configuração de lançamento
Para acionar a execução do resultado da compilação em direto numa configuração de lançamento selecionada para o BigQuery, siga estes passos:
- No repositório, aceda a Lançamentos e agendamento.
- Na secção Configurações de lançamento, clique em Iniciar execução.
- No painel Executar fluxo de trabalho manual, na lista Configuração de lançamento, selecione uma configuração de lançamento.
- Selecione as ações do fluxo de trabalho a executar:
- Para executar todo o fluxo de trabalho, clique em Todas as ações.
- Para executar ações selecionadas no fluxo de trabalho, clique em Seleção de ações e, de seguida, selecione as ações.
- Para executar ações com etiquetas selecionadas, clique em Seleção de etiquetas e, de seguida, selecione etiquetas.
- Opcional: para executar ações ou etiquetas selecionadas e as respetivas dependências, selecione a opção Incluir dependências.
- Opcional: para executar ações ou etiquetas selecionadas e os respetivos dependentes, selecione a opção Incluir dependentes.
Opcional: para reconstruir todas as tabelas de raiz, selecione a opção Executar com atualização completa.
Sem esta opção, o Dataform atualiza as tabelas incrementais sem as reconstruir de raiz.
Clique em Iniciar execução.
Edite uma configuração de lançamento
Para editar uma configuração de lançamento, siga estes passos:
- No repositório, aceda a Lançamentos e agendamento.
- Na configuração de lançamento que quer editar, clique no menu Mais e, de seguida, em Editar.
- No painel Editar configuração de lançamento, edite as definições de configuração de lançamento e, de seguida, clique em Guardar.
Elimine uma configuração de lançamento
Para eliminar uma configuração de lançamento, siga estes passos:
- No repositório, aceda a Lançamentos e agendamento.
- Na configuração de lançamento que quer eliminar, clique no menu Mais e, de seguida, em Eliminar.
- Na caixa de diálogo Eliminar configuração de lançamento, clique em Eliminar.
O que se segue?
- Para saber mais sobre as práticas recomendadas para o ciclo de vida do fluxo de trabalho no Dataform, consulte o artigo Práticas recomendadas para o ciclo de vida do fluxo de trabalho.
- Para saber como acionar manualmente a execução num espaço de trabalho, consulte o artigo Acionar execução.
- Para saber como criar configurações de fluxo de trabalho, consulte o artigo Agende execuções com configurações de fluxo de trabalho.
- Para saber mais sobre a API Dataform, consulte o artigo API Dataform.