Академический Документы
Профессиональный Документы
Культура Документы
o
Dra. Amparo Lpez Gaona
o
Normalizacin
o
Introduccin
o
La forma aceptada de eliminar la redundancia es la descomposicin de
o
relaciones.
Dada una relacin R (A1 , A2 , ...An ), se puede descomponer R en dos
o
relaciones S(B1 , B2 , ..., Bi ) y T(C1 , C2 , ..., Cj ) tales que:
1
Normalizacin
o
nombreSuc
Centro
Viveros
Centro
Eugenia
Zapata
San Angel
Tlalpan
Centro
Las Fuentes
delegacin
o
Cuauhtmoc
e
Coyoacn
a
Cuauhtmoc
e
Benito Jurez
a
Benito Jurez
a
Alvaro Obregn
o
Tlalpan
Cuauhtmoc
e
Tlalpan
activo
1,800 M
340 M
1,800 M
80 M
1,600 M
60 M
740 M
1,800 M
1,420 M
nombreCte
Santos
Lpez
o
Toledo
Santos
Abril
Vzquez
a
Lpez
o
Gonzlez
a
Amor
nPrstamo
e
P-17
P-15
P-14
P-93
P-11
P-29
P-16
P-23
P-10
importe
200,000
300,000
300,000
100,000
180,000
240,000
260,000
400,000
440,000
Si se descompone la relacin en
o
Una relacin Sucursal (nombreSuc, delegacin, activo,
o
o
nombreCliente):
y
Una relacin Prstamo (nombreCliente, numPrstamo, importe)
o
e
e
Normalizacin
o
nombreSuc
delegacin
o
activo nombreCliente
Centro
Cuauhtmoc
e
1,800,000,000 Santos
Copilco
Coyoacn
a
420,000,000 Gmez
o
Viveros
Coyoacn
a
340,000,000 Lpez
o
Centro
Cuauhtmoc
e
1,800,000,000 Toledo
Eugenia
Benito Jurez
a
80,000,000 Santos
Zapata
Benito Jurez
a
1,600,000,000 Abril
San Angel
Alvaro Obregn
o
60,000,000 Vzquez
a
Tlalpan
Tlalpan
740,000,000 Lpez
o
Centro
Cuauhtmoc
e
1,800,000,000 Gonzlez
a
Viveros
Coyoacn
a
340,000,000 Rodr
guez
Las Fuentes Tlalpan
1,420,000,000 Amor
nombreCliente numPrstamo importe
e
Santos
P-17
200,000
Gmez
o
P-23
400,000
Lpez
o
P-15
300,000
Toledo
P-14
300,000
Santos
P-93
100,000
Abril
P-11
180,000
Vzquez
a
P-29
240,000
Posgrado
a
P-16 o
260,000en Ciencia e Ingenier de la Compu
Dra. Amparo Lpez Gaona Lpez
o
()o
Normalizacin
/1
Consultas
Encontrar todas las sucursales tales que tienen prstamos con importe
e
menor a 200,000 pesos.
Con el esquema original.
Normalizacin
o
Consultas
Encontrar todas las sucursales tales que tienen prstamos con importe
e
menor a 200,000 pesos.
Con el esquema original. Eugenia y Zapata.
Con el esquema fraccionado.
Normalizacin
o
Consultas
Encontrar todas las sucursales tales que tienen prstamos con importe
e
menor a 200,000 pesos.
Con el esquema original. Eugenia y Zapata.
Con el esquema fraccionado. Eugenia, Zapata y Centro.
Indicar los prstamos que se tienen en cada sucursal:
e
Normalizacin
o
Consultas
Encontrar todas las sucursales tales que tienen prstamos con importe
e
menor a 200,000 pesos.
Con el esquema original. Eugenia y Zapata.
Con el esquema fraccionado. Eugenia, Zapata y Centro.
Indicar los prstamos que se tienen en cada sucursal:
e
Sucursal Prestamo slo para Santos dar
o
a
Centro
Centro
Eugenia
Eugenia
Cuauhtemoc
Cuauhtemoc
Coyoacan
Coyoacan
Santos
Santos
Santos
Santos
P-17
P-93
P-17
P-93
Normalizacin
o
200
100
200
100
Consultas
Encontrar todas las sucursales tales que tienen prstamos con importe
e
menor a 200,000 pesos.
Con el esquema original. Eugenia y Zapata.
Con el esquema fraccionado. Eugenia, Zapata y Centro.
Indicar los prstamos que se tienen en cada sucursal:
e
Sucursal Prestamo slo para Santos dar
o
a
Centro
Centro
Eugenia
Eugenia
Cuauhtemoc
Cuauhtemoc
Coyoacan
Coyoacan
Santos
Santos
Santos
Santos
P-17
P-93
P-17
P-93
200
100
200
100
juntarlas se usa este atributo que no es adecuado puesto que cliente puede
tener varios prstamos no necesariamente en la misma sucursal.
e
Normalizacin
o
Requisitos
Para la normalizacin se desea:
o
Eliminar las anomal
as.
Que las relaciones fraccionadas tengan un join sin prdida.
e
(Recuperacin de la informacin)
o
o
Conservar las dependencias funcionales.
Normalizacin
o
Normalizacin
o
Normalizacin
o
Normalizacin
o
Normalizacin
o
Normalizacin
o
Normalizacin
o
Normalizacin
o
Normalizacin
o
Normalizacin
o
Normalizacin
o
Normalizacin
o
Normalizacin
o
Normalizacin
o
Normalizacin
o
Normalizacin
o
Normalizacin
o
Normalizacin
o
X+
X+
Normalizacin
o
X+
Ejemplo
La relacin P(nombreSuc, nombreCliente, numPrstamo, importe)
o
e
con
F = {numPrstamo importe nombreSuc}
e
Se descompone en:
Normalizacin
o
Ejemplo
La relacin P(nombreSuc, nombreCliente, numPrstamo, importe)
o
e
con
F = {numPrstamo importe nombreSuc}
e
Se descompone en:
P1(numPrstamo, importe, nombreSuc)
e
Normalizacin
o
Ejemplo
La relacin P(nombreSuc, nombreCliente, numPrstamo, importe)
o
e
con
F = {numPrstamo importe nombreSuc}
e
Se descompone en:
P1(numPrstamo, importe, nombreSuc)
e
P2(nombreCliente, numPrstamo)
e
Normalizacin
o
Normalizacin
o
Ejemplo
Sean R(A, B, C, D), y F = {A B, B C}
Si se tiene una subrelacin S(A, C) cules DFs se cumplen en S?
o
a
Calcular la cerradura de cada subconjunto de {A, C}:
{A}+ = {A, B, C}. El punto 2 del algoritmo slo se cumple para C,
o
por tanto en S se mantiene la dependencia A C.
{C}+ = {C} porque no est en el lado izquierdo de ninguna DF.
a
En general un conjunto que no contiene al menos un lado izquierdo
de una DF no puede tener dependencias para S.
{A,C}+ = {A, B, C}. Esto no agrega ninguna nueva dependencia
para S.
Por tanto la unica dependencia para S es A C.
Normalizacin
o
Otro ejemplo
Sean R(A, B, C, D, E) y F {A D, B E, DE C}
Determinar las DFs que se cumplen en S(A, B, C)
Normalizacin
o
Otro ejemplo
Sean R(A, B, C, D, E) y F {A D, B E, DE C}
Determinar las DFs que se cumplen en S(A, B, C)
1
Normalizacin
o
Normalizacin
o
Normalizacin
o
Normalizacin
o
Normalizacin
o
Normalizacin
o
Ejemplo
Si se tiene la relacin con la siguiente extensin:
o
o
A B C
R= a b c
d b e
sta se descompone en las dos siguientes con su respectiva proyeccin:
e
o
A B
B C
S= a b
T= b c
d b
b e
T=
Normalizacin
o
Ejemplo
Si se tiene la relacin con la siguiente extensin:
o
o
A B C
R= a b c
d b e
sta se descompone en las dos siguientes con su respectiva proyeccin:
e
o
A B
B C
S= a b
T= b c
d b
b e
A B C
a b c
S T= a b e =R
d b c
d b e
son correctas las proyecciones?
Normalizacin
o
Ejemplo
Normalizacin
o
/1
Ejemplo
Reservaciones (pelcula, cine, ciudad) con las dependencias
funcionales
{cine ciudad, pelcula ciudad cine}
Normalizacin
o
Ejemplo
Reservaciones (pelcula, cine, ciudad) con las dependencias
funcionales
{cine ciudad, pelcula ciudad cine}
s son llaves.
Normalizacin
o
Ejemplo
Reservaciones (pelcula, cine, ciudad) con las dependencias
funcionales
{cine ciudad, pelcula ciudad cine}
s son llaves.
Normalizacin
o
Problemas
El problema con esta descomposicin es por la pelcula ciudad
o
cine.
cine
ciudad
S = Real Cinema
Cd. Mxico
e
Linterna Mgica Cd. Mxico
a
e
cine
pel
cula
T = Real Cinema
La vida de los otros
Linterna Mgica La vida de los otros
a
estas son permisibles de acuerdo a las DFs de cada relacin, pero al unirlas
o
obtenemos
cine
ciudad
pel
cula
S T = Real Cinema
Cd. Mxico La vida de los otros
e
Linterna Mgica Cd. Mxico La vida de los otros
a
e
Normalizacin
o
Problemas
El problema con esta descomposicin es por la pelcula ciudad
o
cine.
cine
ciudad
S = Real Cinema
Cd. Mxico
e
Linterna Mgica Cd. Mxico
a
e
cine
pel
cula
T = Real Cinema
La vida de los otros
Linterna Mgica La vida de los otros
a
estas son permisibles de acuerdo a las DFs de cada relacin, pero al unirlas
o
obtenemos
cine
ciudad
pel
cula
S T = Real Cinema
Cd. Mxico La vida de los otros
e
Linterna Mgica Cd. Mxico La vida de los otros
a
e
que viola la dependencia pelcula ciudad cine.
Normalizacin
o
Problemas
El problema con esta descomposicin es por la pelcula ciudad
o
cine.
cine
ciudad
S = Real Cinema
Cd. Mxico
e
Linterna Mgica Cd. Mxico
a
e
cine
pel
cula
T = Real Cinema
La vida de los otros
Linterna Mgica La vida de los otros
a
estas son permisibles de acuerdo a las DFs de cada relacin, pero al unirlas
o
obtenemos
cine
ciudad
pel
cula
S T = Real Cinema
Cd. Mxico La vida de los otros
e
Linterna Mgica Cd. Mxico La vida de los otros
a
e
que viola la dependencia pelcula ciudad cine.
Normalizacin
o
Normalizacin
o
Algoritmo de s
ntesis
Su objetivo es descomponer R, con DFs F, en relaciones que satisfagan la
3NF.
1
Hacer F m
nimo (Fm ) en el sentido que:
No se puede eliminar ninguna DF de F, y
No se puede eliminar ningn atributo de ninguna DF de F
u
Para toda DF en Fm crear una relacin que contenga slo los atributos
o
o
de ella, permitiendo unir relaciones con el mismo lado izquierdo.
Normalizacin
o
Conceptos
1
Atributos superuos.
Conjunto m
nimo de DFs.
Normalizacin
o
Atributos superuos
Normalizacin
o
Atributos superuos
A es un atributo superuo si se puede eliminar de la DF sin que se altere
la cerradura de F.
Normalizacin
o
Atributos superuos
A es un atributo superuo si se puede eliminar de la DF sin que se altere
la cerradura de F.
Sean una DF en F y A un atributo, A es superuo si
1 Si A est en . Sea = {A} si F |= .
a
2 Si A est en . Sea F = (F - { }) { ( A)}, si F
a
|= A.
Ejemplos:
1 Determinar los atributos superuos de F = {AB C, A C}
A es superuo en AB C?.
Normalizacin
o
Atributos superuos
A es un atributo superuo si se puede eliminar de la DF sin que se altere
la cerradura de F.
Sean una DF en F y A un atributo, A es superuo si
1 Si A est en . Sea = {A} si F |= .
a
2 Si A est en . Sea F = (F - { }) { ( A)}, si F
a
|= A.
Ejemplos:
1 Determinar los atributos superuos de F = {AB C, A C}
A es superuo en AB C?. B+ = {B} por tanto
Normalizacin
o
Atributos superuos
A es un atributo superuo si se puede eliminar de la DF sin que se altere
la cerradura de F.
Sean una DF en F y A un atributo, A es superuo si
1 Si A est en . Sea = {A} si F |= .
a
2 Si A est en . Sea F = (F - { }) { ( A)}, si F
a
|= A.
Ejemplos:
1 Determinar los atributos superuos de F = {AB C, A C}
A es superuo en AB C?. B+ = {B} por tanto no es superuo.
B es superuo en AB C?.
Normalizacin
o
Atributos superuos
A es un atributo superuo si se puede eliminar de la DF sin que se altere
la cerradura de F.
Sean una DF en F y A un atributo, A es superuo si
1 Si A est en . Sea = {A} si F |= .
a
2 Si A est en . Sea F = (F - { }) { ( A)}, si F
a
|= A.
Ejemplos:
1 Determinar los atributos superuos de F = {AB C, A C}
A es superuo en AB C?. B+ = {B} por tanto no es superuo.
B es superuo en AB C?.
A+ = {AC}
Normalizacin
o
Atributos superuos
A es un atributo superuo si se puede eliminar de la DF sin que se altere
la cerradura de F.
Sean una DF en F y A un atributo, A es superuo si
1 Si A est en . Sea = {A} si F |= .
a
2 Si A est en . Sea F = (F - { }) { ( A)}, si F
a
|= A.
Ejemplos:
1 Determinar los atributos superuos de F = {AB C, A C}
A es superuo en AB C?. B+ = {B} por tanto no es superuo.
B es superuo en AB C?.
A+ = {AC} como B si est en la cerradura se tiene que B es superuo.
a
2
Normalizacin
o
Atributos superuos
A es un atributo superuo si se puede eliminar de la DF sin que se altere
la cerradura de F.
Sean una DF en F y A un atributo, A es superuo si
1 Si A est en . Sea = {A} si F |= .
a
2 Si A est en . Sea F = (F - { }) { ( A)}, si F
a
|= A.
Ejemplos:
1 Determinar los atributos superuos de F = {AB C, A C}
A es superuo en AB C?. B+ = {B} por tanto no es superuo.
B es superuo en AB C?.
A+ = {AC} como B si est en la cerradura se tiene que B es superuo.
a
2
Normalizacin
o
Atributos superuos
A es un atributo superuo si se puede eliminar de la DF sin que se altere
la cerradura de F.
Sean una DF en F y A un atributo, A es superuo si
1 Si A est en . Sea = {A} si F |= .
a
2 Si A est en . Sea F = (F - { }) { ( A)}, si F
a
|= A.
Ejemplos:
1 Determinar los atributos superuos de F = {AB C, A C}
A es superuo en AB C?. B+ = {B} por tanto no es superuo.
B es superuo en AB C?.
A+ = {AC} como B si est en la cerradura se tiene que B es superuo.
a
2
Normalizacin
o
Atributos superuos
A es un atributo superuo si se puede eliminar de la DF sin que se altere
la cerradura de F.
Sean una DF en F y A un atributo, A es superuo si
1 Si A est en . Sea = {A} si F |= .
a
2 Si A est en . Sea F = (F - { }) { ( A)}, si F
a
|= A.
Ejemplos:
1 Determinar los atributos superuos de F = {AB C, A C}
A es superuo en AB C?. B+ = {B} por tanto no es superuo.
B es superuo en AB C?.
A+ = {AC} como B si est en la cerradura se tiene que B es superuo.
a
2
Normalizacin
o
Atributos superuos
A es un atributo superuo si se puede eliminar de la DF sin que se altere
la cerradura de F.
Sean una DF en F y A un atributo, A es superuo si
1 Si A est en . Sea = {A} si F |= .
a
2 Si A est en . Sea F = (F - { }) { ( A)}, si F
a
|= A.
Ejemplos:
1 Determinar los atributos superuos de F = {AB C, A C}
A es superuo en AB C?. B+ = {B} por tanto no es superuo.
B es superuo en AB C?.
A+ = {AC} como B si est en la cerradura se tiene que B es superuo.
a
2
Dra.
C ver si F= {A C, AB D } |= AB C. Si porque
AB+ ={ABCD}
D ver si F= {A C, AB C } |= AB D. NO porque
Posgrado en Ciencia e Ingenier de la Compu
a
AB+ ()
Amparo Lpez Gaona ={ABC}
o
Normalizacin
o
/1
Normalizacin
o
Normalizacin
o
Normalizacin
o
Conjunto m
nimo
Un conjunto F de DFs es m
nimo si
No tiene atributos superuos.
Cada lado izquierdo de las DF de F es unico, es decir no existen
1 1 , 2 2 tales que 1 = 2 .
Algoritmo para calcular el conjunto F equivalente a F que sea m
nimo:
Repetir
1
lado izquierdo.
Normalizacin
o
nimo.
Normalizacin
o
nimo.
1
Normalizacin
o
F = {A BC, B AC, C AB }
Como no hay lados izquierdo en comn, se empieza por determinar
u
atributos superuos.
Normalizacin
o
F = {A BC, B AC, C AB }
Como no hay lados izquierdo en comn, se empieza por determinar
u
atributos superuos.
Ver si B es superuo en A BC, es decir vericar que A C se
deriva de F. Si lo es, por tanto F = {A C, B AC, C AB }.
Ver si A es superuo en B AC. Si lo es.
F= {A C, B C, C AB }
Ver si A es superuo en C AB. No lo es.
Ver si B es superuo en C AB. No lo es.
Por tanto, el conjunto m
nimo es: {A C, B C, C AB }
Normalizacin
o
F = {A BC, B AC, C AB }
Como no hay lados izquierdo en comn, se empieza por determinar
u
atributos superuos.
Ver si B es superuo en A BC, es decir vericar que A C se
deriva de F. Si lo es, por tanto F = {A C, B AC, C AB }.
Ver si A es superuo en B AC. Si lo es.
F= {A C, B C, C AB }
Ver si A es superuo en C AB. No lo es.
Ver si B es superuo en C AB. No lo es.
Por tanto, el conjunto m
nimo es: {A C, B C, C AB }
Por otro lado podr
amos llegar a:
{A C, B A, C AB }
{A B, B C, C A }
{A B, B AC, C B }
etc.
Dra. Amparo Lpez Gaona ()
o
Normalizacin
o
Algoritmo de s
ntesis
Su objetivo es descomponer R, con DFs F, en relaciones que satisfagan la
3NF.
1
Hacer F m
nimo (Fm ).
Normalizacin
o
Ejemplos de normalizacin
o
Sea R(A,B,C,D) y F = {A B, B C, AC D}
1
Encontrar un m
nimo equivalente a F:
Normalizacin
o
Ejemplos de normalizacin
o
Sea R(A,B,C,D) y F = {A B, B C, AC D}
1
Encontrar un m
nimo equivalente a F: Fm = {A B, B C, A
D}
Normalizacin
o
Ejemplos de normalizacin
o
Sea R(A,B,C,D) y F = {A B, B C, AC D}
1
Encontrar un m
nimo equivalente a F: Fm = {A B, B C, A
D} Fm = {A BD, B C }
Normalizacin
o
Ejemplos de normalizacin
o
Sea R(A,B,C,D) y F = {A B, B C, AC D}
1
Encontrar un m
nimo equivalente a F: Fm = {A B, B C, A
D} Fm = {A BD, B C }
Determinar si B o D son superuos.
Dividir.
Normalizacin
o
Ejemplos de normalizacin
o
Sea R(A,B,C,D) y F = {A B, B C, AC D}
1
Encontrar un m
nimo equivalente a F: Fm = {A B, B C, A
D} Fm = {A BD, B C }
Determinar si B o D son superuos.
Llaves candidatas de R:
Normalizacin
o
Ejemplos de normalizacin
o
Sea R(A,B,C,D) y F = {A B, B C, AC D}
1
Encontrar un m
nimo equivalente a F: Fm = {A B, B C, A
D} Fm = {A BD, B C }
Determinar si B o D son superuos.
Llaves candidatas de R: A
Encontrar un m
nimo equivalente a F:
Normalizacin
o
Ejemplos de normalizacin
o
Sea R(A,B,C,D) y F = {A B, B C, AC D}
1
Encontrar un m
nimo equivalente a F: Fm = {A B, B C, A
D} Fm = {A BD, B C }
Determinar si B o D son superuos.
Llaves candidatas de R: A
Encontrar un m
nimo equivalente a F: Fm = {AB C, C D, D
BE}
Dividir.
Normalizacin
o
Ejemplos de normalizacin
o
Sea R(A,B,C,D) y F = {A B, B C, AC D}
1
Encontrar un m
nimo equivalente a F: Fm = {A B, B C, A
D} Fm = {A BD, B C }
Determinar si B o D son superuos.
Llaves candidatas de R: A
Encontrar un m
nimo equivalente a F: Fm = {AB C, C D, D
BE}
Llaves candidatas:
Normalizacin
o
Ejemplos de normalizacin
o
Sea R(A,B,C,D) y F = {A B, B C, AC D}
1
Encontrar un m
nimo equivalente a F: Fm = {A B, B C, A
D} Fm = {A BD, B C }
Determinar si B o D son superuos.
Llaves candidatas de R: A
Encontrar un m
nimo equivalente a F: Fm = {AB C, C D, D
BE}
Normalizacin
o
Normalizacin
o
Normalizacin
o
Normalizacin
o
Normalizacin
o
Normalizacin
o
Normalizacin
o
Normalizacin
o
Normalizacin
o
Normalizacin
o
Normalizacin
o
Dependencias Multivaluadas
Sea R(nombre, direccin, telfono, aficin) con nombre
o
e
o
direccin.
o
nombre
n1
n1
n1
n1
n1
n1
dir
d1
d1
d1
d1
d1
d1
tel
t1
t1
t1
t2
t2
t2
acin
o
h1
h2
h3
h1
h2
h3
Llave:
Normalizacin
o
Dependencias Multivaluadas
Sea R(nombre, direccin, telfono, aficin) con nombre
o
e
o
direccin.
o
nombre
n1
n1
n1
n1
n1
n1
dir
d1
d1
d1
d1
d1
d1
tel
t1
t1
t1
t2
t2
t2
acin
o
h1
h2
h3
h1
h2
h3
e
o
Llave: nombre telfono aficin.
Una violacin a BCNF:
o
Normalizacin
o
Dependencias Multivaluadas
Sea R(nombre, direccin, telfono, aficin) con nombre
o
e
o
direccin.
o
nombre
n1
n1
n1
n1
n1
n1
dir
d1
d1
d1
d1
d1
d1
tel
t1
t1
t1
t2
t2
t2
acin
o
h1
h2
h3
h1
h2
h3
e
o
Llave: nombre telfono aficin.
Una violacin a BCNF: nombre direccin.
o
o
Dividir en
Normalizacin
o
Dependencias Multivaluadas
Sea R(nombre, direccin, telfono, aficin) con nombre
o
e
o
direccin.
o
nombre
n1
n1
n1
n1
n1
n1
dir
d1
d1
d1
d1
d1
d1
tel
t1
t1
t1
t2
t2
t2
acin
o
h1
h2
h3
h1
h2
h3
e
o
Llave: nombre telfono aficin.
Una violacin a BCNF: nombre direccin.
o
o
o
e
Dividir en R1(nombre, direccin) R2(nombre, telfono,
aficin).
o
Ambas estn en BCNF.
a
Dra. Amparo Lpez Gaona ()
o
Normalizacin
o
Veamos R1:
nombre
n1
direccin
o
d1
Normalizacin
o
Denicin
o
Existe una dependencia multivaluada (DMV) A1 A2 ...An
B1 B2 ...Bm
si para cada par de tuplas t1 y t2 de la relacin R que coinciden en todos
o
los valores de las As podemos encontrar una tupla t3 tal que coincida con:
1
t1 y t2 en las As,
t1 en las Bs, y
Bs
t1
1111111111
0000000000
1111111111
0000000000
1111111111
0000000000
1111111111
0000000000
t2
11111
00000
11111
00000
11111
00000
11111
00000
t3
Otros
1111111111
0000000000
1111111111
0000000000
1111111111
0000000000
11111111111111111111
00000000000000000000
1111111111
0000000000
11111111111111111111
00000000000000000000
11111111111111111111
00000000000000000000
Normalizacin
o
As
Bs
Normalizacin
o
otros
Normalizacin
o
Ejemplo
prstamo
e
P23
BC
P23
P93
nombreCliente
Gmez
o
Gmez
o
Prez
e
calleNum
Clavel 25-A-201
Insurgentes 4141
Jurez 85
a
ciudad
Cuernavaca
Mxico D.F.
e
Oaxaca
nombreCliente
Gmez
o
Gmez
o
Gmez
o
Gmez
o
Prez
e
calleNum
Clavel 25-A-201
Insurgentes 4141
Clavel 25-A-201
Insurgentes 4141
Jurez 85
a
ciudad
Cuernavaca
Mxico D.F.
e
Cuernavaca
Mxico D.F.
e
Oaxaca
Normalizacin
o
Normalizacin
o
B, B
C entonces
Ejemplo
Sea R = (A,B,C,G,H,I) y DMV = A
B, B
Aplicando las reglas se puede obtener:
Normalizacin
o
HI, CG
Ejemplo
Sea R = (A,B,C,G,H,I) y DMV = A
B, B
Aplicando las reglas se puede obtener:
A
HI, CG
A
HI; por la regla de transitividad aplicada a la primera y segunda
dependencias.
B
H, B
I?
Normalizacin
o
Normalizacin
o
Normalizacin
o
Normalizacin
o
Normalizacin
o
B1 B2 ...Bm
Normalizacin
o
Ejemplo
Sea BC(prstamo, nombre, calleNum, ciudad) con la dependencias
e
{nombre prstamo, nombre
e
calleNum ciudad }
Se tiene que la DMV viola la 4NF. Aplicando el algoritmo se tienen:
Normalizacin
o
Ejemplo
Sea BC(prstamo, nombre, calleNum, ciudad) con la dependencias
e
{nombre prstamo, nombre
e
calleNum ciudad }
Se tiene que la DMV viola la 4NF. Aplicando el algoritmo se tienen:
R1(nombre, calleNum, ciudad)
R2(nombre, prstamo)
e
En ninguno de los esquemas hay DMV no-triviales ni DFs no-triviales, por
tanto est en 4NF.
a
Normalizacin
o
Otro ejemplo
Sea R(A,B,C,D,E,F), con {A B, A
CD, A
EF}
Llave:
Normalizacin
o
Otro ejemplo
Sea R(A,B,C,D,E,F), con {A B, A
CD, A
EF}
Llave: ACDEF
Normalizacin
o
Otro ejemplo
Sea R(A,B,C,D,E,F), con {A B, A
CD, A
EF}
Llave: ACDEF
Las otras dependencias violan la 4NF.
Al dividir llegamos a:
Normalizacin
o
Otro ejemplo
Sea R(A,B,C,D,E,F), con {A B, A
CD, A
EF}
Llave: ACDEF
Las otras dependencias violan la 4NF.
Al dividir llegamos a: R1(AB)
R2(ACD)
R3(AEF)
Normalizacin
o
Propiedad
Elimina redundancia por DFs
Elimina redundancia por DMVs
Conserva DFs
Conserva DMVs
3NF
La mayor
a
No
S
Quiz
a
Normalizacin
o
BCNF
S
No
Quiz
a
Quiz
a
4NF
S
Quiz
a
Quiz
a
Ejemplo
Supn que tiene una relacin R como sigue, para registrar a personas con
o
o
sus hijos y autos.
R(nombre, curp, fechaNac, nombreHijo, curpHijo,
fechaNacHijo, motor, marca)
Dene las dependencias que se deber esperar para esta relacin y
an
o
normaliza si es necesario.
Normalizacin
o
Normalizacin
o
Dependencias funcionales:
curp nombre fechaNac
curpHijo nombreHijo fechaNacHijo
motor marca
curp
curpHijo
curp
motor
Relaciones en 4NF:
R1(curp, nombre, fechaNac)
R2(curp, curpHijo)
R3(curpHijo, nombreHijo, fechaNacHijo)
R4(curp, motor)
R5(motor, marca)
Normalizacin
o