Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Diseo Descendente
$di#o Nom%re $di#o "u#ares (ervicio &'F presta $liente Nom%re Nom%re
Departamento ($di#o. Nom%re) Empleado ($+dula. Nom%re. ,el+-ono. $odDpto) $liente (&'F. Nom%re) (ervicio ($di#o. Nom%re) /resta ($dDpto. $od(erv. &'F. Fec)a)
Departamento
* Fec)a
!
pertenece
N Empleado
A1 A2 A3 A4 A5 A6 A7 A8 A9 A10 A11 A12 ... ... ... ... ... ... ... ... ... ... ... ...
De-inir relaciones universales compuestas de todos los atri%utos de la %ase de datos y lue#o descomponerlas. utilizando el proceso de normalizacin de las relaciones. en su%relaciones 2ue no su-ran anomal3as Es un proceso de refinamiento paso a paso. 2ue lleva al aislamiento de las entidades y asociaciones del mundo real 4$odd. !5657 (e %asa las operaciones -undamentales del l#e%ra relacional (/royeccin 8 &eunin Natural)
4
/royeccin <a.%(&)
(e eliminan todas salvo una de las tuplas repetidas (E?. <Toyota, corollaXL, blanco>)
Carro
No es relevante para el producto cartesiano. pero es nota%le. 2ue en al#unas tuplas marca& @ marca:
placa ADA89A ADA89A ADA89A LB$78% LB$78% LB$78% &'A67D &'A67D &'A67D
marcaR $"a+ $"a+ $"a+ )o*o+a )o*o+a )o*o+a $ord $ord $ord
marca, modelo color !"e a #r"! $"a+ )o*o+a corolla&L bla co Ka ro(o $ord $"a+ !"e a #r"! )o*o+a corolla&L bla co $ord Ka ro(o !"e a #r"! $"a+ )o*o+a corolla&L bla co Ka ro(o $ord
Seleccin R/2/4marca2$ord0Carro1
Carro placa MBO34L LDA75K ADA89A LB$78% &'A67D marca $ord )o*o+a $"a+ )o*o+a $ord color verde bla co #r"! bla co ro(o R placa MBO34L &'A67D marca $ord $ord color verde ro(o
R/2/4marca2$ord/5/color2ro(o0Carro1
Carro placa MBO34L LDA75K ADA89A LB$78% &'A67D marca $ord )o*o+a $"a+ )o*o+a $ord color verde bla co #r"! bla co ro(o
placa &'A67D
marca $ord
color ro(o
8
Carro
modelo color Ka verde Ka ro(o corolla&L bla co !"e a #r"! corolla&L bla co Ka verde Ka ro(o
Descomposicin Es el reemplazo de una relacin &(A!. A2. .... An). por una coleccin de relaciones &!. &2. .... &n o%tenidas de las proyecciones de & y tal 2ue la relacin resultado de las reuniones &! =9= &2 =9= ... =9= &n tiene el mismo es2uema 2ue &.
E?A (i tenemosA &! @ -placa. color. modelo($arro) &2 @ -modelo. marca($arro) ...resulta 2ueA &! =9= &2 @ $arro
10
Carro
modelo color Ka verde corolla&L bla co !"e a #r"! corolla&L bla co Ka ro(o
11
Carro
modelo color Ka verde corolla&L bla co !"e a #r"! corolla&L bla co Ka ro(o
12
Es la descomposicin de una relacin & en &!. &2. .... &n tal 2ue para toda extensin de R se tiene 2ue & @ &! =9= &2 =9= ... =9= &n.
El pro%lema de la concepcin de %ases de datos relacionales se reduce a la descomposicin sin p+rdida de las relaciones universales con todos sus atri%utos. en su%relaciones 2ue no ten#an anomal3as (,al como veremos ms adelante).
13
A dnde nos puede llevar una mala descomposicin? Y una descomposicin insuficiente?
14
Anomal%as de Actuali&acin
Prof_ Depto C8d9la 9.980.623 10.334.890 12.334.222 13.434.122 13.566.002 17.544.672 18.244.670 =ombre> ?ro@ ?edro/?8reB L9"!/%arcCa Mar"o/Lobo D o!8/R"vero $ra E/CAac; M"#9el/Bravo A dr8!/Le; $ecAa> =ac C;d"#o> Dep+o 01: 06: 73 01 01: 06: 76 02 01: 06: 77 01 01: 06: 78 03 01: 12: 78 NULL 01: 06: 84 02 01: 06: 85 01 =ombre> Dep+o Comp9+ac"; Co +rol Comp9+ac"; < ve!+"#ac"; NULL Co +rol Comp9+ac";
Qu problemas o anomal as se pueden producir en esta relacin? Qu !cosas malas" pueden ocurrir?
15
Anomal%as de Actuali&acin
Prof_ Depto C8d9la 9.980.623 10.334.890 12.334.222 13.434.122 13.566.002 17.544.672 18.244.670 =ombre> ?ro@ ?edro/?8reB L9"!/%arcCa Mar"o/Lobo D o!8/R"vero $ra E/CAac; M"#9el/Bravo A dr8!/Le; $ecAa> =ac C;d"#o> Dep+o 01:06:73 01 01:06:76 02 01:06:77 01 01:06:78 03 01:12:78 NULL 01:06:84 02 01:06:85 01 =ombre> Dep+o Comp9+ac"; Co +rol Comp9+ac"; < ve!+"#ac"; NULL Co +rol Comp9+ac";
Anomalas de Insercin: $ada vez 2ue se inserta un pro-esor es necesario repetir los datos del departamento Anomalas de Modificacin: $ada vez se actualiza un departamento es necesario )acer los cam%ios en cada una de las tuplas correspondientes a ese departamento Anomalas de Eliminacin: (i se elimina el Dltimo empleado asociado a un departamento se pierde la in-ormacin del departamento
16
ormali&acin El es2uema relacional es un modelo de la realidad %a?o la -orma de una coleccin de relaciones para 2ueA
"a creacin. modi-icacin y supresin de datos de forma eficaz. /ara esto es indispensa%le eliminar toda redundancia innecesaria. 'dealmente. ante la ocurrencia de un evento se desea 2ue +ste se traduzca en el mane?o de una nica tupla en la e9tensin del es2uema relacional.
"a modi-icacin del es2uema relacional por la evolucin de la percepcin de la realidad. sea lo ms simple posi%le.
"a comprensin de la realidad sea -acilitada por el es2uema relacional (Eer el es2uema FG $omprender la &ealidad).
17
#mo $eneramos buenas descomposiciones? Qu relaciones tiene esto con el modelado sem%ntico& E'E, ((, etc?
18
ormali&acin
ormali&acin
ormali&acin
NUE AMEN!E: Qu es normali)ar una base de datos? Es llevar el es*uema de la base de datos a al$una de las formas normales anteriormente mencionadas ...+ para eso, necesitamos conocer + comprender el concepto de !dependencia funcional"
21
Dependencias 'uncionales
(on restricciones de inte"ridad 2ue permiten conocer 2ue interrelaciones e9isten entre dos o ms atri%utos del mundo real. (on propiedades in#erentes al contenido
sem$ntico de los datos. 2ue se )an de cumplir para cual2uier e9tensin del es2uema de relacin.
'n-ormalmente. Y depende funcionalmente de X si cada valor de X tiene asociado siempre el mismo valor de Y en una relacin R 2ue contiene a X y Y como atri%utos.
22
Dependencias 'uncionales
*
/ro-MDpto
/ro-esor
Departamento
23
Dependencias 'uncionales
C8d9la 9.980.623 10.334.890 17.544.672 12.334.222 13.566.002 10.334.890 12.334.222 13.434.122 13.566.002 17.544.672 18.244.670 $ecAa>=ac 'e3o 06:01:73 M 06/01/76 F 06/01/84 M 06/01/77 M 12/01/78 F 06/01/76 F 06/01/77 M 06:01:78 $ 12/01/78 F 06/01/84 M 06:01:85 M C;d"#o>Dep+o =ombre>Dep+o 01 Comp9+ac"; 01 Comp9+ac"; 03 < ve!+"#ac"; 02 Co +rol 02 Co +rol 02 Co +rol 01 Comp9+ac"; 03 < ve!+"#ac"; 03 < ve!+"#ac"; 02 Co +rol 01 Comp9+ac";
Qu caracter sticas destacan en la informacin de los profesores? /e repite la informacin de los profesores? Que sucede con los atributos Fec0a12ac + /e3o con respecto a la cdula? Qu relaciones e3isten?
24
Dependencias 'uncionales
C8d9la $ecAa>=ac 'e3o 9.980.623 06:01:73 M 10.334.890 06:01:76 $ 17.544.672 06:01:84 M 12.334.222 06:01:77 M 13.566.002 12:01:78 $ 10.334.890 06:01:76 $ 12.334.222 06:01:77 M 13.434.122 06:01:78 $ 13.566.002 12:01:78 $ 17.544.672 06:01:84 M 18.244.670 06:01:85 M C;d"#o>Dep+o 01 01 03 02 02 02 01 03 03 02 01 =ombre>Dep+o Computac !" Computac !" #"$%&t 'ac !" Co"tro( Co"tro( Co"tro( Computac !" #"$%&t 'ac !" #"$%&t 'ac !" Co"tro( Computac !"
Y con respecto a la informacin de los departamentos? /e repite? Qu ocurre con los atributos de las distintas filas?
25
Dependencias 'uncionales
C8d9la 9.980.623 10.334.890 17.544.672 12.334.222 13.566.002 10.334.890 12.334.222 13.434.122 13.566.002 17.544.672 18.244.670 $ecAa>=ac 'e3o 06:01:73 M 06/01/76 F 06/01/84 M 06/01/77 M 12/01/78 F 06/01/76 F 06/01/77 M 06:01:78 $ 12/01/78 F 06/01/84 M 06:01:85 M C;d"#o>Dep+o 01 01 03 02 02 02 01 03 03 02 01 =ombre>Dep+o Computac !" Computac !" #"$%&t 'ac !" Co"tro( Co"tro( Co"tro( Computac !" #"$%&t 'ac !" #"$%&t 'ac !" Co"tro( Computac !"
$+dula
$+dula
(e9o
26
Dependencias 'uncionales (on restricciones de inte#ridad 2ue permiten conocer 2ue interrelaciones e9isten entre los atri%utos del mundo real
Apellido Numero de $uenta (aldo
Nom%re
$+dula
$di#o Departamento
Nom%re Departamento
,el+-ono
$di#o /royecto
Nom%re /royecto
27
Dependencias 'uncionales
(ea R(A1, A2, ..., An) y X y Y dos su%con?untos del con?unto -ormado por {A1,
Dependencias 'uncionales
Carro
placa
marca
dK
modelo
color
dL
29
(rafos ) Redes de D' "os nodos representan atri%utos y las aristas representan DF
marca placa color modelo
30
(rafos ) Redes de D'E (i )ay ms de un atri%uto del lado iz2uierdo se utiliza una l3nea 2ue sirva para unir todos los atri%utos de la parte iz2uierda. y de ella sale una l3nea al atri%uto de la parte derec)a
31
Dependencias 'uncionales
Carro placa M/034. M/034. LDA75K ADA89A LB$78% -23674 -23674 marca $ord $ord )o*o+a $"a+ )o*o+a $ord $ord modelo Ka Ka corolla&L !"e a corolla&L Ka Ka color $%r*% ro1o bla co #r"! bla co $%r*% ro1o
33
!.&e-le9i%idadA (i Y X X Y
E?A color color. %ienA (marca. modelo) marca
2.AumentoA (i X Y XZ YZ J.,ransitividadA (i X Y y Y Z X Z
A estas primeras re#las se las con como las re"las inferencia %o axio de Armstron"
K.DescomposicinA (i X YZ X Y y X Z
E?A placa (modelo. marca) placa modelo y placa marca
Estas tres Dltimas re#las se pueden in-erir o demostrar a partir de las tres primeras
L.UninA (i X Y y X Z X YZ
E?A placa modelo y placa marca placa (modelo. marca)
N./seudotransitividadA (i X Y y WY Z WX Z
K. DescomposicinA (i X YZ X Y y X Z
E?A placa (modelo. marca) placa modelo y placa marca
2. AumentoA (i X Y XZ YZ
E?A modelo marca (modelo. color) (marca. color)
L. UninA (i X Y y X Z X YZ
E?A placa modelo y placa marca placa (modelo. marca)
J. ,ransitividadA (i X Y y Y Z X Z
E?A placa modelo y modelo marca placa marca
N. /seudotransitividadA (i X Y y WY Z WX Z
E?A placa modelo y (marca. modelo) potencia (marca. placa) potencia
36
37
Es una dependencia -uncional de la -orma O A. donde A es un atri'uto nico no incluido en ( y donde no e9iste un OP O tal 2ue OP A
E?emplosA
placa modelo ( ! "na #F ) placa (modelo. marca) ($o e! #F ) (A. 0. $) A ($o e! #F ) (A incluido en O) (i (A. 0) O lue#o (A. 0. $) O ($o e! #F )
38
En parte, la importancia de las DFE es *ue no es posible simplificarlas m%s. 4or e-emplo la si$uiente DF2E&
,A, 5, #. A
4ero por e-emplo, las si$uiente DFE& ,5, #. A 6 7 2o se pueden simplificar m%s #omo veremos m%s adelante esto es particularmente 8til en ciertos casos...
40
Dado un con?unto $ de dependencias -uncionales. el cierre transitivo de $. denotado por $Q. es un nuevo con?unto -ormado por las dependencias funcionales elementales ms todas las calculadas aplicando los a9iomas de Armstron# y sus re#las in-eridas. )os con*untos de dependencias funcionales son e+uivalentes si tienen el mismo ,-. (o si a partir de los con?untos iniciales se puede lle#ar a un mismo con?unto para am%os casos)
41
C+ = {ABC, BE, CDEF, CDE, CDF, AEC, AB, AC, ADCD, ADC, ADD, ADEF, ADE, ADF}
12) ADE& (de 3 ( / por )r*n #t#+#d*d) 13) ADE 14) AD& ... 12*( "3 4
42
C+ = {ABC, BE, CDEF, CDE, CDF, AEC, AB, AC, ADCD, ADC, ADD, ADEF, ADE, ADF}
B(on todas HDependencias Funcionales ElementalesIC BRay al#una dependencia 2ue est+ de msC
43
E3istir% una manera m%s f%cil + sistem%tica de calcular #+? ,...m%s adelante....
44
Dos con?untos de dependencias -uncionales F y G son e2uivalentes si am%os tienen el mismo cierre transitivo. es decir. siA FQ @ GQ (S si partiendo de F y G podemos o%tener un mismo con?unto de dependencias -uncionales R. o si todas las dependencias de F y todas las de G estn en F8GQ)
45
Dado un con?unto $ de dependencias -uncionales y un con?unto O de atri%utos. es posi%le determinar el con*unto (de todos los atri'utos +ue dependen funcionalmente de (. El con?unto OQ se conoce como el cierre de O %a?o $.
re!"ltado A@ O mientras (cam%ios en re!"ltado) 0acer para cada dependencia -uncional A0 en $ 0acer si A re!"ltado entonces re!"ltado A@ re!"ltado U 0
46
A+ = A A+ = A BC
A = A BC E
B+ = B
B = B E
Es decir. el clculo de OQ se )ace -undamentalmente por ,ransitividad
CD+ = CD
CD = CD EF
47
#u%l el cierre de #? + el de D?
Una clave candidata es el con?unto O de atri%utos de una relacin &(A!. A2. .... An) tal 2ueA
O A!. A2. .... An No e9iste un T O tal 2ue T A!. A2. .... An . De ser as3. entonces O ser3a una super/clave. y T podra ser %o no& una clave candidata
48
Es posi%le 2ue e9istan varios atri%utos 2ue cumplan con esta de-inicin dentro de una misma relacin (claves candidatas) "a clave primaria dentro de una relacin se denota su%rayando los atri%utos 2ue -orman parte del con?unto O
49
' ,A, 5, #, D, E, F.
' ,A, 5, #, D, E, F.
' ,A, 5, #, D, E, F.
(tro e-emplo...
53
' ,A, 5, #, D, E.
CD E A C B
Est% 5 E en F? Es D una clave para '? Es AD una clave para '? Es ADE una super9clave o una clave candidata? Es AD una super9clave o una clave candidata?
54
Cierre .ransiti/o de un Con0unto de D' *+sando el cierre de un Con0unto de AtributosR(A,B,C,D,E,F) 01) A BC 02) B E 03) CDEF
Se calcula el cierre de todos los posibles conjuntos de atributos, Ej: {A}+, {B}+, {C}+, {D}+, {E}+, {F}+, {AB}+, {AC}+, {AD}+, {AE}+, {AF}+, {BC}+, {BD}+, {BE}+, {BF}+, {CD}+, {CE}+, {CF}+, {DE}+, {DF}+, {EF}+, {ABC}+, {ABD}+, {ABE}+, {ABF}+, ..., ..., ..., ... hasta llegar a {ABCDEF}+
Del resultado, por desco!posici"n se consideran todas las DFEs no tri#iales $ue se puedan obtener de los cierres anterior!ente calculados, por eje!plo: {ABF}+%{ABCEF} &'o $ue representa en realidad ABF()ABCEF desco!poner en: ABF->A, ABF->B, ABF->C, ABF->E, ABF->F 'as resaltadas en rojo son tri#iales, por lo tanto se descartan, !ientras $ue las !arcadas en #erde son no tri#iales se a*aden al cierre del conjunto de DFs
55
se puede
,oda relacin & tiene al menos una descomposicin en 01N tal 2ueA
"a
(conserva) las DF
56
(ea & una relacin y F un con?unto de DF en &. "a descomposicin A@U&!. &2V es una descomposicin de producto sin p+rdida si al menos una de las si#uientes dependencias estn en FQA &!&2&! &!&2&2
B$moC B:u+ tendr esto 2ue ver con las claves primarias y -orneasC
57
Carro
modelo color Ka verde Ka ro(o corolla&L bla co !"e a #r"! corolla&L bla co Ka verde 58 Ka ro(o
d!
R1
< 'B=
A9+or
)"+9lo
Modelo
d! d2
R2 Ma+r"c9la Marca Modelo
59
&!&2 = *odelo Es decir 2ue se de%e cumplir 2ueA :odelo ;/52, Autor, <itulo ,=. o %ien 2ue... :odelo :atricula, :arca ,>. Es decir. 2ue las DFEs deduci%les de (!) o de (2) por descomposicin se encuentren en el cierre transitivo de las DFs asociadas a la relacin &. B$mo podemos calcular eso en %ase a d! y d2 de la transparencia anteriorC
60
(e puede calcular U*odeloVQ en %ase a d! y d2A ?:odelo@+A?:odelo@ De modo 2ue el cierre de las DFs asociado a & no contiene nin#una de las D-sA
(ea & una relacin y F un con?unto de DF en &. "a descomposicin A@U&!. &2. ... &nV preserva las dependencias -uncionales si el con?unto de DFs G 2ue se o%tiene de )acer &!&2 ... &n (es decir. 2ue aporta cada relacin &i) es e2uivalente a G.
NotaA /uede ser 2ue a simple vista FG. pero se cumple 2ue FQ @ GQ.
62
d2 dJ
dJ
EP3 C;d"#o? =ombre> ?ro L9#ar> ?ro
d!
63
Descomposicin sin p$rdida *que Preser/a las D's$ierre de Ud!. d2. dJV $ierre de Ud!. dJV
Es evidente por los cierres *ue ambos con-untos de DFs 2( /(2 e*uivalentes, por lo tanto se pierden DFs en la descomposicin
64
"a descomposicin A@U&!. &2. .... &nV de una relacin & preserva las DF de &. si ,- de R es el mismo +ue la de la unin de las )1 de A34R56 R26 ...6 Rn7
65
Cobertura ,%nima
Es el con?unto $ de DFE asociado a un con?unto de atri%utos 2ue veri-ican las propiedades si#uientesA
Nin#una DF es redundante en $. es decir para toda DF denotada f en $. $ W f no es e2uivalente a $. ,oda DFE de los atri%utos est dentro de $Q.
E?emploA $ @ Uplaca modelo. placa color. modelo marcaV $ es esencial para la descomposicin sin p+rdida (e9isten al#oritmos de descomposicin 2ue dependen de esto).
66
Formas 2ormales
67
(e de-ine para pro)i%ir los atri%utos multivaluados. los atri%utos compuestos y sus com%inaciones.
Esta%lece 2ue los dominios de los atri%utos de%en incluir slo valores atmicos (simples e indivisi%les) y 2ue el valor de cual2uier atri%uto en una tupla de%e ser un valor individual proveniente del dominio de ese atri%uto.
3ra 'orma ormal *3' G!+9d"a +e C8d9la 9.644.667 10.133.212 11.332.334 14.126.112 =ombre ?edro %abr"el L9"! %"lber+o Apell"do C9r!o ?8reB BD./< ' Me doBa ?R< ./CA10 %o Bale! ?R< < ./'R10./G')1 Hapa+a BD./< A
Atri%uto *ultivaluado No est en !FN %$o e! "na relaci&n' Ray #rupos repetitivos
G!+9d"a +e
C8d9la 9.644.667 9.644.667 10.133.212 10.133.212 11.332.334 11.332.334 11.332.334 14.126.112 14.126.112
=ombre ?edro ?edro %abr"el %abr"el L9"! L9"! L9"! %"lber+o %"lber+o
Apell"do ?8reB ?8reB Me doBa Me doBa %o Bale! %o Bale! %o Bale! Hapa+a Hapa+a
69
(e %asa en el concepto de dependencia funcional total. una dependencia -uncional X Y es total si la eliminacin de cual2uier atri%uto A de X rompe la dependencia.
Una relacin est en 2FN si est en !FN y todo atri%uto 2ue no sea clave depende de -orma total de la clave.
"a 2FN permite eliminar las redundancias para 2ue nin#Dn atri%uto sea determinado slo por una parte de una clave.
70
d2
EP2 C8d9la =ombre> Gmp
Empleado
dJ
EP3 C;d"#o? =ombre> ?ro L9#ar> ?ro
/royecto
d!
(e %asa en el concepto de dependencia transitiva. Una dependencia -uncional X Z es transitiva si e9isten dos dependencias -uncionales X Y y Y Z de la 2ue puede deducirse por transitividad X Z.
Una relacin est en JFN si est en 2FN y todo atri%uto 2ue no sea clave no depende de un atri%uto 2ue no sea clave.
"a JFN permite eliminar las redundancias para 2ue nin#Dn atri%uto dependa de otro de -orma transitiva.
72
d2
Emp_ Depto =om> Gmp C8d> Gmp $ecAa> = D"recc"; C;d"#o> Dep =om> Dep C8d> %er
d!
Empleado
C;d"#o> Dep
d! Est%n en BF2 (Estn en 2FN y nin#Dn atri%uto depende de otro de -orma transitiva) 73
Departamento
d2
Algoritmo de Descomposicin en 5' /ropuesto por 0ernstein en !56N. se %asa en el si#uiente principioA
(e construye la co%ertura m3nima # y se editan los atri%utos aislados. considerndolos como claves. (e %usca el con?unto ms #rande O de atri%utos 2ue determinen a otros A!. A2. .... An con nI! y como salida se #enera la relacin &(O. A!. A2. .... An).
"as DFE utilizadas en la -ormacin de esa relacin se eliminan de $ y todos los atri%utos aislados 2ue no estn en las DFE 2ue 2uedaron en $.
74
4rocedimiento $ormali(ar)*F$%'
C A@ $o%ertura m3nima de las DFE +tt A@ Atri%utos aislados 2ue pertenecen a $ red"cir%C, +tt' 8X Eer si#uiente lmina X8 Formar una relacin con los atri%utos restantes en Att ((i los )ay) Fin
75
'epita mientras 2ue una DFE no incluya todos los atri%utos o $ est+ vac3o 0uscar el con?unto ms #rande de atri%utos O tal 2ue O A!. O A2. .... O AY Formar la relacin &(O. A!. A2. .... AY) Eliminar de $ las DFE utilizadas en & Eliminar de Att los atri%utos 2ue ya no pertenezcan a $
76
6uramento 'inal7 Un es2uema normalizado )asta JFN de%e cumplir con el ?uramento si#uienteA
77
Navat#e dice 2ue un es2uema est en JFN si siempre 2ue se tiene una dependencia -uncional OFGA. se cumple 2ueA
"a FN0$ elimina la se"unda condicin. de manera 2ue para 2ue una relacin est+ en FN0$ se tiene 2ue cumplir 2ue O sea una superclave de & y no %asta con 2ue A sea un atri%uto primo de &.
78
'orma ormal 8oyce9Codd *' 8CUna relacin est en FN0$ si y slo si las solas DFE son a2uellas dentro de las cuales una clave determina un atri%uto
d2 d! dJ
o+a
(i cada pro-esor dicta una Dnica materia. entonces se cumpleA c9dula:est6 codi"o:mat/;cedula:prof c9dula:est6 codi"o:mat/;nota cedula:prof/;codi"o:mat Entonces la relacin est en JFN pero no en FN0$
79
'orma ormal 8oyce9Codd *' 8Cd2 d! 2o est% en F25# (en cdi#oMmat depende de c+dulaMpro- 2ue no es primo) d2
Examen cdula_est cdi o_mat o+a
dJ
o+a
dJ
cod"#o>ma+ cdula_prof
e! !in p0rdida, pero no pre!er2a la! #F , 3"e p"eden obtener!e en con4"nto por medio de "na re"ni&n o prod"cto
80
'orma ormal 8oyce9Codd *' 8C,)e de-inition o- 0$NF addresses certain (rat)er unliYely) situations Z)ic) JNF does not )andle. ,)e c)aracteristics o- a relation Z)ic) distin#uis) JNF -rom 0$NF are #iven %eloZ. (ince it is so unliYely t)at a relation Zould )ave t)ese c)aracteristics. in practical realFli-e desi#n it is usually t)e case t)at relations in JNF are also in 0$NF. ,)us many aut)ors maYe a [-uzzy[ distinction %etZeen JNF and 0$NF Z)en it comes to #ivin# advice on [)oZ -ar[ to normalize a desi#n. (ince relations in JNF %ut not in 0$NF are sli#)tly unusual. it is a %it more di--icult to come up Zit) meanin#-ul e9amples.
)ttpA88ZZZ.imsmca.in8-orums8computerFso-tZares8normalF-ormFde-initionsFe9amplesFt!6.)tml
estudiante
1Dependencias ,ulti/aluadas ) :' 2 BEst en primera -orma normalC B,iene atri%utos multivaluadosC
e!+9d"a +e cedula a!"# a+9ra! 12.324.334 ?R1./CA10./$'11 13.455.322 BD./<'./LC 15.443.767 BD./RD./'O depor+e! a+ac"; ./@J+bol +e "!./e!#r"ma +e "!./@J+bol
Un estudiante puede cursar varias asi#naturas y pre-erir varios deportes. El atri%uto asi#naturas es independiente del atri%uto deportes. slo estn correlacionados por medio del atri%uto c+dula.
83
(i#amos...
84
BT a)ora. est en !ra -orma normalC BE9iste al#una dependencia entre asi#natura y deporteC En realidad. lo 2ue ocurre es 2ue e9iste una dependencia m"lti2al"ada (D*E) entre cedula /;; asi"natura lo 2ue implica adems la e9istencia de una D*E entre cedula /;; deporte
Dependencias ,ulti/aluadas
(ea &(A!. A2. .... An) y O e T dos su%con?untos de atri%utos de UA!. A2. .... AnV. (e dice 2ue O FGG T. si dados los valores de O )ay un con?unto de valores T asociados y este con?unto es independiente de otros atri%utos \ @ & W O W T de &.
86
Dependencias ,ulti/aluadas
E9iste una dependencia multivaluada (D*E) A FGG 0 si para cada par de tuplas t! y t2 de la relacin & 2ue coinciden en todos los valores de A se puede encontrar una tupla tJ tal 2ueA
$oincida con t! y t2 en A. $oincida con t! en 0. $oincida con t2 en todos los atri%utos de & 2ue no pertenecen ni a A ni a 0.
A t! t2 tJ
87
Stros
Dependencias ,ulti/aluadas
A t! t2 tJ 0 Stros
tB t=
88
Est en JFN y FN0$ (i y slo si las solas D*E (ElementalesX) son a2uellas donde una clave determina un atri'uto %a un 'lo+ue de atri'utos&6 es decir. no dos al mismo tiempo.
X&ecordar Dependencias Funcionales Elementales (transparencia 22). pero tam%i+nA
T no es vac3o y es dis?unto de O & no contiene otra D*E del tipo O] FGG T] tal 2ue O] O y T] T
89
<tra forma de verlo: Una & est en KFN si y solo si las solas D*E son a2uellas donde una clave determina un atri%uto (Es decir. no dos al mismo tiempo). Una & en KFN est en JFN y en FN0$.
90
:ta 'orma ormal *:' e!+9d"a +e cedula 12.324.334 12.324.334 12.324.334 13.455.322 13.455.322 13.455.322 15.443.767 15.443.767 15.443.767 asi natura ?R1 CA10 $'11 BD <' LC BD RD 'O e!+9d"a +e cedula 12.324.334 12.324.334 13.455.322 13.455.322 15.443.767 15.443.767 deporte a+ac"; @J+bol +e "! e!#r"ma +e "! @J+bol
Esta descomposicin no repite in-ormacin y mantiene las D*E ,odas las dependencias -uncionalesA c9dula /;; asi"natura c9dula /;; deporte (on tales 2ue c+dula (atri%uto parte de la clave) determina slo a un atri%uto
91
d!
d2
dJ
T ademsA c9dula /;; cod:asi" Eso implica 2ueA c9dula /;; cod:deporte =,mo se normaliza>
X &epresenta atri%utos multivaluados
92
d!
d2
dJ
d!
deporte cod>depor+e de!c>depor+e materia cod>a!"# desc_asig
d2
dJ
:ta 'orma ormal *:' deporte cod>depor+e de!c>depor+e materia cod>a!"# desc_asig
d2
dJ
d!
est_dep
cedula cod_deporte
est_dep
cedula
cod_asig
Finalmente est en KFN. "as D*E cedula /;; cod:deporte y cedula /;; cod:asi" estn en e!t)dep y e!t)a!ig respectivamente y son triviales
94
estMdep
Asi#natura
descMasi#
Estudiante
N
c+dula nom%re
estMasi#
cdMdeporte
Deporte
descMdeporte
estMasi#Mdep
BEst en KFNC
95
Es decir. la KFN (y LFN como veremos ms adelante) (SN "A &A\^N por la 2ue )ay 2ue evitar los v3nculos nFarios
* N
est1asi$1dep
cdMasi#
Asi#natura
descMasi#
Estudiante
Deporte
descMdeporte
96
T asumimos 2ue un /roveedor suministra ciertas /iezas en particular. un /royecto usa ciertas /iezas. y un /royecto es suplido por ciertos /roveedores. entonces tenemos las si#uientes D*EA 8roveedor /;; 8ieza 8ieza /;; 8royecto 8royecto /;; 8roveedor T sus respectivas complementarias...
97
"uministro ?roveedorK ?"eBaK ?ro*ec+oK G1./G4./G6 ?<3.?<6 ?R2./?R4 G2./G5 ?<1./?<2 ?R1./?R3 G3./G7 ?<4./?<5 ?R5./?R6
"uministro ?roveedorK G1 G4 G6 G2 G5 G3 G7
?"eBaK ?ro*ec+oK ?<3./?<6 ?R2./?R4 ?<3./?<6 ?R2./?R4 ?<3./?<6 ?R2./?R4 ?<1./?<2 ?R1./?R3 ?<1./?<2 ?R1./?R3 ?<4./?<5 ?R5./?R6 ?<4./?<5 ?R5./?R6
"uministro ?roveedorK ?"eBaK ?ro*ec+oK G1 ?<3 6R27 6R4 G1 ?<6 6R27 6R4 G4 ?<3 6R27 6R4 G4 ?<6 6R27 6R4 G6 ?<3 6R27 6R4 G6 ?<6 6R27 6R4 G2 ?<1 6R17 6R3 G2 ?<2 6R17 6R3 G5 ?<1 6R17 6R3 G5 ?<2 6R17 6R3 G3 ?<4 6R57 6R6 G3 ?<5 6R57 6R6 G7 ?<4 6R57 6R6 G7 ?<5 6R57 6R6
Etc+tera
98
;ta 'orma ormal *;' "uministro ?roveedorK ?"eBaK ?ro*ec+oK G1 ?<3 ?R2 G1 ?<3 ?R4 G1 ?<6 ?R2 G1 ?<6 ?R4 G4 ?<3 ?R2 G4 ?<3 ?R4 G4 ?<6 ?R2 G4 ?<6 ?R4 G6 ?<3 ?R2 G6 ?<3 ?R4 G6 ?<6 ?R2 G6 ?<6 ?R4 G2 ?<1 ?R1 G2 ?<1 ?R3 G2 ?<2 ?R1 G2 ?<2 ?R3 G5 ?<1 ?R1 G5 ?<1 ?R3 G5 ?<2 ?R1 G5 ?<2 ?R3 G3 ?<4 ?R5 G3 ?<4 ?R6 G3 ?<5 ?R5 G3 ?<5 ?R6 G7 ?<4 ?R5 G7 ?<4 ?R6 G7 ?<5 ?R5 G7 ?<5 ?R6
BEs posi%le descomponer la relacin en dos relaciones tales 2ue est+n en KFNC
;ta 'orma ormal *;' "uministro ?roveedorK ?"eBaK ?ro*ec+oK G1 ?<3 ?R2 G1 ?<3 ?R4 G1 ?<6 ?R2 G1 ?<6 ?R4 G4 ?<3 ?R2 G4 ?<3 ?R4 G4 ?<6 ?R2 G4 ?<6 ?R4 G6 ?<3 ?R2 G6 ?<3 ?R4 G6 ?<6 ?R2 G6 ?<6 ?R4 G2 ?<1 ?R1 G2 ?<1 ?R3 G2 ?<2 ?R1 G2 ?<2 ?R3 G5 ?<1 ?R1 G5 ?<1 ?R3 G5 ?<2 ?R1 G5 ?<2 ?R3 G3 ?<4 ?R5 G3 ?<4 ?R6 G3 ?<5 ?R5 G3 ?<5 ?R6 G7 ?<4 ?R5 G7 ?<4 ?R6 G7 ?<5 ?R5 G7 ?<5 ?R6
100
&esulta 2ueA ?:8rov:8i @(@ ?:8i:8roy A3 ?uministro ?:8rov:8i @(@ ?:8rov:8roy A3 ?uministro ?:8i:8roy @(@ ?:8rov:8roy A3 ?uministro peroA ?:8i:8roy @(@ ?:8i:8roy @(@ ?:8rov:8roy 3 ?uministro
101 A esto se le llama HDependencia de /roductoI y es lo 2ue de-ine la LFN
(M/rovM/i
(M/iM/roy
/roveedor
(M/rovM/roy
/royecto
(uministro
BEst en LFNC
102
*
EstMDep
Estudiante
estudiante c8d9la ombre
Deporte
deporte c;d"#o de!cr"pc";
(e cumplen las si#uientes DFA c9dula/;nom're cdi"o/;descripcin c9dula. cdi"o/;rendimiento BEst en !FN. 2FN. JFN. FN0$C B(e podr HdesnormalizarI la relacinC
103
*
EstMDep
Estudiante
Deporte
d!
est_dep c8d9la c;d"#o re d"m"e +o ombre de!cr"pc";
d2
dJ
104
Conclusin
El en-o2ue por descomposicin -uncional es ms -ormal. pero resulta %astante comple?o de utilizar en especial en %ases de datos comple?as con muc)as dependencias -uncionales. El en-o2ue de modelado semntico de datos (usando el modelo E&E o el modelo de clases) es muc)o ms simple y es el en-o2ue ms comDnmente utilizado )oy en d3a. Es necesario ase#urarse de 2ue en las relaciones de las %ases de datos modeladas no e9istan anomal3as de nin#Dn tipo causadas por la -alta de normalizacin.
105
'P=+S7777
)ttpA88-plus.source-or#e.net8
106
(racias
BCraciasA
107