Esta página mostra como fazer o seguinte:
- Definir uma instrução SQL a ser executada antes da criação da tabela.
- Definir uma instrução SQL a ser executada após a criação da tabela.
- Desativar a criação de tabelas.
- Adicionar tags de execução.
Antes de começar
Noconsole, acesse a página Dataform. Google Cloud
Selecione ou crie um repositório.
Selecione ou crie um espaço de trabalho de desenvolvimento.
Defina um arquivo SQLX de um dos seguintes tipos:
Funções exigidas
Para receber as permissões necessárias para concluir as tarefas neste documento, peça ao administrador para conceder a você o papel do IAM Editor do Dataform (roles/dataform.editor) em espaços de trabalho.
Para mais informações sobre a concessão de papéis, consulte Gerenciar o acesso a projetos, pastas e organizações.
Também é possível conseguir as permissões necessárias usando personalizados papéis ou outros predefinidos papéis.
Definir uma instrução SQL a ser executada antes da criação da tabela
É possível configurar o Dataform para executar uma ou mais instruções SQL antes de criar uma tabela selecionada no BigQuery. Para executar uma instrução SQL antes que o Dataform crie uma tabela selecionada, adicione a instrução ao bloco pre_operations no arquivo SQLX de definição de tabela.
Para criar uma instrução SQL personalizada que é executada antes que o Dataform crie uma tabela específica, siga estas etapas:
- Acesse o espaço de trabalho de desenvolvimento.
- No painel Arquivos, expanda
definitions/. - Abra um arquivo de definição de tabela SQLX.
- Fora do bloco
config, insirapre_operations { ... }. - Em
pre_operations { ... }, adicione sua instrução SQL. - Opcional: para adicionar várias instruções, separe-as com
---. - Opcional: clique em Formatar.
O exemplo de código a seguir mostra uma instrução pre_operations que cria uma função temporária que pode ser usada na instrução select:
pre_operations {
CREATE TEMP FUNCTION AddFourAndDivide(x INT64, y INT64)
RETURNS FLOAT64
AS ((x + 4) / y);
}
Definir uma instrução SQL a ser executada após a criação da tabela
É possível configurar o Dataform para executar uma ou mais instruções SQL depois de criar uma tabela selecionada no BigQuery. Para executar uma instrução SQL depois que o Dataform cria uma tabela selecionada, adicione a instrução ao bloco post_operations no arquivo SQLX de definição de tabela. É possível adicionar várias instruções SQL ao bloco post_operations.
Para criar uma instrução SQL personalizada que é executada depois que o Dataform cria uma tabela específica, siga estas etapas:
- Acesse o espaço de trabalho de desenvolvimento.
- No painel Arquivos, expanda
definitions/. - Abra um arquivo de definição de tabela SQLX.
- Fora do bloco
config, insirapost_operations { ... }. - Em
post_operations { ... }, adicione sua instrução SQL. - Opcional: clique em Formatar.
O exemplo de código a seguir mostra instruções post_operations que concedem acesso de grupos à tabela criada:
post_operations {
GRANT `roles/bigquery.dataViewer`
ON
TABLE ${self()}
TO "group:allusers@example.com", "user:otheruser@example.com"
}
Desativar a criação de tabelas
Para impedir que o Dataform crie uma tabela selecionada no BigQuery, desative a tabela no arquivo SQLX de definição de tabela. O Dataform mantém uma tabela desativada no gráfico de dependência, mas não a compila nem a cria. Isso pode ser útil, por exemplo, se uma tabela falhar e você não quiser que todo o fluxo de trabalho falhe enquanto corrige o problema.
Para desativar uma tabela, siga estas etapas:
- Acesse o espaço de trabalho de desenvolvimento.
- No painel Arquivos, expanda
definitions/. - Selecione um arquivo SQLX de definição de tabela.
- No bloco
configdo arquivo, insiradisabled: true. - Opcional: clique em Formatar.
O exemplo de código a seguir mostra uma tabela desativada:
config {
type: "table",
disabled: true
}
select * from ${ref("source_data")}
Adicionar tags de execução
Esta seção mostra como adicionar tags aos arquivos SQLX principais do Dataform para categorizar o fluxo de trabalho.
Para organizar os componentes do fluxo de trabalho em coleções, adicione tags personalizadas a arquivos SQLX dos seguintes tipos:
tableviewincrementalassertionoperations
Durante uma execução de fluxo de trabalho, é possível executar apenas arquivos com uma tag selecionada.
Com o Serviço Gerenciado para Apache Airflow ou Workflows junto com o Cloud Scheduler, é possível criar uma programação que executa um fluxo de trabalho do Dataform com uma tag selecionada em um intervalo específico.
Adicionar uma tag
É possível adicionar várias tags a um arquivo SQLX.
Para adicionar uma tag a um arquivo SQLX, siga estas etapas:
- Acesse o espaço de trabalho de desenvolvimento.
- No painel Arquivos, expanda
definitions/. - Selecione um arquivo SQLX.
No bloco
config, adicione uma tag no seguinte formato:tags: ["CUSTOM_TAG"]Substitua
CUSTOM_TAGpela sua tag.Opcional: para adicionar várias tags, separe-as com uma vírgula (
,).Opcional: clique em Formatar.
O exemplo de código a seguir mostra a visualização user_counts com as tags daily e hourly:
config {
type: "view",
name: "user_counts",
tags: ["daily", "hourly"]
}
A seguir
- Para saber como configurar as definições do Dataform em
workflow_settings.yaml, consulte Configurar as definições do fluxo de trabalho do Dataform. - Para saber como testar dados de tabelas com declarações, consulte Testar a qualidade de dados.
- Para saber como reutilizar o código com inclusões, consulte Reutilizar o código em um único repositório com inclusões.
- Para saber como acionar execuções manualmente, consulte Acionar execuções manualmente.
- Para saber como adicionar tags de política do BigQuery no Dataform, consulte Controlar o acesso a colunas.