Esta página mostra como fazer o seguinte:
- Defina uma instrução SQL a ser executada antes da criação da tabela.
- Defina uma instrução SQL a ser executada após a criação da tabela.
- Desativar a criação de tabelas.
- Adicione tags de execução.
Antes de começar
No Google Cloud console, acesse a página Dataform.
Selecione ou crie um repositório.
Selecione ou crie um espaço de trabalho de desenvolvimento.
Defina um arquivo SQLX de qualquer 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
Editor do Dataform (roles/dataform.editor
)
do IAM 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 por meio de papéis personalizados ou de outros papéis predefinidos.
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 da tabela.
Para criar uma instrução SQL personalizada que é executada antes de o Dataform criar 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 criar uma tabela selecionada, adicione a instrução ao
bloco post_operations
no arquivo SQLX de definição da 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 aos grupos
acesso à 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 de definição de tabela SQLX. 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 de definição de tabela SQLX.
- No bloco
config
do arquivo, digitedisabled: 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
Nesta seção, mostramos como adicionar tags aos arquivos SQLX do Dataform Core para categorizar seu fluxo de trabalho.
Para organizar os componentes do fluxo de trabalho em coleções, adicione tags personalizadas a arquivos SQLX dos seguintes tipos:
table
view
incremental
assertion
operations
Durante a execução de um fluxo de trabalho, é possível executar apenas arquivos com uma tag selecionada.
Com o Cloud Composer ou os Workflows com o Cloud Scheduler, é possível criar uma programação que execute 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_TAG
pela 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 opções do Dataform em
workflow_settings.yaml
, consulte Configurar as opções do fluxo de trabalho do Dataform. - Para saber como testar dados de tabela com declarações, consulte Testar a qualidade dos dados.
- Para saber como reutilizar código com inclusões, consulte Reutilizar 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.