La quinta forma normal ( 5FN ), también conocida como forma normal de proyección-unión ( PJ/NF ), es un nivel de normalización de bases de datos diseñado para eliminar la redundancia en bases de datos relacionales que registran hechos multivalorados, aislando las relaciones múltiples semánticamente relacionadas. Se dice que una tabla está en 5FN si y solo si cada dependencia de unión no trivial en esa tabla está implícita en las claves candidatas . Es la forma normal final en lo que respecta a la eliminación de redundancia.
También existe la sexta forma normal (6NF) , pero su propósito no es eliminar la redundancia y, por lo tanto, solo la adoptan unos pocos almacenes de datos , donde puede ser útil para hacer que las tablas sean irreducibles.
Una dependencia de unión *{A, B, … Z} en R está implícita en la(s) clave(s) candidata(s) de R si y solo si cada una de A, B, …, Z es una superclave para R. [ 1 ]
La quinta forma normal fue descrita por primera vez por Ronald Fagin en su artículo de conferencia de 1979, Formas normales y operadores de bases de datos relacionales . [ 2 ]
Ejemplo
Consideremos el siguiente ejemplo:
El predicado de la tabla es: los productos del tipo designado por tipo de producto , fabricados por la marca designada por marca , están disponibles a través del vendedor ambulante designado por vendedor ambulante .
La clave primaria es la combinación de las tres columnas. Cabe destacar que la tabla está en 4NF , ya que no existen dependencias multivaluadas ( dependencias de unión de dos partes ): ninguna columna (que por sí sola no sea una clave candidata ni una superclave) determina las otras dos columnas.
Ante la ausencia de reglas que restrinjan las posibles combinaciones válidas de vendedores ambulantes, marca y tipo de producto, la tabla de tres atributos anterior es necesaria para modelar correctamente la situación.
Supongamos, sin embargo, que se aplica la siguiente regla: Un vendedor ambulante tiene ciertas marcas y ciertos tipos de productos en su repertorio. Si la marca B1 y la marca B2 están en su repertorio, y el tipo de producto P también está en su repertorio, entonces (suponiendo que tanto la marca B1 como la marca B2 fabrican el tipo de producto P), el vendedor ambulante debe ofrecer el tipo de producto P de ambas marcas; es decir, el vendedor no puede vender solo el producto P de B1 ni solo el producto P de B2.
En ese caso, es posible dividir la tabla en tres:
En este caso, es imposible que Louis Ferguson se niegue a ofrecer aspiradoras fabricadas por Acme (suponiendo que Acme fabrique aspiradoras) si vende cualquier otro producto fabricado por Acme (lámpara de lava) y también vende aspiradoras fabricadas por cualquier otra marca (Robusto).
Observe cómo esta configuración ayuda a eliminar la redundancia. Supongamos que Jack Schneider comienza a vender paneras y aspiradoras de Robusto. En la configuración anterior, tendríamos que agregar dos entradas nuevas, una para cada tipo de producto (<Jack Schneider, Robusto, paneras>, <Jack Schneider, Robusto, aspiradoras>). Con la nueva configuración, solo necesitamos agregar una entrada (<Jack Schneider, Robusto>) en "marcas por vendedor ambulante".
Uso
Solo en raras ocasiones una tabla en 4NF no se ajusta a 5NF; por ejemplo, cuando las tablas descompuestas son cíclicas . Se trata de situaciones en las que una restricción compleja del mundo real que rige las combinaciones válidas de valores de atributos en la tabla 4NF no está implícita en la estructura de dicha tabla. Si una tabla de este tipo no se normaliza a 5NF, la responsabilidad de mantener la coherencia lógica de los datos recae en parte sobre la aplicación encargada de las inserciones, eliminaciones y actualizaciones ; y existe un mayor riesgo de que los datos de la tabla se vuelvan inconsistentes. En cambio, el diseño 5NF excluye la posibilidad de tales inconsistencias.
Una tabla T está en quinta forma normal (5FN) o en forma normal de proyección-unión (PJ/FN) si no puede descomponerse sin pérdida de información en un número determinado de tablas más pequeñas. Se excluye el caso en que todas las tablas más pequeñas, tras la descomposición, tengan la misma clave candidata que la tabla T.
Véase también
Referencias
Lecturas adicionales
- Kent, W. (1983) Una guía sencilla de cinco formas normales en la teoría de bases de datos relacionales , Communications of the ACM, vol. 26, pp. 120–125.
- Date, CJ, & Darwen, H., & Pascal, F. Desmitificando bases de datos .
- Darwen, H.; Date, CJ; Fagin, R. (2012). «Una forma normal para prevenir tuplas redundantes en bases de datos relacionales». Actas de la 15.ª Conferencia Internacional sobre Teoría de Bases de Datos – ICDT '12 (PDF) . págs. 114–126 . doi : 10.1145/2274576.2274589 . ISBN 9781450307918. S2CID 207195585 . Archivado del original (PDF) el 06-03-2016 . Recuperado el 25-10-2017 .
- Normalización de la base de datos