Skip to content

Posts

Centralize Sua Integridade de Dados

4 de maio de 2021 • 2 min de leitura

Centralize Sua Integridade de Dados

Sistemas (ou seja, bancos de dados) gerenciando sua integridade de dados parece senso comum, e em cenários simples, é senso comum. No entanto, quando as regras de negócio ficam complexas, é mais difícil validar os dados em um local central.

Quando um sistema (ou seja, um banco de dados) não consegue mais impor o formato dos dados, algo mais deve preencher essa lacuna. Quando isso pode acontecer?

O formato de número de telefone nos EUA é (código de área) (prefixo) – (número), aqui está um exemplo: (734) 555-3212. Falaremos sobre o banco de dados neste artigo por simplicidade, mas o armazenamento de dados não precisa ser um banco de dados.

Números de telefone nos EUA sempre têm dez dígitos (estamos ignorando o dígito internacional). Os números de telefone podem vir em uma variedade de formatos:

  • xxx.xxx.xxxx
  • xxx-xxx-xxxx
  • (xxx) xxx-xxxx
  • (xxx) xxx.xxxx

A maioria dos bancos de dados é limitada a tipos de dados (ou seja, números, strings, datas, etc.) e não suporta formatação. Muitos aplicativos optam por usar o tipo de dados string para armazenar o número de telefone. No entanto, o tipo de dados string aceita QUALQUER string. Para garantir que o número de telefone seja válido, precisamos de uma camada adicional de validação.

Em um único aplicativo conectado a um único banco de dados, a validação de dados é normalmente aplicada no aplicativo.

Quando sua arquitetura cresce para dois ou mais aplicativos compartilhando um banco de dados, duas coisas podem acontecer:

1. Cada aplicativo tem sua própria validação de dados:

2. Há um serviço central que os aplicativos chamam para validar os dados e persistir os dados:

O risco de validação de dados em vários locais é que as validações podem estar fora de sincronização. Um formato válido para um aplicativo pode não ser válido em outro aplicativo. No pior caso, um formato inválido lançará um erro ou, em casos extremos, travará o aplicativo.

O melhor caso é centralizar a validação de dados para que o formato armazenado no banco de dados seja consistente para toda a organização. Existem exceções, é claro, e estou assumindo que vários aplicativos leem e escrevem em um banco de dados compartilhado.

Autor: Chuck Conway é um Engenheiro de IA com quase 30 anos de experiência em engenharia de software. Ele constrói sistemas de IA práticos—pipelines de conteúdo, agentes de infraestrutura e ferramentas que resolvem problemas reais—e compartilha o que está aprendendo ao longo do caminho. Conecte-se com ele nas redes sociais: X (@chuckconway) ou visite-o no YouTube e no SubStack.

↑ Voltar ao topo

Você também pode gostar