Normalización
¿Qué significa la normalización?
La normalización es el proceso de reorganizar los datos en una base de datos para que cumpla con dos requisitos básicos:
- No hay redundancia de datos, todos los datos se almacenan en un solo lugar.
- Las dependencias de datos son lógicas, todos los elementos de datos relacionados se almacenan juntos.
La normalización es importante por muchas razones, pero principalmente porque permite que las bases de datos ocupen el menor espacio de disco posible, lo que aumenta el rendimiento.
La normalización también se conoce como normalización de datos.
Techopedia explica la normalización
El primer objetivo durante la normalización de datos es detectar y eliminar todos los datos duplicados agrupando lógicamente las redundancias de datos. Siempre que un dato dependa de otro, los dos deben almacenarse en proximidad dentro de ese conjunto de datos.
Al deshacerse de todas las anomalías y organizar los datos no estructurados en una forma estructurada, la normalización mejora en gran medida la usabilidad de un conjunto de datos. Los datos se pueden visualizar más fácilmente, los conocimientos se pueden extraer de manera más eficiente y la información se puede actualizar más rápidamente. A medida que las redundancias se fusionan, se reduce el riesgo de errores y duplicaciones, lo que hace que los datos sean aún más desorganizados. Además de todo eso, una base de datos normalizada ocupa menos espacio, eliminando muchos problemas de espacio en disco y aumentando significativamente su rendimiento general.
Los tres tipos principales de normalización se enumeran a continuación. Nota: «NF» se refiere a «forma normal».
Primera forma normal (1NF)
Las tablas en 1NF deben cumplir algunas reglas:
-
Cada celda debe contener un solo valor (atómico).
-
Cada columna de la tabla debe tener un nombre exclusivo.
-
Todos los valores de una columna deben pertenecer al mismo dominio.
Segunda forma normal (2NF)
Las tablas en 2NF deben estar en 1NF y no tener ninguna dependencia parcial (por ejemplo, cada atributo no principal debe depender de la clave principal de la tabla).
Tercera forma normal (3NF)
Las tablas en 3NF deben estar en 2NF y no tener dependencias funcionales transitivas en la clave primaria.
También existen los siguientes dos NF, pero rara vez se utilizan:
Forma normal de Boyce-Codd (BCNF)
Una versión superior de la 3NF, la forma normal de Boyce-Codd, se utiliza para abordar las anomalías que podrían resultar si existe una clave candidata más de una. También conocido como 3.5 Forma Normal, el BCNF debe estar en 3NF y en todas las dependencias funcionales (X → Y), X debe ser una superclave.
Cuarta forma normal (4NF)
Para que una tabla esté en 4NF, debe estar en BCNF y no tener una dependencia de varios valores.
Los primeros tres NF fueron derivados a principios de la década de 1970 por el padre del modelo de datos relacionales, EF Codd. Casi todos los motores de bases de datos relacionales actuales utilizan sus reglas.
Algunos motores de bases de datos relacionales no cumplen estrictamente los criterios de todas las reglas de normalización. Un ejemplo es la función de campos de varios valores introducida por Microsoft en la aplicación de base de datos de Access 2007. Ha habido un acalorado debate en los círculos de bases de datos sobre si tales características ahora descalifican a tales aplicaciones de ser verdaderos sistemas de administración de bases de datos relacionales.
