Esta página mostra como fazer o seguinte:
- Defina uma instrução SQL para ser executada antes da criação da tabela.
- Defina uma instrução SQL para 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 que conceda a você o papel do IAM
Editor de formulário de dados (roles/dataform.editor
)
no Workspaces.
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 de tabela.
Para criar uma instrução SQL personalizada executada antes que o Dataform crie uma tabela específica, siga estas etapas:
- Acesse seu espaço de trabalho de desenvolvimento.
- No painel Files, abra
definitions/
. - Abra um arquivo de definição de tabela SQLX.
- Fora do bloco
config
, digitepre_operations { ... }
. - Em
pre_operations { ... }
, adicione sua instrução SQL. - Opcional: para adicionar várias instruções, separe-as com
---
. - Opcional: clique em Formato.
O exemplo de código abaixo 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 para 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 de tabela. É possível adicionar
várias instruções SQL ao bloco post_operations
.
Para criar uma instrução SQL personalizada executada depois que o Dataform cria uma tabela específica, siga estas etapas:
- Acesse seu espaço de trabalho de desenvolvimento.
- No painel Files, abra
definitions/
. - Abra um arquivo de definição de tabela SQLX.
- Fora do bloco
config
, digitepost_operations { ... }
. - Em
post_operations { ... }
, adicione sua instrução SQL. - Opcional: clique em Formato.
O exemplo de código a seguir mostra instruções post_operations
que concedem acesso
a 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 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 seu espaço de trabalho de desenvolvimento.
- No painel Files, abra
definitions/
. - Selecione um arquivo de definição de tabela SQLX.
- No bloco
config
do arquivo, digitedisabled: true
. - Opcional: clique em Formato.
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 a arquivos SQLX do núcleo do Dataform 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 do fluxo de trabalho, é possível executar apenas arquivos com uma tag selecionada.
Com o Cloud Composer ou o 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 seu espaço de trabalho de desenvolvimento.
- No painel Files, abra
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 Formato.
O exemplo de código abaixo 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 configurações do Dataform em
workflow_settings.yaml
, consulte Configurar as configurações do fluxo de trabalho do Dataform. - Para saber como testar dados de tabelas com declarações, consulte Testar tabelas com declarações.
- 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ção.
- Para saber como adicionar tags de política do BigQuery no Dataform, consulte Adicionar tags de política do BigQuery.