Nota técnica
Saúde do dado antes do KPI
Freshness, null rate e unicidade — para não apresentar número com pipeline atrasado.
- SQL
- Python
01 — Problema
O dashboard de negócio quebra em silêncio quando a ingestão atrasa ou um campo vira NULL em massa.
02 — Hipótese
Métricas sobre o próprio pipeline (não só sobre o KPI) permitem recusar o número antes da reunião.
03 — Implementação
Checks de completude, unicidade, freshness e volume, com histórico — desenho alinhado ao Delivery Audit.
04 — Resultado
O operador vê o SLA operacional ao lado do estado do dado (atraso, falha de check).
05 — Aprendizado
Poucos checks P0. O resto é ruído — alarm fatigue mata observabilidade.
Qualidade no Delivery Audit materializa falha como flag. Observabilidade de pipeline é o passo seguinte: o dado de hoje é confiável?
Problema
KPI de SLA a 94% com Gold atrasado duas horas não é insight — é risco. Sem freshness e null rate, o time descobre o problema depois da reunião.
Hipótese
Famílias mínimas:
| Família | Exemplo |
|---|---|
| Completude | % null em colunas P0 |
| Unicidade | duplicatas por order_id |
| Freshness | max(event_time) vs agora |
| Volume | queda súbita de linhas vs baseline |
| Consistência | contagem Bronze vs Gold |
Implementação
- Catálogo de tabelas com owner.
- Checks versionados no mesmo repo do pipeline.
- Tabela
data_quality_runs(quando, o que, passou/falhou). - Alerta só em check P0.
No delivery: rodar depois da carga — contagem por camada, sequência de eventos, janela temporal.
O painel dedicado ainda é evolução. As flags de auditoria já respondem “onde a operação quebrou”. Health responde “posso olhar o KPI agora?”.
Resultado
Dois sinais distintos: saúde do pipeline e métrica de negócio. Misturá-los no mesmo card esconde atraso.
Aprendizado
Cinco colunas P0 com limiar explícito valem mais que trinta checks que ninguém vê.