Visão geral das práticas recomendadas no Dataform

Este documento mostra uma visão geral das práticas recomendadas para gerenciar o tamanho do repositório, estrutura do repositório e ciclo de vida do código no Dataform.

Práticas recomendadas para o tamanho do repositório

O tamanho do repositório afeta vários aspectos do desenvolvimento no Dataform. como:

  • Colaboração
  • Legibilidade da base de código
  • Processos de desenvolvimento
  • Compilação do fluxo de trabalho
  • Execução do fluxo de trabalho

O Dataform aplica Cotas e limites de API em recursos de compilação. Um repositório grande pode fazer com que ele exceda essas cotas e limites. Isso pode causar falhas na compilação e execução do no fluxo de trabalho do SQL.

Para reduzir esse risco, recomendamos dividir repositórios grandes. Ao dividir um repositório grande, você divide um fluxo de trabalho SQL grande em um de fluxos de trabalho SQL menores, armazenados em diferentes repositórios e conectados por dependências entre repositórios.

Essa abordagem permite aderir às cotas e limites do Dataform com precisão e permissões, além de melhorar a legibilidade e a colaboração da base de código. No entanto, gerenciar repositórios divididos pode ser mais desafiador do que gerenciar um repositório único.

Para saber mais sobre o impacto do tamanho do repositório no Dataform e práticas recomendadas para dividir repositórios, consulte Como dividir repositórios.

Práticas recomendadas para estrutura de repositório

Recomendamos estruturar arquivos no diretório definitions para refletir o etapas do seu fluxo de trabalho. Lembre-se de que é possível adotar uma estrutura personalizada que atenda melhor às suas necessidades.

A estrutura recomendada de subdiretórios definitions a seguir reflete os principais estágios da maioria dos fluxos de trabalho SQL:

  • sources, armazenando declarações de fonte de dados
  • intermediate, armazenando lógica de transformação de dados
  • output, armazenando definições de tabelas de saída
  • Opcional: extras, armazenando mais arquivos

Os nomes de todos os arquivos no Dataform precisam estar em conformidade com o BigQuery diretrizes de nomenclatura de tabelas. Recomendamos que os nomes dos arquivos na O diretório definitions em um repositório do Dataform reflete o de subdiretórios.

Para saber mais sobre as práticas recomendadas para estruturar e nomear arquivos em um repositório, consulte Como estruturar o código em um repositório.

Práticas recomendadas para o ciclo de vida do código

O ciclo de vida do código padrão no Dataform consiste nas seguintes fases:

Para gerenciar o ciclo de vida do código no Dataform, você pode criar ambientes de desenvolvimento, por exemplo, desenvolvimento, preparo e produção.

Para saber mais sobre o ciclo de vida do código no Dataform, consulte Introdução ao ciclo de vida do código no Dataform.

É possível manter seus ambientes de execução em um único repositório, ou em vários repositórios.

Ambientes de execução em um único repositório

É possível criar ambientes de execução isolados como desenvolvimento, preparo e produção, em um único repositório do Dataform com substituições de compilação do espaço de trabalho e as configurações de lançamento.

É possível criar ambientes de execução isolados das seguintes maneiras:

  • Dividir tabelas de desenvolvimento e produção por esquema
  • Dividir tabelas de desenvolvimento e produção por esquema e projeto do Google Cloud
  • Dividir tabelas de desenvolvimento, preparo e produção por projeto do Google Cloud

Depois, você pode programar execuções em ambientes de preparação e produção com configurações de fluxo de trabalho. Recomendamos acionar execuções manualmente no ambiente de desenvolvimento.

Para saber mais sobre as práticas recomendadas para gerenciar o ciclo de vida do código em o Dataform, consulte Como gerenciar o ciclo de vida do código.

Ciclo de vida do código em vários repositórios

Para adaptar as permissões do Identity and Access Management a cada estágio do ciclo de vida do código, é possível criar várias cópias de um repositório e armazená-las em diferentes nos projetos do Google Cloud.

Cada projeto do Google Cloud serve como um ambiente de execução que corresponda a uma etapa do ciclo de vida do código, por exemplo, desenvolvimento e produção.

Nessa abordagem, recomendamos manter a base de código do repositório em todos os projetos do Google Cloud. Para personalizar a compilação e a execução cada cópia do repositório, use substituições de compilação do espaço de trabalho, configurações de lançamento configurações de fluxo de trabalho.

A seguir