Está en la página 1de 41

Normalizacin

Bases de Datos

Por
Elizabeth Len Guzmn, Ph.D.
Profesora
Ingeniera de Sistemas
Grupo de Investigacin MIDAS
Universidad Nacional Prof. Elizabeth Len

Bases de Datos - Normalizacin

Agenda
1. Diseo de Bases de Datos
2. Normalizacin
3. Dependencia Funcional
4. Primera Forma 1FN
5. Segunda Forma 2FN
6. Tercera Forma 3FN
7. Forma Normal de Boyce Codd BCFN
8. Cuarta Forma 4FN
Universidad Nacional Prof. Elizabeth Len

Bases de Datos - Normalizacin

Diseo de Bases de Datos


Relacionale
Por diseo se entiende el generar un
conjunto de esquemas de relaciones que
permitan almacenar informacin con un
mnimo de redundancia de datos y una
fcil recuperacin de la informacin.

Universidad Nacional Prof. Elizabeth Len


Universidad Nacional Prof. Elizabeth Len

Bases de Datos - Normalizacin

Bases de Datos - Normalizacin

Objetivos
Mantener la Integridad de los datos.
Eliminar informacin redundante siempre
que sea posible.
Mantener el nmero de relaciones al mnimo
entre los componentes de la base de datos
(fcil programacin y uso por parte del
usuario).
Minimizar problemas de actualizacin y
borrado.
Universidad Nacional Prof. Elizabeth Len

Bases de Datos - Normalizacin

Normalizacin
La Normalizacin es la descomposicin o
subdivisin de una relacin en dos o mas
relaciones para evitar la redundancia.
Tambin se puede ver como una serie de
reglas que ayudan a los diseadores de
bases de datos a desarrollar un esquema que
minimice los problemas de lgica.
Universidad
Nacional
Prof.
Elizabeth
Universidad Nacional
Prof.
Elizabeth
Len Len

Bases de
Datos
- Normalizacin
Bases
de Datos
- Normalizacin

DEPENDENCIA FUNCIONAL: DF
La Normalizacin se basa en la dependencia
funcional:
Dependencia funcional se define como: Dados dos
atributos A y B de una relacin R, se dice que B es
funcionalmente dependiente de A si para cada valor de
A existe un valor de B, y slo uno, asociado con l.
Se denota como

Estudiante
Cdigo

Nombre

Apellido

253420

Juan

Ruiz

254210

Maria

Lpez

255820

Juan

Diaz

263100

Luisa

Avila

Universidad Nacional Prof. Elizabeth Len

Cdigo

Nombre

Cdigo

Apellido

Bases de Datos - Normalizacin

DEPENDENCIA FUNCIONAL: DF
Las DF se determinan al estudiar las
propiedades de todos los atributos de la
relacin y deducir cmo estn relacionados
los atributos entre si.

DEPENDENCIA FUNCIONAL: DF
La DF est ligada con el concepto de clave.
Clave candidata: Conjunto de uno o ms atributos que
podra ser utilizado como clave principal de una relacin.
Superclave: Conjunto de uno o ms atributos que
juntos, permiten identificar de forma nica una entidad
dentro de una relacin.
Clave principal: Es una clave candidata en la que
ningn componente puede tomar el valor de nulo.
Universidad Nacional Prof. Elizabeth Len

Bases de Datos - Normalizacin

Normalizacin
El proceso de normalizacin es definido por
una serie de fases cada una con una serie
de reglas especficas.
Veamos un ejemplo

Universidad Nacional Prof. Elizabeth Len

Bases de Datos - Normalizacin

Se desea implantar en una base de datos las ventas


de una papelera por la relacin ORDENES-VENTA
Relacin ORDENES-VENTA
ClienteID

Nombre

Localidad

CostoTransporte

ArtculoID

Artculo

Cantidad

Fecha

11

Luis

Suba

50.000

A1

Papel

100

3/5

11

Luis

Suba

50.000

A3

Cinta

50

5/5

11

Luis

Suba

50.000

A9

Lpiz

200

7/5

44

Ana

Centro

65.000

A1

Papel

100

10/5

55

Jos

Puente
Aranda

70.000

A4

Grapas

30
50

3/5
5/5

Universidad Nacional Prof. Elizabeth Len

Bases de Datos - Normalizacin

Primera Forma 1FN


Una relacin est en primera forma normal si todo atributo
contiene un valor indivisible, atmico.
En una relacin sin normalizar como la anterior se encuentra
por ejemplo lo siguiente:
55

Jos

Puente
Aranda

70.000

A4

Grapas

30
50

3/5
5/5

Se puede normalizar con la creacin de un registro nuevo


por cada uno de los distintos valores de un campo
55

Jos

Puente
Aranda

70.000

A4

Grapas

30

3/5

55

Jos

Puente
Aranda

70.000

A4

Grapas

50

5/5

Universidad Nacional Prof. Elizabeth Len

Bases de Datos - Normalizacin

Primera Forma 1FN


Relacin ORDENES-VENTA
ClienteID

Nombre

Localidad

CostoTransporte

ArtculoID

Artculo

Cantidad

Fecha

11

Luis

Suba

50.000

A1

Papel

100

3/5

11

Luis

Suba

50.000

A3

Cinta

50

5/5

11

Luis

Suba

50.000

A9

Lpiz

200

7/5

44

Ana

Centro

65.000

A1

Papel

100

10/5

55

Jos

Puente
Aranda

70.000

A4

Grapas

30

3/5

55

Jos

Puente
Aranda

70.000

A4

Grapas

50

5/5

Primera Forma 1FN


Hecho lo anterior an se presentan una serie
de anomalas de almacenamiento a la
hora de realizar las actualizaciones por la
informacin redundante.
Ests anomalas se deben a la presencia de
campos no clave (llave) en la relacin.

Universidad Nacional Prof. Elizabeth Len

Bases de Datos - Normalizacin

Primera Forma 1FN


Las anomalas pueden subsanarse de la siguiente forma:
Dividiendo la relacin universal en nuevas relaciones.
Eligiendo una clave primaria que represente de forma
nica a cada registro de las nuevas relaciones. Cada
nueva relacin tiene la propiedad de que su clave es
necesaria para definir cada uno de los campos no clave.
Veamos como resulta el diseo de nuestra base de datos al
aplicar la 1FN en su totalidad

Universidad Nacional Prof. Elizabeth Len

Bases de Datos - Normalizacin

Segunda Forma 2FN


Relacin CLIENTE
ClienteID

Nombre

Localidad

CostoTransporte

11

Luis

Suba

50.000

44

Ana

Centro

65.000

55

Jos

Puente
Aranda

70.000

Relacin VENTA
ClienteID

ArtculoID

Cantidad

Fecha

11

A1

100

3/5

11

A3

50

5/5

11

A9

200

7/5

44

A1

100

10/5

55

A4

30

3/5

55

A4

50

5/5

Universidad Nacional Prof. Elizabeth Len

Relacin ARTCULO
ArtculoID

Artculo

A1

Papel

A3

Cinta

A4

Grapas

A9

Lpiz

Bases de Datos - Normalizacin

Segunda Forma Normal 2FN


Una relacin est en segunda forma normal si,
y slo si:
Est en 1FN
Todo atributo que no pertenezca a la clave
debe depender de la clave en su
totalidad. Es decir, los registro no deben
depender de nada aparte de su clave
primaria.

Universidad Nacional Prof. Elizabeth Len

Bases de Datos - Normalizacin

Segunda Forma 2FN


Las relaciones CLIENTES, ARTICULOS y VENTAS
pertenecen ya a la 2FN. Sin embargo, la relacin
CLIENTES presenta anomalas de almacenamiento
debido a que el atributo CostoTransporte es
funcionalmente dependiente de la Localidad, que a su
vez depende de ClienteID.
Relacin CLIENTE

Hay una dependencia transitiva


que ocasiona problemas a la

ClienteID

Nombre

Localidad

CostoTransporte

11

Luis

Suba

50.000

44

Ana

Centro

65.000

55

Jos

Puente
Aranda

70.000

hora de hacer actualizaciones


Universidad Nacional Prof. Elizabeth Len

Bases de Datos - Normalizacin

Dependencia Transitiva
Se tiene la relacin R(A,B,C). Si
A

y A no depende funcionalmente de B, entonces


se dice que C depende transitivamente de A y
se puede formar la cadena
A

Universidad Nacional Prof. Elizabeth Len

Bases de Datos - Normalizacin

Tercera Forma Normal 3FN


Una relacin est en 3FN si, y slo si:
Est en 2FN.
Todo atributo que no pertenezca a la clave
no depende de un atributo no clave.
La 3FN elimina las redundancias ocasionadas
por las dependencias transitivas.

Universidad Nacional Prof. Elizabeth Len

Bases de Datos - Normalizacin

Tercera Forma Normal 3FN


Aplicando la 3FN a la relacin CLIENTES
Relacin CLIENTES

Relacin TRANSPORTE

ClienteID

Nombre

Localidad

Localidad

CostoTransporte

11

Luis

Suba

Suba

50.000

44

Ana

Centro

Centro

65.000

55

Jos

Puente
Aranda

Puente Aranda

70.000

Universidad Nacional Prof. Elizabeth Len

Bases de Datos - Normalizacin

Tercera Forma Normal 3FN


Deficiencias:

1) hay varias claves candidatas

2) esas claves candidatas son compuestas

3) las claves candidatas se traslapan (tienen


por lo menos un atributo en comn)

Raramente!
Universidad Nacional Prof. Elizabeth Len

Bases de Datos - Normalizacin

Forma Normal de Boyce Codd BCFN

Una relacin R est en forma normal Boyce


Codd si, y slo si, cada determinante de la
relacin es una clave candidata.
no existen dependencias funcionales no
triviales de los atributos que no sean un
conjunto de la clave candidata

Universidad Nacional Prof. Elizabeth Len

Bases de Datos - Normalizacin

Forma Normal de Boyce Codd BCFN


Como ejemplo veamos la relacin R: Un empleado puede trabajar
en varios de partamentos y tiene mximo un asesor en cada
departamento:
Id_empleado

id_departamento

Id_asesor

La llave primaria es compuesta: id_empleado, id_departamento.


Est en 3FN?

Si aadimos una restriccin:


el asesor solo puede pertenecer a un departamento
Qu sucede? Sigue estando en 3FN?
Universidad Nacional Prof. Elizabeth Len

Bases de Datos - Normalizacin

Forma Normal de Boyce Codd BCFN


el asesor solo puede pertenecer a un departamento...
Id_empleado

id_departamento

Id_asesor

Aparece una dependencia funcional:


id_asesor

id_departamento

R
Id_empleado

Id_departamento

Id_asesor

11

D1

Juanito

11

D3

Pepito

11

Cmo?
D9

Anita

44

D1

Juanito

44

D4

Andreita

55

D4

Luisito

55

D1

Juanito

Universidad Nacional Prof. Elizabeth Len

Un atributo de la
llave depende
de un atributo no
llave (determinante)

Bases de Datos - Normalizacin

Forma Normal de Boyce


Codd BCFN
Por lo tanto existe un determinante que NO es clave candidata.
Genera redundancia:
la repeticin de id_asesor, id_departamento es evitable.
Id_empleado

Id_departamento

Id_asesor

11

D1

Juanito

11

D3

Pepito

11

D9

Anita

44

D1

Juanito

44

D4

Andreita

55

D4

Luisito

55

D1

Juanito

Universidad Nacional Prof. Elizabeth Len

Cmo?

Bases de Datos - Normalizacin

Forma Normal de Boyce Codd BCFN

Id_asesor

Id_departamento

Juanito

D1

Pepito

D3

Anita

D9

Andreita

D4

Luisito

D4

Universidad Nacional Prof. Elizabeth Len

Id_empleado

Id_asesor

11

Juanito

11

Pepito

11

Anita

44

Juanito

44

Andreita

55

Luisito

55

Juanito

Bases de Datos - Normalizacin

Forma Normal de Boyce Codd BCFN


Como ejemplo veamos la relacin QUESOS (NOMBRE,PAIS,REGION). La
clave candidata es (NOMBRE, PAIS) con las DF siguientes:
REGION

PAIS

(NOMBRE,PAIS)

REGION

La relacin est en 3FN porqu ningn atributo no clave es


transitivamente dependiente de atributos no clave. Sin embargo no es
BCFN ya que REGION, un atributo no clave, es un determinante de pas.
Esto origina redundancia y puede resolverse formando dos relaciones
nuevas:
QUESOS(NOMBRE,REGION)
REGIONES(REGION,PAIS)

Universidad Nacional Prof. Elizabeth Len

NOMBRE

REGION

REGION

PAIS

Bases de Datos - Normalizacin

Forma Normal de Boyce Codd BCFN

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. En trminos
menos formales, una tabla est en FNBC si est en
3FN y los nicos determinantes son claves
candidatas.

Universidad Nacional Prof. Elizabeth Len

Bases de Datos - Normalizacin

Dependencias de Valores Mltiples

En la dependencia de valores mltiples


(DMV), un valor atributo, A, determina un
conjunto de valores mltiples, B. Se expresa
con doble fecha:

Universidad Nacional Prof. Elizabeth Len

Bases de Datos - Normalizacin

Dependencias de Valores Mltiples


Consideremos la relacin
ESTUDIANTE (Num, Curso, Deporte)
que indica su nmero, el curso donde est
matriculado y los deportes que practica.
ESTUDIANTE
Num

Curso

Deporte

10

Bases de Datos

Baloncesto

10

Bases de Datos

Natacin

10

Bases de Datos

Tenis

20

Fsica

Baloncesto

20

Fsica

Esgrima

Universidad Nacional Prof. Elizabeth Len

Bases de Datos - Normalizacin

Dependencias de Valores Mltiples

La relacin anterior est en 3FN pero


presenta redundancia de datos an.
Los atributos Curso y Deporte son
dependientes multivalores de Num, es decir,
cualquier valor de Num determina una serie de
valores de los atributos Curso y Deporte.

Universidad Nacional Prof. Elizabeth Len

Bases de Datos - Normalizacin

Cuarta Forma Normal4FN


La 4FN es una generalizacin de la BCFN
para descomponer relaciones que posean
dependencias multivaluadas.
Una relacin R est en 4FN si, y slo si:
Es BCFN
No contiene dependencias multivaludas

Universidad Nacional Prof. Elizabeth Len

Bases de Datos - Normalizacin

Cuarta Forma Normal 4FN


La relacin R(A,B,C) con las dependencias
multivaluadas :

Se puede descomponer sin prdida en dos


relaciones 4FN: R1(A,B) y R2(A,C).

Universidad Nacional Prof. Elizabeth Len

Bases de Datos - Normalizacin

Cuarta Forma Normal 4FN


Volviendo al ejemplo de la relacin
ESTUDIANTE, y aplicando la 4FN, se generan las
siguientes relaciones:
ESTUDIANTE
Num
Curso

PRACTICA
Num
Deporte
10

Baloncesto

10

Base de datos

10

Natacin

20

Fsica

10

Tenis

20

Baloncesto

20

Esgrima

Universidad Nacional Prof. Elizabeth Len

Bases de Datos - Normalizacin

4FN - Dependencias multivaluadas

Id_asesor

Id_departamento

Juanito

D1

Pepito

D3

Anita

D9

Andreita

D4

Luisito

D4

Universidad Nacional Prof. Elizabeth Len

Id_empleado

Id_asesor

11

Juanito

11

Pepito

11

Anita

44

Juanito

44

Andreita

55

Luisito

55

Juanito

Bases de Datos - Normalizacin

Ms Formas Normales

La 4FN no es definitiva
Dependencias de reunin: Forma
Normal de Reunin por Proyeccin
FNRP o Quinta Forma Normal
Forma Normal de Dominios y Claves
FNDC

FNRP y FNDC se utilizan muy rara vez!


Universidad Nacional Prof. Elizabeth Len

Bases de Datos - Normalizacin

El Modelo ER y la Normalizacin

Si el modelo E-R es identificado


correctamente (entidades, relaciones,
etc) los esquemas de relacin
generados a partir de l NO DEBEN
necesitar mucha normalizacin
Si se debe realizar mucha
normalizacin es por que el diseo
del diagrama fue mal realizado

Universidad Nacional Prof. Elizabeth Len

Bases de Datos - Normalizacin

El Modelo ER y la Normalizacin

En general, el diseo E-R tiende a


generar diseos en 4FN

Modelo E-R
Universidad Nacional Prof. Elizabeth Len

Normalizacin
en 4FN
Bases de Datos - Normalizacin

Desnormalizacin

Por rendimiento
Usan la reduncia por mejorar el
rendimiento de aplicaciones
concretas!.
El problema es garantizar que los
datos se mantengan consistentes!

Bibliografa
RODRGUEZ ALMEIDA, Miguel. Diseo de
bases de datos. En: BASES DE DATOS.
Madrid: Mc Graw Hill, 1992. Pg. 209-218.

Universidad Nacional Prof. Elizabeth Len

Bases de Datos - Normalizacin

Ejercicio!
Se tiene la relacin R

R = { EstudianteID, Apellido, Nombre, CodigoCurso,


SeccionCurso, NombreCurso, Nota, ApellidoProfesor,
NombreProfesor, Edificio, OficinaProf }
Normalizar hasta 4 forma normal.

También podría gustarte