Nota técnica
Nota
plataforma
Data Health Dashboard: confiabilidade do próprio dado
Painel meta-nível que mede null rate, duplicação, atraso de ingestão e inconsistências — responde se o sistema de dados é confiável antes de confiar nos KPIs.
6 min de leitura media planejamento
Stack: Great Expectations ou regras próprias Airflow SQL Grafana ou Streamlit
Visão geral
Camada de observabilidade de dados: métricas sobre as próprias tabelas e pipelines (freshness, completude, unicidade, consistência referencial). Objetivo: responder “posso confiar neste número hoje?” antes de apresentar KPI ao negócio.
Problema
- Dashboards de negócio quebram silenciosamente quando o pipeline atrasa ou um campo vira NULL em massa.
- Times descobrem problema depois da reunião executiva.
- Não há SLA de dado explícito, só SLA de aplicação.
Métricas centrais
| Família | Exemplos |
|---|---|
| Completude | % null em colunas críticas; contagens vs baseline |
| Unicidade | Duplicatas por chave de negócio |
| Freshness | max(event_time) vs agora; atraso de partição |
| Consistência | Somas que não fecham entre camadas (Bronze vs Gold) |
| Volume | Queda súbita de linhas (possível falha de ingestão) |
Diferencial
- Transparência: mostrar o health ao lado do KPI operacional (“SLA 94% — dados com atraso de 2h na camada Gold”).
- Priorização: score de saúde por domínio (pedidos, pagamentos, usuários).
Implementação
- Catálogo de assets (tabela/partição) com owner.
- Conjunto de checks versionados (YAML ou GE).
- Resultados em
data_quality_runscom histórico. - UI: semáforo verde/amarelo/vermelho + drill-down na falha.
Integração com o case delivery
Rodar checks após src.pipeline.run: contagens por camada, integridade de FKs simuladas, janela de tempo dos eventos.
MVP
- 10 checks nas tabelas Gold mais usadas.
- Um gráfico de atraso de pipeline nos últimos 14 dias.
- Alerta quando qualquer check crítico falhar.
Riscos
- Alarm fatigue — poucos checks “P0”, o resto informativo.
- Custo de armazenar histórico — amostragem ou retenção 90 dias.
Próximo passo
Listar 5 colunas P0 no projeto atual e definir null rate máximo aceitável.