¶ 🔧 Normalización de Bases de DatosEliminación de redundancia y optimización de la estructura de datos |
¶ ¿Qué es la Normalización?La normalización es un proceso de diseño de bases de datos que organiza las tablas y columnas para minimizar la redundancia de datos y mejorar la integridad de los datos. Se logra dividiendo tablas grandes en tablas más pequeñas y definiendo relaciones entre ellas, aplicando una serie de reglas llamadas Formas Normales. |
¶ 🎯 Objetivos de la Normalización
|
¶ ⚠️ Anomalías sin NormalizaciónLas bases de datos mal diseñadas presentan tres tipos de anomalías:
|
¶ 📊 Primera Forma Normal (1FN)Regla: Cada columna debe contener valores atómicos (indivisibles) y no debe haber grupos repetidos. ¶ ❌ Tabla NO en 1FN
⚠️ Problema: Teléfonos y Cursos contienen múltiples valores en una sola celda ¶ ✅ Tabla en 1FN
✓ Solución: Cada celda contiene un solo valor atómico |
¶ 📊 Segunda Forma Normal (2FN)Regla: Debe estar en 1FN y todos los atributos no-clave deben depender completamente de la clave primaria (no parcialmente). ¶ ❌ Tabla NO en 2FN
⚠️ Problema: Nombre_Estudiante solo depende de ID_Estudiante, no de la clave completa (ID_Estudiante + ID_Curso) ¶ ✅ Tablas en 2FNTabla: Estudiantes
Tabla: Cursos
Tabla: Inscripciones
✓ Solución: Cada tabla ahora tiene atributos que dependen completamente de su clave primaria |
¶ 📊 Tercera Forma Normal (3FN)Regla: Debe estar en 2FN y no debe haber dependencias transitivas (ningún atributo no-clave debe depender de otro atributo no-clave). ¶ ❌ Tabla NO en 3FN
⚠️ Problema: Nombre_Departamento y Ubicación_Dpto dependen de ID_Departamento, no directamente de ID_Empleado ¶ ✅ Tablas en 3FNTabla: Empleados
Tabla: Departamentos
✓ Solución: Se eliminan las dependencias transitivas separando la información del departamento |
¶ 📚 Resumen de Formas Normales
|
¶ ⚖️ Normalización vs Desnormalización
|
¶ 💡 Consejos Prácticos🎯 Normaliza hasta 3FN como estándar: Es suficiente para la mayoría de aplicaciones OLTP 📊 Considera el contexto: Data warehouses y sistemas de reportes pueden beneficiarse de desnormalización 🔍 Identifica dependencias: Analiza cómo los atributos dependen entre sí antes de normalizar ⚡ Prueba y mide: Verifica el rendimiento después de normalizar para asegurar que mejora 🔐 Documenta decisiones: Registra por qué elegiste normalizar o desnormalizar ciertas tablas 🛠️ Usa herramientas: Utiliza diagramas ER para visualizar las dependencias y relaciones |
|
|