Rompe una regla: A veces está bien desnormalizar su base de datos

Rompe una regla: A veces está bien desnormalizar su base de datos

Rompe una regla: A veces está bien desnormalizar su base de datos

VALORACIÓN DEL ARTÍCULO:
5/5


La normalización de bases de datos es una de las vacas sagradas del desarrollo de aplicaciones. Cada curso de programación de pregrado que haya tomado o libro que haya leído probablemente predique la importancia de normalizar las bases de datos.Es hora de desafiar esa verdad. A veces está bien desnormalizar su base de datos!

¿Cuándo debe normalizarse?

La normalización de la base de datos protege la integridad de sus datos. Es una gran idea en muchos casos, y usted debe comenzar cualquier esfuerzo de diseño de base de datos con la normalización en mente. Si puede normalizar su base de datos, ¡hágalo! De hecho,

La conclusión es que usted debería normalizar su base de datos a menos que tenga una buena razón para no hacerlo. La normalización suele ser una buena práctica de diseño. Reduce la información redundante, optimiza el rendimiento y reduce la probabilidad de que se produzcan problemas de integridad de los datos como resultado de tener los mismos datos almacenados en diferentes esquinas de la base de datos.

Algunas buenas razones para no normalizar

Dicho esto, hay algunas buenas razones para no normalizar su base de datos. Veamos algunos:

  1. Las uniones son caras . La normalización de su base de datos a menudo implica la creación de muchas tablas. De hecho, usted puede terminar fácilmente con lo que usted piensa que debería ser una simple consulta que abarque cinco o diez tablas. Si alguna vez ha intentado hacer una unión de cinco mesas, sabe que funciona en principio, pero en la práctica es muy lenta. Si está construyendo una aplicación web que se basa en consultas de varias uniones contra tablas grandes, puede que se encuentre pensando: «¡Si esta base de datos no estuviera normalizada! Cuando escuchas ese pensamiento en tu cabeza, es un buen momento para considerar la desnormización. Si puede pegar todos los datos utilizados por esa consulta en una sola tabla sin poner realmente en peligro la integridad de sus datos, ¡hágalo! Sea un rebelde y desnormalize su base de datos. ¡No mirarás atrás!
  2. El diseño normalizado es difícil . Si está trabajando con un esquema de base de datos complejo, probablemente se encontrará golpeando su cabeza contra la mesa por la complejidad de la normalización. Como regla general, si usted está pasando todo el día tratando de averiguar cómo pasar a la cuarta forma normal, es posible que esté llevando la normalización demasiado lejos. Retroceda y pregúntese si realmente vale la pena continuar.
  1. Rápido y sucio debe ser rápido y sucio . Si sólo estás desarrollando un prototipo, haz lo que sea que funcione rápidamente. De verdad. Está bien. Está bien. El desarrollo rápido de aplicaciones es a veces más importante que el diseño elegante. Sólo recuerde volver atrás y echar un vistazo cuidadoso a su diseño una vez que esté listo para pasar de la fase de creación de prototipos. El precio que usted paga por un diseño de base de datos rápido y sucio es que podría necesitar tirarlo y empezar de nuevo cuando sea el momento de construir para la producción.
  2. Si está usando una base de datos NoSQL , la normalización tradicional no es deseable. En su lugar, diseñe su base de datos utilizando el modelo BASE, que es mucho más indulgente. Esto es útil cuando se almacenan datos no estructurados como correos electrónicos, imágenes o vídeos.

Algunas palabras de precaución

La normalización de la base de datos es generalmente una buena idea. Usted debe tratar de seguir los principios de normalización cuando le parezca razonable hacerlo. Pero si todos los indicadores indican que la normalización es demasiado compleja de implementar, considere un enfoque que haga el trabajo sin dejar de proteger sus datos.Por último, si decide desviarse de las reglas de normalización, esté muy atento a la forma en que aplica la integridad de la base de datos. Si almacena información redundante, ponga gatillos y otros controles en su lugar para asegurarse de que la información permanezca consistente.

Deja un comentario

TAMBIÉN TE INTERESA

Software para clinicas

Así es un software para clínicas: gestión integral en la nube

Si trabajas o tienes una clínica, te habrás dado cuenta de la existencia de muchos software para clínicas, pero, ¿qué son y para qué sirven? Lo primero que tienes que saber es que no siempre se trata de complejos sistemas para grandes hospitales. También existen software para clínicas sencillos y completos que resultan muy útiles

Wifi 6

Este es el primer router de Synalogy con certificación Wifi 6

Cada vez queremos navegar más rápido y por ello exigimos tecnologías que facilitan velocidad y seguridad. Wifi 6 se erige como el gran estándar actual de la conectividad, pero necesitamos dispositivos que estén adaptados a ello. En estas líneas presentamos el router que tiene Synalogy en el mercado, pero antes hablaremos un poco de las

servidores discord

Discord es utilizada por menores para propagar malware y ganar dinero

Discord no es solo un chat de voz que utilizan los jugadores durante sus partidas. Se ha convertido en una plataforma de mensajería muy completa, pero no exenta de peligros y amenazas contra la ciberseguridad. Lo peor es que esta herramienta es utilizada frecuentemente por menores de edad.   Índice de contenidos1 Está pasando en

trabajando en proyecto de IA

Inteligencia artificial: 8 claves para pasar de un experimento a una implementación

Es un hecho que la inteligencia artificial será la base de muchos proyectos empresariales y la solución que busquen todos los sectores para optimizar y hacer eficientes sus actividades. El mundo agrario, la salud, departamentos de recursos humanos, ventas… Cualquier ámbito que uno piense es óptimo para la llegada de herramientas inteligentes.   La IA

realidad virtual

¿En qué tipo de cascos de RV está trabajando Meta?

No es un misterio que el paso de Facebook a Meta está estratégicamente diseñado para expandir y democratizar el metaverso a los usuarios de internet. Hace falta para eso tiempo de desarrollo técnico, talento y mucha mentalidad. También harán falta nuevos accesorios para navegar en el metaverso de una forma inmersiva. Gran parte de este