Qualidade de dados · tema 18 de 30
Qualidade de dados
30 min · 2 vídeos · 13 cards · 2 drill
Por que cai
Toda banca de engenharia de dados pergunta como você garante qualidade, porque é onde se separa quem escreve pipeline de quem opera pipeline em produção. Em banco, dado ruim vira número errado para o regulador, e o entrevistador quer ouvir teste, limiar e decisão de falha.
Pré-teste · 1 de 2
responda antes de verO pipeline diário de transações de cartão carregou 12 milhões de linhas ontem e 400 mil hoje, sem erro de execução. Qual dimensão de qualidade isso viola primeiro?
Vídeo · português · 16 min
Em uma frase
Qualidade de dados é o quanto o dado serve para a decisão que ele sustenta, medida por dimensões objetivas e defendida por testes automáticos que têm limiar e ação declarados.
As dimensões, com exemplo e com medição
Recitar as dimensões não vale ponto. O que vale é dizer como se mede cada uma. Guarde a tabela abaixo com as duas colunas juntas.
| Dimensão | Exemplo no banco | Como se mede |
|---|---|---|
| Acurácia | O endereço do cliente no cadastro não é o endereço real | Amostra confrontada com a fonte da verdade; taxa de divergência |
| Completude | 12% dos cadastros sem data de nascimento | Percentual de nulos em campo obrigatório e volume recebido contra o esperado |
| Consistência | Total de PIX do dia não bate com o core bancário | Reconciliação do mesmo indicador entre duas fontes ou camadas |
| Unicidade | A mesma autorização de cartão gravada três vezes | COUNT(*) contra COUNT(DISTINCT chave de negócio) |
| Atualidade | Tabela de ontem só pronta às 14h; fraude precisa às 7h | Latência do evento até a disponibilidade, contra o prazo do SLA |
| Validade | Valor de transação negativo, moeda fora da lista | Teste de formato, tipo e domínio por campo |
Testes automatizados no pipeline
O teste vira código junto do pipeline e roda toda execução. As famílias que cobrem quase tudo:
- 1Volume: linhas do lote dentro de uma banda em relação à média histórica da mesma janela e do mesmo dia da semana.
- 2Nulos: percentual máximo tolerado por coluna, com limiar mais rígido em campo chave.
- 3Domínio: valores permitidos por coluna categórica, e faixas para numéricas — valor de transação não negativo.
- 4Unicidade: chave de negócio sem repetição, tipicamente id da autorização com a data.
- 5Integridade referencial: toda transação aponta para uma conta que existe na dimensão.
- 6Reconciliação: total agregado confrontado com a fonte da verdade do core.
No stack de AWS e Databricks isso aparece como regras de DQDL no Glue Data Quality ou como expectativas declaradas no pipeline do Databricks, que já oferecem os três comportamentos nativos: avisar, descartar a linha ou falhar a atualização.
O que fazer quando um teste falha
Aqui é onde a banca aperta. Três ações possíveis, e o critério é impacto do erro contra custo do atraso:
| Ação | Quando usar | Exemplo |
|---|---|---|
| Falhar o pipeline | Falha sistêmica, ou dado regulatório e financeiro em que publicar errado é pior que atrasar | Volume caiu 96%; reconciliação regulatória não fecha |
| Quarentena | Falha localizada e pequena, resto do lote confiável, SLA precisa ser mantido | 30 transações órfãs em 12 milhões vão para uma tabela de rejeitados |
| Alertar e seguir | Coluna secundária, provável evolução legítima do domínio | Valor novo numa coluna descritiva opcional |
SLA, SLO e monitoramento
SLO de dados— Meta interna e mensurável sobre um dado: por exemplo, a tabela de transações fica pronta até 6h em 99% dos dias úteis.SLA é o compromisso acordado com o consumidor e tem consequência quando é rompido. Sem SLA não existe critério para decidir entre atrasar e publicar — a decisão vira gosto pessoal, e é isso que o entrevistador quer ver você evitar.
Limiar fixo pega o erro grosseiro. O que pega o sutil é detecção de anomalia: comparar a métrica do dia com a distribuição histórica, considerando sazonalidade. Volume de PIX numa segunda-feira não se compara com o de um domingo, e um teste ingênuo alerta todo fim de semana até alguém desligá-lo.
O custo do dado ruim
Amarre sempre no dinheiro, porque é isso que muda a resposta de técnica para sênior: decisão errada de crédito ou de fraude, retrabalho e reprocessamento consumindo cluster, e risco regulatório quando o número reportado não fecha. Some ainda o custo invisível: quando a área de negócio deixa de confiar na tabela, ela monta a planilha paralela dela, e aí você perdeu a fonte única.
Se quiser outro ângulo
Como cai na sabatina
“Como você garantiria qualidade num pipeline diário de transações?”
Erros comuns
- Listar as dimensões sem dizer como se mede cada uma. Citar 'acurácia' não vale ponto; dizer que se mede confrontando uma amostra com o sistema de origem, vale.
- Achar que todo teste que falha deve derrubar o pipeline. Derrubar tudo por um domínio inesperado numa coluna secundária custa mais que quarentenar a linha.
- Confundir completude com acurácia. Campo preenchido com valor errado é completo e impreciso; campo vazio é incompleto e pode até ser correto.
- Ignorar frescor. Dado certo que chega depois da decisão é dado inútil, e é a dimensão que mais gera reclamação em painel de diretoria.
- Medir qualidade só na camada final. Quanto mais tarde o teste, mais caro o reprocessamento; teste na ingestão pega o problema antes de ele se espalhar.
- Tratar SLA de dados como promessa verbal. Sem número, janela e consequência acordada, não existe SLA, existe expectativa.
Flashcards
Card 1 de 13
0 certos · 0 a reverDrill
Qual dimensão foi violada?
Para cada sintoma no pipeline diário de transações, diga qual dimensão de qualidade está sendo violada. Fale a resposta antes de conferir.
1.A mesma autorização de cartão aparece três vezes na tabela de transações.
2.12% das linhas de cadastro têm o campo de data de nascimento vazio.
3.O valor de uma transação está gravado como 1.500,00 numa coluna numérica e virou 1,5.
4.A soma de transações PIX do dia no lakehouse não bate com o total informado pelo core bancário.
5.A tabela de transações de ontem só ficou disponível às 14h, e o time de fraude precisa dela às 7h.
6.O CEP do cliente existe e tem formato válido, mas não corresponde ao endereço real dele.
Drill
Falhar, quarentenar ou alertar?
Para cada falha de teste, escolha a ação e prepare a justificativa em uma frase. O critério é impacto do erro contra custo do atraso.
1.Volume do lote caiu 96% em relação à média dos últimos 30 dias.
2.0,0002% das transações têm id_conta inexistente na dimensão de contas.
3.Uma coluna descritiva opcional passou a vir com um valor novo, fora da lista de domínio conhecida.
4.O total consolidado do relatório regulatório diverge do core bancário em 0,3%.
5.A coluna de CPF passou de 0,1% para 6% de nulos.
Quiz · 1 de 2
Qual é a melhor definição operacional de frescor (atualidade) de dados?
Explique para um gerente
Explique para o gerente de operações por que vale atrasar o relatório de fechamento em duas horas em vez de publicá-lo com 3% das transações faltando.
Responda em voz alta antes de seguir. Se travar numa palavra técnica, é sinal de que ainda não entendeu essa parte.
Perguntas de sabatina deste tema
- · Como você garantiria qualidade num pipeline diário de transações de cartão?
- · Um teste de qualidade falhou às 3h da manhã no pipeline que alimenta o painel da diretoria às 8h. Descreva sua decisão.
Para ir além