Ir para o conteúdo
Automatizav1
SRV-03 · ANALYTICS ENGINEERING

Modelagem, testes e documentação como código

Analytics engineering é disciplina de engenharia. Tudo versionado, revisado, testado.

APPROACH

Abordagem

Trabalhamos no stack moderno: dbt para transformação, um orquestrador (Airflow ou Dagster), testes no CI e um glossário de métricas tratado como documentação viva. Cada pull request tem preview e plan de impacto.

Camadas claras: staging isola fontes, intermediate cria blocos reutilizáveis, marts exporta modelos prontos para BI e reverse-ETL.

Revisão de código obrigatória. Nenhum modelo cresce sem owner e sem teste.

Documentação gerada a partir do código, não escrita à parte: se o modelo muda, o doc muda.

TESTS · DOCS

Testes & documentação

  • T-01Schema tests (unique, not_null, relationships) em toda tabela crítica
  • T-02Contract tests nos marts: breaking changes param o CI
  • T-03Freshness tests por SLA de tabela
  • T-04Docs geradas via dbt-docs com lineage completo
  • T-05Exposure tracking: cada dashboard linkado ao modelo que o alimenta
EXAMPLE · MART

How a mart actually looks

A typical revenue mart with an enforced contract, a 2-day late-arrival window, and an incremental key. Every PR runs the contract test; a breaking change fails CI.

fct_revenue.sqlSQL
0
{{
  config(
    materialized = 1,
    unique_key   = 2,
    on_schema_change = 3,
    contract     = { 4: true }
  )
}}

WITH paid AS (
  SELECT
    date_trunc(5, order_ts) AS period,
    customer_id,
    SUM(amount_cents) / 100.0   AS revenue_usd
  FROM {{ ref(6) }}
  WHERE status = 7
  {% if is_incremental() %}
    AND order_ts >= (SELECT max(period) - interval 8 FROM {{ this }})
  {% endif %}
  GROUP BY 1, 2
)

SELECT
  period,
  COUNT(DISTINCT customer_id) AS customers,
  SUM(revenue_usd)            AS revenue_usd
FROM paid
GROUP BY period;
GLOSSARY · EXAMPLE

Glossário de métricas

Cada projeto começa com um glossário acordado. Mantemos um exemplo público para você ver o formato.

Abrir glossário

Conecte um pipeline real ao seu warehouse

Revisão de stack de 30 min. Voltamos com escopo, owner e contrato de frescor. Sem SDR, sem deck.