Bloco de Configuração do Modelo

Todo arquivo YAML de modelo deve conter uma descrição e um bloco de configuração:
models:
  - name: nome_do_modelo
    description: "Descrição da tabela"
    config:
      alias: nome_do_modelo
      schema: camada  # raw, intermediate, marts
      materialized: view  # para modelos raw

Notação para Campos Estruturados (Structs)

  • Use notação ponto para campos aninhados:
    • Correto: struct.campo, struct.nested.campo
    • Incorreto: definir subcampos como colunas separadas

Atributos Obrigatórios de Campo

Cada campo deve conter:
  • name: nome do campo
  • description: descrição clara em português
  • data_type: tipo de dado (string, integer, date, timestamp, boolean)
  • quote: true para campos string

Padrões de Testes

  • Nome dos testes deve seguir o padrão definido em Padrões de Testes dbt
  • Exemplos de testes para chaves primárias, estrangeiras e qualidade de dados

Organização dos Arquivos

  • Um arquivo YAML por modelo
  • Arquivo YAML ao lado do SQL correspondente
  • Nome do arquivo: {model}.yml

Documentação

  • Todas as descrições devem estar em português brasileiro
  • Incluir propósito, contexto de negócio, valores válidos e referência do sistema de origem

Referências