Skip to content
Perspectivas e Iteraciones Entendiendo la IA: técnico, cotidiano y reflexiones.
← atrás

Centraliza la Integridad de tus Datos

4 de mayo de 2021 • 2 min de lectura

Centraliza la Integridad de tus Datos

Los sistemas (es decir, las bases de datos) que gestionan su propia integridad de datos suena como sentido común, y en escenarios simples, es sentido común. Sin embargo, cuando las reglas de negocio se vuelven complejas, es más difícil validar los datos en una ubicación central.

Cuando un sistema (es decir, una base de datos) ya no puede hacer cumplir la forma de los datos, algo más debe tomar el relevo. ¿Cuándo podría suceder esto?

El formato de número telefónico en Estados Unidos es (código de área) (prefijo) – (número), aquí hay un ejemplo: (734) 555-3212. Hablaremos sobre la base de datos en este artículo por simplicidad, pero el almacén de datos no tiene que ser una base de datos.

Los números telefónicos en Estados Unidos siempre tienen diez dígitos (estamos ignorando el dígito internacional). Los números telefónicos pueden venir en una variedad de formatos:

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

La mayoría de las bases de datos están limitadas a tipos de datos (es decir, números, cadenas, fechas, etc.) y no soportan formato. Muchas aplicaciones optan por usar el tipo de dato cadena para almacenar el número telefónico. Sin embargo, el tipo de dato cadena acepta CUALQUIER cadena. Para asegurar que el número telefónico sea válido, necesitamos una capa adicional de validación.

En una sola aplicación conectándose a una sola base de datos, la validación de datos típicamente se hace cumplir en la aplicación.

Cuando tu arquitectura crece a dos o más aplicaciones compartiendo una base de datos, pueden suceder dos cosas:

1. Cada aplicación tiene su propia validación de datos:

2. Hay un servicio central que las aplicaciones llaman para validar los datos y persistir los datos:

El riesgo de la validación de datos en múltiples lugares es que las validaciones podrían estar desincronizadas. Un formato válido para una aplicación podría no ser válido en otra aplicación. En el peor caso, un formato malo arrojará un error o, en casos extremos, hará que la aplicación se bloquee.

El mejor caso es centralizar la validación de datos para que el formato almacenado en la base de datos sea consistente para toda la organización. Hay excepciones, por supuesto, y estoy asumiendo que múltiples aplicaciones leen y escriben a una base de datos compartida.

↑ Volver arriba

Autor: Chuck Conway se especializa en ingeniería de software e IA Generativa. Conéctate con él en redes sociales: X (@chuckconway) o visítalo en YouTube.