Diseño y Normalización de Bases de Datos
El diseño y la normalización de bases de datos es la disciplina de estructurar esquemas relacionales de manera que representen fielmente los datos, eliminando la redundancia y las anomalías de actualización, inserción y eliminación que esta provoca.
Definition
La normalización es el proceso de descomponer relaciones para reducir la redundancia y evitar anomalías, guiado por las dependencias funcionales y multivaluadas que existen entre los atributos, mientras se preserva el contenido de la información del esquema original.
Scope
Esta área abarca la teoría y la práctica del refinamiento de esquemas relacionales: las dependencias funcionales y multivaluadas como las restricciones semánticas que impulsan el diseño, la jerarquía de las formas normales (desde 1NF hasta BCNF, 4NF), y la descomposición de relaciones para eliminar la redundancia, preservando uniones sin pérdida y, cuando sea posible, las dependencias. Excluye las notaciones de modelado conceptual como los diagramas entidad-relación (cubiertos en modelos de datos y lenguajes de consulta) y las opciones de diseño físico como la indexación.
Sub-topics
Core questions
- ¿Qué dependencias funcionales y multivaluadas existen entre los atributos de una relación?
- ¿Qué anomalías —actualización, inserción, eliminación— causa la redundancia?
- ¿Qué condiciones definen cada forma normal y qué redundancia elimina cada una?
- ¿Cómo se puede descomponer una relación sin perder información?
- ¿Cuándo se debe sacrificar la preservación de la dependencia por una forma normal superior?
Key concepts
- dependencia funcional
- axiomas de Armstrong y cierre
- claves candidatas y atributos primos
- anomalías de actualización, inserción, eliminación
- primera, segunda, tercera forma normal
- forma normal de Boyce-Codd
- dependencias multivaluadas y 4NF
- descomposición con unión sin pérdida
- preservación de la dependencia
Key theories
- Dependencias funcionales y cierre
- Una dependencia funcional X → Y afirma que X determina Y; los axiomas de Armstrong permiten calcular el cierre de un conjunto de dependencias, lo que subyace a la búsqueda de claves y a la prueba de formas normales.
- Formas normales
- La primera a la tercera forma normal y la forma normal de Boyce-Codd imponen condiciones progresivamente más estrictas sobre las dependencias funcionales para eliminar la redundancia; la cuarta forma normal extiende esto a las dependencias multivaluadas.
- Descomposición con unión sin pérdida y preservación de la dependencia
- Una descomposición es deseable solo si no tiene pérdida (la relación original puede reconstruirse uniendo las partes) e idealmente preserva la dependencia (todas las dependencias originales pueden aplicarse en las partes), criterios que restringen cómo se dividen los esquemas.
Clinical relevance
La normalización es una habilidad fundamental en la construcción de sistemas de información fiables: los esquemas bien normalizados previenen datos inconsistentes y simplifican el mantenimiento en aplicaciones transaccionales, mientras que los profesionales también desnormalizan deliberadamente para análisis y reportes con alta carga de lectura, haciendo que las compensaciones sean centrales en la ingeniería de bases de datos del mundo real.
History
Codd introdujo las primera, segunda y tercera formas normales a principios de la década de 1970 y, con Boyce, la forma normal de Boyce-Codd, que es más estricta. Ronald Fagin definió posteriormente las cuarta y quinta formas normales basándose en dependencias multivaluadas y de unión. Juntos, estos resultados transformaron el diseño de esquemas de un arte en una teoría fundamentada en restricciones de dependencia.
Debates
- Hasta qué punto normalizar en la práctica
- La normalización estricta elimina la redundancia y las anomalías, pero puede requerir muchas uniones que ralentizan las cargas de trabajo con alta lectura; los profesionales debaten cuándo la desnormalización controlada para el rendimiento está justificada frente a cuándo invita a las mismas inconsistencias que la normalización fue diseñada para prevenir.
Key figures
- Edgar F. Codd
- Raymond F. Boyce
- Ronald Fagin
Related topics
Seminal works
- codd1972
- silberschatz2019
- garciamolina2008
Frequently asked questions
- ¿Por qué la redundancia causa problemas si soy cuidadoso?
- El almacenamiento redundante del mismo hecho en múltiples filas conduce a anomalías: una actualización puede cambiar algunas copias pero no otras (anomalía de actualización), es posible que no pueda registrar un hecho sin datos no relacionados (anomalía de inserción), o la eliminación de una fila puede perder información que deseaba conservar (anomalía de eliminación). La normalización elimina la redundancia que hace que esto sea posible.
- ¿Cuál es la diferencia entre BCNF y la tercera forma normal?
- Ambas abordan la redundancia de las dependencias funcionales, pero BCNF es más estricta: requiere que el lado izquierdo de cada dependencia no trivial sea una superclave. Un esquema puede estar en 3NF y no en BCNF. BCNF siempre proporciona una descomposición sin pérdida, pero puede no preservar la dependencia, por lo que a veces se mantiene 3NF.