04 Normalización 3FN y FNBC - 4FN y 5FN PDF

Title 04 Normalización 3FN y FNBC - 4FN y 5FN
Author Evard Eredan
Course Base de datos 1
Institution Universidad Nacional Arturo Jauretche
Pages 18
File Size 556.2 KB
File Type PDF
Total Downloads 30
Total Views 135

Summary

Normalizacion...


Description

Normalización 3FN y FNBC – 4FN y 5FN

Apunte de Normalización de Base de Datos

Página 1 de 18

Normalización 3FN y FNBC – 4FN y 5FN INDICE Normalización Normalización .................................................................................................................................................. 3 Descripción normalización analíticamente ................................................................................................. 4 Primera Forma Normal (1FN)......................................................................................................................... 8 Segunda Forma Normal (2FN) ........................................................................................................................ 8 Tercera Forma Normal (3FN) ......................................................................................................................... 9 Tabla No Normalizada (TNN) ....................................................................................................................... 10 Tabla Normalizada Primera Forma Normal (TN1FN) ................................................................................ 10 Tabla Normalizada Segunda Forma Normal (TN2FN) ............................................................................... 10 Tabla Normalizada Tercera Forma Normal (TN3FN) ................................................................................ 11 Forma Normal de Boyce-Codd (FNBC)........................................................................................................ 11 Cuarta Forma Normal (4FN) ......................................................................................................................... 13 Quinta Forma Normal (5FN) ......................................................................................................................... 15 Diagrama del proceso de normalización con las 5 (cinco) Formas Normales ....................................... 18

Página 2 de 18

Normalización 3FN y FNBC – 4FN y 5FN Normalización La información almacenada y redundante desperdicia espacio en el disco y conlleva a problemas de mantenimiento en los procesos de alta, baja, y modificación (“ABM”). Si existe redundancia al modificar los datos existentes en más de un lugar de la base de datos es necesario realizar estos cambios en todas las repeticiones almacenadas. Si deseamos modificar la dirección de un paciente y esta información solamente se encuentra en una sola tabla denominada “Paciente”, es más sencillo de implementar este cambio a diferencia si se almacena esta información en otra tabla como ser “Cirugía” o en cualquier otra tabla del sistema. Podemos comprender al mecanismo de normalización de base de datos relacional como un agregado de reglas técnicas utilizada para la construcción del modelo final, toma como entrada el esquema relacional lógico y aplica estas reglas para producir un nuevo esquema de salida normalizado conteniendo la misma información, pero beneficiándonos con menor redundancia y evitando las posibles anomalías de inserción, borrado y actualización (“ABM”). De esta manera podemos construir diferentes esquemas de datos en sus tres vistas del modelo entidad relación conceptual, lógico y normalizado. Aunque es intuitivo para un usuario mirar en la tabla “Cliente” para buscar la dirección de un cliente en particular, puede no tener sentido mirar allí el salario del empleado que llama a ese cliente. El salario del empleado está relacionado con el empleado, o depende de él, y por lo tanto se debería pasar a la tabla “Empleado”. Las dependencias incoherentes pueden dificultar el acceso a la ruta para encontrar los datos puede no estar. Cada regla de normalización se denomina Forma Normal (FN). Si se cumple con la 1° FN se considera que la base de datos está en la primera forma normal. Si se cumple con la 2° FN se considera que la base de datos está en segunda Forma Normal. Si se cumple con la 3° FN se considera que la base de datos está en tercera Forma Normal. Por lo general la mayoría de las aplicaciones se diseñan hasta la 3°FN, aunque es posible llegar a realizar otros niveles mayores de normalización. 1° FN (Codd, 1970) Concepto de relación normalizada. 2° FN (Codd, 1970), FNBC (Boyce/Codd, 1974) Basadas en análisis de dependencias funcionales. 3° FN (Codd, 1970) y/o FNBC (Boyce/Codd, 1974) Basadas en análisis de dependencias funcionales. 4° FN. Fagin, 1977 • Basada en análisis de dependencias multivaluadas. 5° FN. Fagin, 1979 Página 3 de 18

Normalización 3FN y FNBC – 4FN y 5FN • Basada en análisis de dependencias de proyección /combinación. En el campo real donde se construyen aplicaciones no siempre se cumplen con las técnicas teóricas, porque la normalización implica la creación de tablas adicionales y muchas veces se considera innecesario realizar este trabajo. Pero se deberá considerar que si se vulnera una o más de las tres formas normales se deberá contemplar el aseguramiento de la integridad de datos por las anomalías que pudieran surgir, como ser datos redundantes y dependencias incoherentes. Una base de datos para ser considerada normalizada debe cumplir: 1.

Cada entrada en la tabla representa un dato elemental, no hay elementos multivaluados.

2.

Cada columna contiene datos con el mismo significado.

3.

A cada columna se le asigna un nombre diferente.

4.

El contenido de todas las filas es diferente y no se permiten filas duplicadas. Esto se logra por medio de la creación de una clave primaria para identificar unívocamente una determina fila de la tabla.

Una vez más, se debe revisar con los usuarios el esquema global y la documentación obtenida para asegurarse de la fidelidad de la representación de la empresa. Se detallan a continuación las propiedades de la normalización: 







Una base de datos normalizada incluye el mínimo número de atributos necesarios para brindar soporte a los requerimientos del sistema. El resultado de la normalización es facilitar el acceso a los datos y sobre todo mantener el significado de sus contenidos. La redundancia es mínima por los atributos que forman parte de las claves externas, el resto de los atributos se representa una sola vez. Las actualizaciones se consiguen realizar con un número mínimo de operaciones, mejorando la eficiencia de la BD y reduciendo las posibilidades de inconsistencias. Se reduce al mínimo el espacio de almacenamiento reduciendo los costos de operación de la base de datos.

Descripción normalización analíticamente Se analizan las diferentes dependencias funcionales entre atributos (a, b, c, d, e, f, g, h, i, j, k, l, m1, m2, m3, t1, t2, t3, t4) de la Tabla No Normalizada (“TNN”). 

El significado del atributo “a” código de empresa.



El significado del atributo “b” legajo del empleado.



El significado del atributo “c” fecha ingreso del empleado.



El significado del atributo “d” razón social de la empresa. Página 4 de 18

Normalización 3FN y FNBC – 4FN y 5FN 

El significado del atributo “e” sueldo del empleado.



El significado del atributo “f” cargo del empleado.



El significado del atributo “g” cuit de la empresa.



El significado del atributo “h” categoría del empleado.



El significado del atributo “i” dirección del empleado.



El significado del atributo “j” nombre de la categoría.



El significado del atributo “k” nombre y apellido del empleado.



El significado del atributo “l” código postal del empleado.



El significado del atributo “m” son los e-mails.



El significado del atributo “t” son los teléfonos.

 DFTC (Dependencia Funcional Total Clave) Todos los atributos de la Tabla No Normalizada (TNN) dependen de la totalidad de la clave {a, b} {a, b} → {a, b, c, d, e, f, g, h, i, j, k, l, m1, m2, m3, t1, t2, t3, t4}  DFPC (Dependencia Funcional Parcial Clave) Algún/os atributo/s de la Tabla No Normalizada (TNN) dependen de uno o más atributos de la clave {a, b}, pero, no de la totalidad de la clave. {a} → {a, d, g} {b} → {b, i, k}  DFANC (Dependencia Funcional Atributos No Clave) Algún/os atributo/s de la Tabla No Normalizada (TNN) dependen de uno o más atributos de atributos que no forman parte de clave. {f} → {f, h} {h} → {h, j} {i} → {i , l}  AR (Atributos Repetidos) {b} → {m, t}

Página 5 de 18

Normalización 3FN y FNBC – 4FN y 5FN DFPC DFPC

DFPC

DFANC

DFPC

DFANC DFANC

a,

b,

c,

d,

e,

f,

g,

h,

i,

j,

k,

l,

AR

AR

m1, m2, m3, t1, t2, t3, t4

Dependencia Funcional Total Clave (DFTC)

Página 6 de 18

Normalización 3FN y FNBC – 4FN y 5FN ¿Cuáles son los elementos repetidos para E-Mail?

m1

m2

Lucía

m3

Magali

Matías

¿Cuáles son los elementos repetidos para teléfono?

t1

t4

t3

t2

Martín

Romina

Valentina

¿Cuáles son los elementos con dependencia funcional Parcial?

d, g

Martina

k

i

Gonzalo

Sebastián

¿Cuáles son los elementos con dependencia funcional entre atributos no claves?

h con f

Cintia

j con h

Karina

l con i

Fernanda

Página 7 de 18

Normalización 3FN y FNBC – 4FN y 5FN Primera Forma Normal (1FN) Una tabla/relación está en 1FN, primera formal normal, si el valor de cada atributo no se puede descomponer, es decir, contiene valores atómicos. En otras palabras, si en la relación cada intersección de fila-columna contiene un solo valor y no un conjunto de valores repetidos de igual semántica (significado) en el problema y dominio, porque los atributos toman valores distintos para el mismo valor de la clave simple/compuesta. Una tabla/relación está en 1FN sino contiene atributos repetidos. Existen dos maneras para eliminar los grupos repetitivos: −

La primera repite los atributos con un solo valor del grupo repetitivo en distintas tuplas/filas, y además se debe alterar la clave principal añadiéndole el atributo repetido. De este modo se introducen redundancias porque se duplican valores, pero estas redundancias se eliminarán después mediante las restantes formas normales.



La segunda manera de eliminar los grupos repetitivos consiste en poner cada uno de los valores repetidos en una nueva relación débil, heredando la clave primaria de la relación en la que se encontraban y concatenándole el atributo múltiple para conformar una única clave compuesta para esta nueva relación.

Segunda Forma Normal (2FN) Una tabla/relación está en 2FN, segunda forma normal, si y solo sí: 

Está en 1FN.



Todos sus atributos no participantes de la clave primaria dependen por completo de la clave primaria.

La 2FN se aplica a las tablas/relaciones cuyas claves primarias son compuestas por dos o más atributos. Si una relación está en 1FN y su clave primaria es simple, compuesta por un solo atributo, entonces también está en 2FN. Las relaciones que no están en 2FN pueden sufrir anomalías cuando se realizan actualizaciones. Para pasar una relación en 1FN a 2FN se debe eliminar las dependencias parciales de la clave primaria. Para ello, se eliminan los atributos de la tabla/relación que no son funcionalmente dependientes en la totalidad de la clave primaria, perteneciendo ahora a una nueva relación con su propia clave primaria cuyo atributo o atributos son componentes de la parte de la clave primaria de la tabla/relación inicial.

Página 8 de 18

Normalización 3FN y FNBC – 4FN y 5FN Tercera Forma Normal (3FN) La tabla se encuentra en 3FN si y solo sí: 

Está en 2FN.



No existe ninguna dependencia funcional transitiva entre los atributos no participantes de la clave primaria, expresado de otra manera, sucede cuando existen atributos que no sean parte de clave primaria y a su vez dependen de uno o más atributos no participantes de la clave primaria.

En la práctica significa la eliminación del el o los atributos de cualquier tabla/relación que permita llegar a un mismo dato de dos o más formas diferentes. Aunque las relaciones en 2FN tienen menos redundancias que las relaciones en 1FN, todavía pueden sufrir anomalías frente a las actualizaciones. Cuando se desea pasar una relación de 2FN a 3FN se deben substraer las dependencias transitivas. Se eliminan todos los atributos dependi entes transitivamente de un atributo o más atributos no claves de la tabla/relación, perteneciendo ahora a una nueva relación con su correspondiente clave primaria conformada por el atributo o atributos dependientes no claves de la tabla/relación original.

TNN

1° FN

2° FN

Eliminar Atributos Repetidos

Eliminar Dependencias Parciales

Eliminar Dependencias Transitorias

3° FN Página 9 de 18

Normalización 3FN y FNBC – 4FN y 5FN Tabla No Normalizada (TNN) Tabla: TNN a, b, c, d, e, f, g, h, i, j, k, l, m1, m2, m3, t1, t2, t3, t4

Tabla Normalizada Primera Forma Normal (TN1FN) Tabla: TN1FN a, b, c, d, e, f, g, h, i, j, k, l Tabla: TM a, b, m Tabla: TT a, b, t

Tabla Normalizada Segunda Forma Normal (TN2FN) Tabla: TN2FN a, b, c, e, f, h, j Tabla: TM a, b, m Tabla: TT a, b, t Tabla: TA a, d, g Tabla: TB b, i, k, l

Página 10 de 18

Normalización 3FN y FNBC – 4FN y 5FN Tabla Normalizada Tercera Forma Normal (TN3FN) Tabla: TN3FN a, b, c, e, f Tabla: TM a, b, m Tabla: TT a, b, t Tabla: TA a, d, g Tabla: TB b, i, k Tabla: TF f, h Tabla: TH h, j Tabla: TI i, l

Forma Normal de Boyce-Codd (FNBC) Esta técnica también se basa en el concepto de dependencia funcional, asegurando que todas las tablas/relaciones de la base de datos cumplen con le 3FN. 

Dependencia: es una restricción de integridad impuesta por el usuario. Se intenta representar propiedades inherentes del contenido semántico de los datos.



Dependencia Funcional: es una conexión entre uno o más atributos de una relación determinando una restricción de integridad. Sean X e Y atributos de un mismo conjunto de entidades (tabla). Se dice qué Y es funcionalmente dependiente de X, y se denota X → Y, si para todo posible valor de X se tiene asociado un único valor de Y.

No puede haber más de una tupla con el mismo valor para X y distintos valores para Y. Una dependencia funcional no puede ser inferida desde el esquema de una relación. Debe ser definida explícitamente por alguien conocedor de la semántica de los atributos de la relación. Página 11 de 18

Normalización 3FN y FNBC – 4FN y 5FN •

X → Y, donde X e Y son atributos de un mismo esquema de relación.

Se dice que una tabla está en FNBC si y solo si está en 3FN y cada dependencia funcional no trivial tiene una clave candidata como determinante. Dado un esquema de tabla/relación R, un conjunto de atributos (X e Y), y un conjunto de dependencias funcionales “F”. La relación R está en FNBC si para cada una de las dependencias funcionales X → Y están en ”F+” y se cumple con una de las siguientes condiciones: 

O la dependencia es trivial, el conjunto de atributo Y es un subconjunto de X.



O bien X es una superclave, determina a todos los atributos de la relación.

Es más simple de formular, pero resultó ser más estricta que 3FN. Si un esquema de tablas/relaciones está en BCNF entonces está en 3FN, pero no necesariamente al revés. Una tabla/relación está en FNBC asegurando que no hay redundancia, cuando cada atributo almacena información que no puede ser inferida por los valores de los demás atributos pertenecientes a la misma tabla/relación. Siendo necesario revisar cada una de las dependencias funcionales. Tabla/Relación: Codido_Postal barrio Villa Crespo Chacarita

ciudad CABA CABA

cod_postal 1414 1414

Codido_Postal barrio, ciudad, cod_postal DF: {cod_postal} → { cod_postal, ciudad} Está en FNBC: No Está en 3FN: Sí ¿Cómo deshacerse de la redundancia? La idea es dividir la relación en subesquemas para poder cumplir con todas las propiedades de la cláusula “F+”. Se toma un esquema de relación R y se procede a realizar los siguientes pasos: 1.

Buscar una dependencia funcional X → Y que viole la FNBC.

2.

Descomponer el esquema. 2.1. Un esquema que tenga todos los atributos de R menos los atributos de la derecha de dependencia funcional (R - Y). Página 12 de 18

Normalización 3FN y FNBC – 4FN y 5FN 2.2. Y el otro esquema contiene los atributos de la dependencia funcional (X + Y). 3.

Si algunas de las dos nuevas relaciones o ambas no estás en FNBC repetir el proceso por cada relación que no la cumple desde el paso 1.

¿Cómo se sabe si se ha realizado una buena descomposición? •

Preservación de las dependencias. ✓



Si se mantienen todas las dependencias.

Descomposición “sin pérdida” de información. ✓

Si al combinar las instancias no “aparecen” nuevas tuplas.

Cuarta Forma Normal (4FN) Como consecuencia de la 1FN pueden aparecer dependencias multivaluadas las cuales se deberán eliminar. Para que una relación esté en 4FN todo determinante de una dependencia multivaluada debe ser una clave candidata y por tanto una dependencia funcional.

Página 13 de 18

Normalización 3FN y FNBC – 4FN y 5FN Envíos de pizzas Restaurante

Variedades por restaurante

Variedad de Pizza Área de envío

Restaurante

Variedad de pizza

Áreas de envío por restaurante Restaurante

Área de envío

Kentucky pizzeria Corteza gruesa

Palermo

Kentucky pizzeria

Corteza gruesa

Kentucky pizzeria

Palermo

Kentucky pizzeria Corteza gruesa

Belgrano

Kentucky pizzeria

Corteza fina

Kentucky pizzeria

Belgrano

Kentucky pizzeria Corteza fina

Palermo

Las Cañitas

Corteza fina

Pizza Tonno

Las Cañitas

Kentucky pizzeria Corteza fina Pizza Tonno Corteza fina

Belgrano Las Cañitas

Las Cañitas La Continental

Corteza rellena Corteza gruesa

La Continental La Continental

Vicente Lopez Barrio Norte

Pizza Tonno

Corteza rellena

Las Cañitas

La Continental

Corteza rellena

La Continental

Retiro

La Continental

Corteza gruesa

Vicente Lopez

La Continental

Corteza gruesa

Barrio Norte

La Continental La Continental

Corteza gruesa Corteza rellena

Retiro Vicente Lopez

La Continental

Corteza rellena

Barrio Norte

La Continental

Corteza rellena

Retiro

Página 14 de 18

Normalización 3FN y FNBC – 4FN y 5FN Cada fila indica que un restaurante dado puede entregar una vari...


Similar Free PDFs