normalización prof. gloria toro oñate © pearson education limited 1995, 2005

40
Normalización Prof. Gloria Toro Oñate © Pearson Education Limited 1995, 2005

Upload: andres-fuentes-alcaraz

Post on 25-Jan-2016

222 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Normalización Prof. Gloria Toro Oñate © Pearson Education Limited 1995, 2005

Normalización

Prof. Gloria Toro Oñate

© Pearson Education Limited 1995, 2005

Page 2: Normalización Prof. Gloria Toro Oñate © Pearson Education Limited 1995, 2005

2

Propósito de la Normalización

Es una técnica para producir un conjunto de relaciones con una serie de propiedades deseable, partiendo de los requisitos de datos de una organización

© Pearson Education Limited 1995, 2005

Page 3: Normalización Prof. Gloria Toro Oñate © Pearson Education Limited 1995, 2005

3

Propósito de la Normalización

Características de un conjunto adecuado de relaciones incluyen: – El número mínimo de atributos necesario para soportar los

requisitos de datos de la organización;

– Los atributos con una relación lógica fuerte (lo que se describe como dependencia funcional) se encuentran en la misma relación;

– Una redundancia minima, estando cada atributo representado una sola vez, con la importante excepción de aquellos atributos que forman parte de claves foráneas

© Pearson Education Limited 1995, 2005

Page 4: Normalización Prof. Gloria Toro Oñate © Pearson Education Limited 1995, 2005

4

Propósito de la Normalización

La ventaja de contar con una base de datos normalizada:– Es más fácil para el usuario accesar la BD y

mantenerla;– Ocupará un espacio de almacenamiento

mínimo en la computadora.

© Pearson Education Limited 1995, 2005

Page 5: Normalización Prof. Gloria Toro Oñate © Pearson Education Limited 1995, 2005

5

Cómo ayuda la normalización al diseño de BD

© Pearson Education Limited 1995, 2005

Utilización de una técnica top-down como el

modelado ER

Conjunto de relaciones bien diseñadas

Utilización de la normalización como técnica

de validación para comprobar la estructura de

las relaciones

Utilización de la normalización como técnica

top-down para crear un conjunto de relaciones

Usuarios

Especificación de requerimientos de usuario

Formularios/informes utilizados o generados por la

organización

Fuentes que describen la organización, como el

diccionario de datos y el modelo de datos corporativo

Fuentes de Datos

Técnica 1

Técnica 2

El modelado ER se hace corresponder con un conjunto de relaciones

Page 6: Normalización Prof. Gloria Toro Oñate © Pearson Education Limited 1995, 2005

6

Redundancia de los datos y anomalías de actualización

Uno de los objetivos principales del diseño de BD relacionales es agrupar los atributos en relaciones de modo que se minimice la redundancia de los datos.

Diversas ventajas– Las actualizaciones de los datos almacenados pueden llevarse

a cabo con un número mínimo de operaciones, reduciendo la posibilidad de que aparezcan incoherencias

– Se reduce el espacio de almacenamiento de archivos requerido por las relaciones base, esto minimiza costo

© Pearson Education Limited 1995, 2005

Page 7: Normalización Prof. Gloria Toro Oñate © Pearson Education Limited 1995, 2005

7

Redundancia de los datos y anomalías de actualización

© Pearson Education Limited 1995, 2005

Page 8: Normalización Prof. Gloria Toro Oñate © Pearson Education Limited 1995, 2005

8

Redundancia de los datos y anomalías de actualización

Las relaciones que contienen información redundante pueden presentar problemas que se denominan ‘anomalías de actualización’.

Tipos

– Inserción

– Borrado

– Modificación

© Pearson Education Limited 1995, 2005

Page 9: Normalización Prof. Gloria Toro Oñate © Pearson Education Limited 1995, 2005

9

Redundancia de los datos y anomalías de actualización

Dos importantes propiedades en la descomposición.

– Propiedad si pérdidas garantiza que cualquier instancia de la relación original pueda ser identificada a partir de las instancías correspondientes de las relaciones mas pequeñas.

– Preservación de la dependencia garantiza que una restricción de la relación original pueda mantenerse simplemente imponiendo alguna restricción a cada una de las relaciones mas pequeñas.

© Pearson Education Limited 1995, 2005

Page 10: Normalización Prof. Gloria Toro Oñate © Pearson Education Limited 1995, 2005

10

Dependencias Funcionales

Importante concepto con la normalización.

Las dependencias funcionales describen las relaciones entre los atributos.

Por ejemplo, si A y B son atributos de una relación R, B será funcionalmente dependiente de A (denotado como A B), si cada valor de A está asociado con exactamente un valor de B in R.

© Pearson Education Limited 1995, 2005

Page 11: Normalización Prof. Gloria Toro Oñate © Pearson Education Limited 1995, 2005

11

Características de las Dependencias funcionales Es una propiedad del significado de los atributos de una

relación.

Representación:

Determinante hace referencia al atributo o grupo de atributos en el lado izquierdo de la flecha que describe una dependencia funcional.

© Pearson Education Limited 1995, 2005

Page 12: Normalización Prof. Gloria Toro Oñate © Pearson Education Limited 1995, 2005

12

Ejemplo de Dependencia Funcional

© Pearson Education Limited 1995, 2005

Page 13: Normalización Prof. Gloria Toro Oñate © Pearson Education Limited 1995, 2005

13

Ejemplo de una dependencia funcional que se cumple en cualquier instante

Considere los valores mostrados para los atributos staffNo y sName de la relacion Staff (Diapositiva 7).

Basada en la porción de datos, las siguientes se soportan las siguientes dependencias funcionales.

staffNo → sName

sName → staffNo

© Pearson Education Limited 1995, 2005

Page 14: Normalización Prof. Gloria Toro Oñate © Pearson Education Limited 1995, 2005

14

Ejemplo de una dependencia funcional que se cumple en cualquier instante

La Dependencia Funcional que sigue siendo cierta después de considerar tdos los posibles valores de los atributos staffNo y sName en la relación Staff es:

staffNo → sName

© Pearson Education Limited 1995, 2005

Page 15: Normalización Prof. Gloria Toro Oñate © Pearson Education Limited 1995, 2005

15

Características de la Dependencias Funcionales

Los determinantes deben tener el número mínimo de atributos necesario para mantener la dependencia funcional de los atributos del lado derecho.

Este requisito se denomina dependencia funcional completa.

Indica que si A y B son atributos de una relación, B depende funcionalmente de manera completa de A si B depende funcionalmente de A pero no de ningún subconjunto propio de A

© Pearson Education Limited 1995, 2005

Page 16: Normalización Prof. Gloria Toro Oñate © Pearson Education Limited 1995, 2005

16

Ejemplo de Dependencia Funcional completa

Existe en la relación Staff (Diapositiva 7).

staffNo, sName → branchNo

Verdadera – cada valor de (staffNo, sName) está asociado con un único valor de branchNo.

Sin embargo, branchNo es también funcionalmente dependiente de un subconjunto (staffNo, sName), en concreto de staffNo. Lo que quiere decir que hay una dependencia parcial.

© Pearson Education Limited 1995, 2005

Page 17: Normalización Prof. Gloria Toro Oñate © Pearson Education Limited 1995, 2005

17

Características de las Dependencias Funcionales

Las DF que utilizamos en el proceso de normalización tienen las siguientes características:– Hay una relación uno-a-uno entre los atributos del lado izquierdo

(determinante) y los del lado derecho de la dependencia funcional

– Se cumplen en todo instante del tiempo

– El determinante tiene el número mínimo de atributos necesarios para mantener la dependencia con los atributos del lado derecho.

© Pearson Education Limited 1995, 2005

Page 18: Normalización Prof. Gloria Toro Oñate © Pearson Education Limited 1995, 2005

18

Dependencias Transitivas

Es importante reconocer las Dependencias Transitivas porque su existencia en una relación podría llegar a causar los tipos de anomalías de actualización.

Dependencia Transitiva: Una condición en la que A, B, y C son atributos de una relación tales que si A → B y B → C, entonces C depende transitivamente de A a traves de B (supuesto que A no sea funcionalmente dependiente de B o C).

© Pearson Education Limited 1995, 2005

Page 19: Normalización Prof. Gloria Toro Oñate © Pearson Education Limited 1995, 2005

19

Ejemplo de Dependencia Funcional Transitiva

Considere las siguientes dependencias funcionales en la relacion StaffBranch (Diapositiva 7).

staffNo → sName, position, salary, branchNo, bAddress

branchNo → bAddress

La dependencia transitiva branchNo → bAddress existe en staffNo a través de branchNo.

© Pearson Education Limited 1995, 2005

Page 20: Normalización Prof. Gloria Toro Oñate © Pearson Education Limited 1995, 2005

20

Identificación de Dependencias Funcionales

Las DF se identifican entre un conjunto de atributos comprendiendo bien el significado de cada uno y las relaciones existentes entre ellos.

Sin embargo, si los usuarios no están disponibles para consultar y/o la información es incompleta, entonces puede ser necesario, dependiendo de la aplicación de BD, que el diseñador utilice su sentido común y/o experiencia para suplir la información que falta.

© Pearson Education Limited 1995, 2005

Page 21: Normalización Prof. Gloria Toro Oñate © Pearson Education Limited 1995, 2005

21

Ejemplo – Identificación de un conjunto de DF para la relación StaffBranch

Examinando la semántica de los atributos de la relación StaffBranch (Diapositiva 7). Suponer que la categoría laboral (position) y la sucursal determinan el salario (salary) de cada empleado.

Con la comprensión de los atributos de la relación StaffBranch , resulta:

staffNo → sName, position, salary, branchNo, bAddressbranchNo → bAddressbAddress → branchNobranchNo, position → salarybAddress, position → salary

© Pearson Education Limited 1995, 2005

Page 22: Normalización Prof. Gloria Toro Oñate © Pearson Education Limited 1995, 2005

22

Ejemplo – Utilización de datos de ejemplo para identificar DF

Considere los datos para los atributos A, B, C, D, y E en la relación Sample (Diapositiva 24).

Es importante comprobar primero que los valores de los datos mostrados en esta relación son representativos de todos los prosibles valores que puedan contener los atributos A, B, C, D, y E.

© Pearson Education Limited 1995, 2005

Page 23: Normalización Prof. Gloria Toro Oñate © Pearson Education Limited 1995, 2005

23

Ejemplo – Utilización de datos de ejemplo para identificar DF

© Pearson Education Limited 1995, 2005

Page 24: Normalización Prof. Gloria Toro Oñate © Pearson Education Limited 1995, 2005

24

Ejemplo – Utilización de datos de ejemplo para identificar DF

Dependencias Funcionales entre los atributos A a E de la relación Sample.

A C (fd1)

C A (fd2)

B D (fd3)

A, B E (fd4)

© Pearson Education Limited 1995, 2005

Page 25: Normalización Prof. Gloria Toro Oñate © Pearson Education Limited 1995, 2005

25

Identificación de la PK de una relación utilizando DF

El objetivo principal de identificar un conjunto de DF para una relación es el de especificar el conjunto de restricciones de integridad que la relación debe satisfacer.

Una restricción de integridad importante que hay que considerar en primer lugar es la identificación de las claves candidatas, una de las cuales será seleccionada como clave primaria de la relación.

© Pearson Education Limited 1995, 2005

Page 26: Normalización Prof. Gloria Toro Oñate © Pearson Education Limited 1995, 2005

26

Ejemplo – Identificación de la clave primaria de la relación StaffBranch

La relación StaffBranch tiene cinco dependencias funcionales (diap. 22).

Los determinantes son staffNo, branchNo, bAddress, (branchNo, position), y (bAddress, position).

Para identificar todas las claves candidatas, se debe identificar el atributo (o grupo de atributos) que identifique univocamente cada tupla de esta relación.

Todos los atributos que no formen parte de la PK deben depender funcionalmente de la clave

La unica clave de la relación StaffBranch, por lo tanto es staffNo, ya que todos los demas atributos de la relación dependen funcionalmente de staffNo

© Pearson Education Limited 1995, 2005

Page 27: Normalización Prof. Gloria Toro Oñate © Pearson Education Limited 1995, 2005

27

Ejemplo – Identificación de la clave primaria de la relación Sample

La relación Sample tiene cuatro DF (Dispositiva 25 ).

Los determinantes de la relación son A, B, C, y (A, B). Sin embargo, el único determinante que determina funcionalmente todos los atributos de la relación es (A, B).

(A, B) es identificado como la PK de esta relación.

© Pearson Education Limited 1995, 2005

Page 28: Normalización Prof. Gloria Toro Oñate © Pearson Education Limited 1995, 2005

28

El Proceso de Normalización

La normalización es una técnica formal para analizar relaciones basandose en su clave principal y en las DF (Codd).

Esta técnica implica una serie de reglas que pueden utilizarse para probar relaciones individuales.

A medida que avanza el proceso de normalización, las relaciones tienen un formato cada vez mas restringido (mas fuerte) y son menos vulnerables a las anomalías de actualización.

© Pearson Education Limited 1995, 2005

Page 29: Normalización Prof. Gloria Toro Oñate © Pearson Education Limited 1995, 2005

29

El Proceso de Normalización

© Pearson Education Limited 1995, 2005

Page 30: Normalización Prof. Gloria Toro Oñate © Pearson Education Limited 1995, 2005

30

El Proceso de Normalización

© Pearson Education Limited 1995, 2005

Usuario Especificación de requisitos del usuario

Formularios/informes utilizados o generados por la

organización

Fuentes que describen la organización, como el

diccionario de datos y el modelo de datos corporativo

Forma no normalizada (UNF)

Primera Forma Normal (1NF)

Segunda Forma Normal (2NF)

Tercera Forma Normal (3NF)

Fuentes de datos

Transferir los atributos a formatos de tabla

Eliminación de grupos repetidos

Eliminación de dependencias parciales

Eliminación de dependencias transitivas

Page 31: Normalización Prof. Gloria Toro Oñate © Pearson Education Limited 1995, 2005

31

Forma No-normalizada (UNF)

Una tabla que contiene uno o mas grupos repetidos.

Para crear una tabla desnormalizada– Transformar los datos que provienen de las

fuentes de información (p.e. formularios) en una tabla con columnas y filas.

© Pearson Education Limited 1995, 2005

Page 32: Normalización Prof. Gloria Toro Oñate © Pearson Education Limited 1995, 2005

32

Primera Forma Normal (1NF)

Una relación en que la intersección de toda fila y columna contiene uno y sólo un valor.

© Pearson Education Limited 1995, 2005

Page 33: Normalización Prof. Gloria Toro Oñate © Pearson Education Limited 1995, 2005

33

UNF a 1NF

Un grupo repetitivo es un atributo, o grupo de atributos, dentro de una tabla que presentan múltiples valores para un mismo valor de los atributos designados como clave principal de esa tabla.

El término ‘clave’ hace referencia al atributo(s) que identifican unívocamente cada fila de la tabla no normalizada.

Tecnica para eliminar los grupos repetidos:

– Introduciendo datos apropiados en las columnas vacías de las filas que contienen los datos repetitivos.

– Colocando los datos repetitivos, junto con una copia de los atributos clave originales en una relación independiente

© Pearson Education Limited 1995, 2005

Page 34: Normalización Prof. Gloria Toro Oñate © Pearson Education Limited 1995, 2005

34

Segunda Forma Normal(2NF)

Basada en el concepto de dependencia funcional completa.

DF Completa indica que si:– A y B son atributos de una relación, – B es completamente dependiente de A si B es

funcionalmente dependiente de A pero no de un subconjunto de A.

© Pearson Education Limited 1995, 2005

Page 35: Normalización Prof. Gloria Toro Oñate © Pearson Education Limited 1995, 2005

35

Segunda Forma Normal (2NF)

Una relación A que está en 1NF y en la que todo atributo que no sea de clave primaria depende funcionalmente de manera completa de la PK.

© Pearson Education Limited 1995, 2005

Page 36: Normalización Prof. Gloria Toro Oñate © Pearson Education Limited 1995, 2005

36

De 1NF a 2NF

Identificar la Clave Primaria de la relación que está en 1NF.

Identificar las dependencias funcionales en la relación.

Si existen dependencias parciales sobre la PK, se eliminan de la relación los atributos parcialmente dependientes, situandolos en una nueva relación junto con una copia de sus determinantes.

© Pearson Education Limited 1995, 2005

Page 37: Normalización Prof. Gloria Toro Oñate © Pearson Education Limited 1995, 2005

37

Tercera Forma Normal (3NF)

Basado en el concepto de dependencia transitiva.

Dependencia Transitiva es un condición donde– A, B y C son atributos de una relación tal que si

A B y B C, – Entonces C es transitivamente dependiente de A

a través B.

© Pearson Education Limited 1995, 2005

Page 38: Normalización Prof. Gloria Toro Oñate © Pearson Education Limited 1995, 2005

38

Tercera Forma Normal (3NF)

Una relación que está en 1NF y 2NF y en la que ningún atributo que no sea de la clave primaria depende transitivamente de la PK.

© Pearson Education Limited 1995, 2005

Page 39: Normalización Prof. Gloria Toro Oñate © Pearson Education Limited 1995, 2005

39

De 2NF a 3NF

Identificar la clave primaria de la relación en 2NF.

Identificar las dependencias funcionales de la relación.

Si exite dependencia transitiva sobre la clave primaria, se elimina de la relación los atributos que dependen transitivamente, situandolos en una nueva relación junto con una copia del determinante.

© Pearson Education Limited 1995, 2005

Page 40: Normalización Prof. Gloria Toro Oñate © Pearson Education Limited 1995, 2005

40

Definiciones Generales de las formas 2NF y 3NF

Segunda Forma Normal (2NF)– Una relación que está en primera forma normal y

en la que todo atributo que sea de calve candidata dependen funcionalmente de modo completo de cualquier clave candidata

Tercera Forma Normal (3NF)– Una relación que se encuentra en primera y

segunda formas normales y en la que ningún atributo que no sea de clave candidata depende transitivamente de ninguna clave candidata.

© Pearson Education Limited 1995, 2005