Este documento mostra como criar substituições de compilação de espaços de trabalho para isolar tabelas e visualizações criadas nos espaços de trabalho do Dataform no BigQuery. É possível usar substituições de compilação de espaço de trabalho para criar ambientes de desenvolvimento isolados do Dataform.
Sobre as substituições de compilação do espaço de trabalho
Quando você desenvolve um código de fluxo de trabalho SQL em um espaço de trabalho do Dataform, ele compila o código no seu espaço de trabalho em tempo real para criar um resultado de compilação do espaço de trabalho. O Dataform usa as configurações definidas no arquivo de configurações do fluxo de trabalho para criar o resultado da compilação do espaço de trabalho. Em seguida, quando você aciona a execução em um espaço de trabalho, o Dataform executa o resultado da compilação do espaço de trabalho no BigQuery.
Para substituir as configurações padrão definidas nas configurações do fluxo de trabalho para todos os espaços de trabalho no repositório, crie substituições de compilação do espaço de trabalho.
Com as substituições de compilação do espaço de trabalho, é possível substituir as seguintes configurações para todos os espaços de trabalho no repositório:
- Projeto Projeto
- Google Cloud em que 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
- Prefixo personalizado adicionado a todos os nomes de tabela em todos os espaços de trabalho no repositório.
- Sufixo do esquema
Sufixo personalizado anexado ao esquema de tabelas definido em
Defina como
defaultDataset
emworkflow_settings.yaml
,defaultSchema
emdataform.json
ou no parâmetroschema
no blococonfig
de uma tabela.
Para criar ambientes de desenvolvimento isolados, é possível isolar espaços de trabalho com
substituições de compilação exclusivas. É possível modificar dinamicamente as substituições de compilação do prefixo da tabela e
do sufixo do esquema com a variável ${workspaceName}
.
Quando você aciona manualmente a execução em um 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 você 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, é possível identificar de qual espaço de trabalho uma tabela é originada.
Quando você 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, é possível localizar todas as tabelas executadas em um espaço de trabalho específico no esquema dedicado.
Exemplo de substituições de compilação de espaço de trabalho dinâmico
O exemplo a seguir mostra substituições de compilação de espaço de trabalho dinâmico aplicadas a um
repositório que contém espaços de trabalho com o nome de desenvolvedores 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 Sasha e Kai.
As seguintes configurações padrão são definidas em workflow_settings.yaml
:
defaultProject
:analytics
defaultDataset
:dataform
As substituições de compilação de espaço de trabalho a seguir criam um prefixo de tabela dinâmico e um sufixo de esquema para cada espaço de trabalho no repositório:
- Google Cloud ID do projeto :
analytics_dev
- Prefixo da tabela:
${workspaceName}
- Sufixo do esquema:
${workspaceName}
Quando Sasha aciona manualmente a execução no espaço de trabalho Sasha
,
o Dataform executa o conteúdo com as seguintes configurações:
- Google Cloud project:
analytics_dev
- schema:
dataform_sasha
. - nomes de tabelas:
sasha_name
, por exemplo,sasha_orders
.
Quando Kai aciona manualmente a execução no espaço de trabalho Kai
, o Dataform
executa o conteúdo com as seguintes configurações:
- Google Cloud project:
analytics_dev
- schema:
dataform_kai
. - Nomes de tabelas:
kai_name
, por exemplo,kai_orders
Antes de começar
No Console do Google Cloud, acesse a página Dataform.
Selecione ou crie um repositório.
Opcional: para substituir o projeto Google Cloud padrão, conceda à sua conta de serviço do Dataform acesso ao projeto Google Cloud que você planeja usar.
Funções exigidas
Para receber as permissões necessárias para criar substituições de compilação do espaço de trabalho,
peça ao administrador para conceder a você o
papel do IAM de Administrador do Dataform (roles/dataform.admin
) nos repositórios.
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.
Criar 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 estas etapas:
- No repositório, acesse Configurações.
- Clique em Editar.
- No painel Substituições de compilação do espaço de trabalho, no campo ID do projetoGoogle Cloud , insira o ID do projeto Google Cloud .
- No campo Prefixo da tabela, insira um prefixo para todos os nomes de tabela.
- Opcional: para criar um prefixo de tabela dinâmica exclusivo para cada espaço de trabalho, insira
${workspaceName}
como o prefixo da tabela.
- Opcional: para criar um prefixo de tabela dinâmica exclusivo para cada espaço de trabalho, insira
- No campo Sufixo do esquema, insira um sufixo para anexar ao esquema da tabela ou visualização criada.
- Opcional: para criar um sufixo de esquema dinâmico exclusivo para cada espaço de trabalho, insira
${workspaceName}
como o sufixo da tabela.
- Opcional: para criar um sufixo de esquema dinâmico exclusivo para cada espaço de trabalho, insira
- Clique em Salvar.
O Dataform aplica substituições de compilação do espaço de trabalho a todos os espaços de trabalho no seu repositório.
Editar 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 estas etapas:
- No repositório, acesse Configurações.
- Clique em Editar.
- Edite as substituições de compilação do espaço de trabalho e clique em Salvar.
Excluir substituições de compilação do espaço de trabalho
Para excluir substituições de compilação do espaço de trabalho do Dataform, siga estas etapas:
- No repositório, acesse Configurações.
- Clique em Editar.
- No painel Substituições de compilação do espaço de trabalho, clique em Limpar tudo e em Salvar.
A seguir
- Para saber como acionar a execução manualmente, consulte Acionar a execução.