Criar substituições de compilação do espaço de trabalho

Neste documento, mostramos como criar substituições de compilação do espaço de trabalho para isolar tabelas e visualizações criadas com base nos espaços de trabalho do Dataform no BigQuery. É possível usar substituições de compilação do 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 o código do fluxo de trabalho SQL em um espaço de trabalho do Dataform, o Dataform compila o código no 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 dataform.json para criar o resultado de compilação do espaço de trabalho. Depois, quando você aciona a execução em um espaço de trabalho, o Dataform executa o resultado de compilação do espaço de trabalho no BigQuery.

Para substituir as configurações padrão definidas em dataform.json para todos os espaços de trabalho no seu 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 modificar as configurações a seguir para todos os espaços de trabalho no seu repositório:

Projeto
Projeto do Google Cloud em que o Dataform executa o resultado da compilação do espaço de trabalho, definido em dataform.json como defaultDatabase.
Prefixo da tabela
Prefixo personalizado adicionado a todos os nomes de tabelas em todos os espaços de trabalho no repositório.
Sufixo do esquema
Sufixo personalizado anexado ao esquema de tabelas definidas em defaultSchema em dataform.json ou no parâmetro schema no bloco config de uma tabela.

Para criar ambientes de desenvolvimento isolados, você pode isolar os espaços de trabalho com substituições de compilação únicas. É 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 nas modificaçõ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 nele. Após a execução, no BigQuery, é possível identificar em qual espaço de trabalho uma tabela se origina.

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 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 a seguir mostra as substituições de compilação dos espaços de trabalho dinâmicos aplicadas a um repositório que contém espaços de trabalho nomeados pelos desenvolvedores que trabalham nele: Sasha e Kai.

Neste exemplo, o objetivo das substituições de compilação do espaço de trabalho é criar ambientes de desenvolvimento isolados para Sasha e Kai.

As seguintes configurações padrão são definidas no dataform.json:

  • defaultDatabase : analytics
  • defaultSchema: dataform

As seguintes substituições de compilação do espaço de trabalho criam um prefixo de tabela dinâmica e um sufixo de 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 Sasha aciona manualmente a execução no espaço de trabalho Sasha, o Dataform executa o conteúdo com as seguintes configurações:

  • Projeto do Google Cloud: analytics_dev
  • schema: dataform_sasha.
  • de tabelas: sasha_name, por exemplo, sasha_orders.

Quando o Kai aciona manualmente a execução no espaço de trabalho Kai, o Dataform executa o conteúdo com as seguintes configurações:

  • Projeto do Google Cloud: analytics_dev
  • schema: dataform_kai.
  • nomes de tabelas: kai_name, por exemplo, kai_orders

Antes de começar

  1. No console do Google Cloud, acesse a página Dataform.

    Acessar a página do Dataform

  2. Selecione ou crie um repositório.

  3. Opcional: para substituir o projeto padrão do Google Cloud, conceda à sua conta de serviço do Dataform acesso ao projeto do Google Cloud que você quer 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 como conceder papéis, consulte Gerenciar acesso.

Talvez você também consiga receber as permissões necessárias por meio de papéis personalizados ou 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:

  1. No seu repositório, acesse Configurações.
  2. Clique em Editar.
  3. No painel Substituições de compilação do espaço de trabalho, no campo ID do projeto do Google Cloud, insira o ID do projeto.
  4. No campo Prefixo da tabela, insira um prefixo para todos os nomes de tabela.
    1. Opcional: para criar um prefixo de tabela dinâmica exclusivo para cada espaço de trabalho, digite ${workspaceName} como o prefixo da tabela.
  5. No campo Sufixo do esquema, insira um sufixo para anexar ao esquema da tabela ou visualização criada.
    1. Opcional: para criar um sufixo de esquema dinâmico exclusivo para cada espaço de trabalho, digite ${workspaceName} como o sufixo da tabela.
  6. Clique em Save.

O Dataform aplica substituições de compilação de espaço de trabalho a todos os espaços de trabalho em 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:

  1. No seu repositório, acesse Configurações.
  2. Clique em Editar.
  3. 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:

  1. No seu repositório, acesse Configurações.
  2. Clique em Editar.
  3. No painel Substituições de compilação do espaço de trabalho, clique em Limpar tudo e em Salvar.

A seguir