Sunteți pe pagina 1din 28

Universidad ORT Uruguay Facultad de Ingeniera Licenciatura en Sistemas

Ctedra de Base de Datos Formas


ormales!

David Gimnez 162027

Octubre 2012

David Gimnez 162027

" DIC#

$R#%U T&S 'U# I T# T& R#S$O D#R #ST# TR&B&(O..................................... 3 $R#F&CIO ............................................................................................................................... 4 $RI)#R& FOR)& S#%U D& FOR)& T#RC#R& FOR)& FOR)& OR)&L ............................................................................................ 10 OR)&L ........................................................................................... 13 OR)&L ............................................................................................ 16

OR)&L D# BO*C#+CODD ............................................................................. 18 OR)&L .............................................................................................. 19 OR)&L ............................................................................................... 22

CU&RT& FOR)& 'UI T& FOR)&

C&SO D# L& ,ID& R#&L- B&S# D# D&TOS DISTRIBUID& D# D S .................. 24 #$"LO%O ............................................................................................................................... 25

Ctedra de Base de datos

David Gimnez 162027

$R#%U T&S 'U# I T# T& R#S$O D#R #ST# TR&B&(O

Como surgieron las Formas Normales? ue son las !ormas normales? ue bene!icios brinda su a"licaci#n? Cu$les son las !ormas normales? Como a"licarlas? Caso de estudio %ue "ermita el desarrollo del tema& Caso de la vida real' (ase de datos distribuida de DN)

Ctedra de Base de datos

David Gimnez 162027

$R#F&CIO

Como surgieron.

Desde el ingreso de la in!orm$tica en los "rocesos o"eraciones del gobierno * de las em"resas+ se utilizaron bases de datos+ aun%ue en di!erentes !ormas+ "ara el res"aldo * acceso "osterior de la in!ormaci#n& Durante las dcadas de los 60,s * 70,s muc-os "roveedores generaron sistemas generalizados de mane.o de arc-ivos+ generando muc-a diversidad en el cam"o+ sin estandarizaci#n ace"tada& /n este tiem"o la ma*or0a de las bases de datos se basan en un modelo de red o una sim"le estructura de arc-ivo "lano& )e toma como disci"lina de estudio los mane.adores de bases de datos+ de !orma de "order lograr un est$ndar& 1odo esto cambi# en el a2o 1370 cuando /dgar Fran4 Codd 5Cient0!ico in!orm$tico ingls 26 de agosto de 1326 7 18 de abril de 20069+ investigador asociado de :(;+ desarroll# el modelo relacional * "ublic# un art0culo llamado' & Relational )odel o/ data /or Large S0ared Ban1s!& /l modelo relacional de Codd estaba basado en una teor0a de con.untos matem$ticos %ue serv0a "ara m<lti"les "ro"#sitos' =bstraer la re"resentaci#n de datos de su almacena.e !0sico * mani"ularlos& ;inimizar la redundancia de datos+ dividindolos en distintos gru"os no du"licados %ue "ueden ser relacionados en un in!inito n<mero de !ormas "ara "roducir un in!inito n<mero de re"resentaciones& :ncrementar la consistencia de datos+ "or e.em"lo si se cambia el nombre de un cliente+ este cambiara en todos los re"ortes %ue se -agan acerca de ese cliente+ "or%ue esa "arte es guardada en una sola "arte "ero genera varias vistas o re"resentaciones del dato&

Codd de!ini# reglas matem$ticas %ue deb0an cum"lir los datos dentro de una base de datos relacional "ara %ue estos !ueran con!iables * seguros& = estas reglas se les denomina !ormas normales& )iendo Codd %uien de!ini# las "rimeras 6 !ormas normales& Con el modelo relacional de Codd las bases de datos relacionales cobraron ma*or !uerza * se desarrollaron varios mane.adores+ como es el caso de >arr* /llison %uien desarrollo la base de datos Oracle bas$ndose en las ideas de Codd&

Ctedra de Base de datos

David Gimnez 162027 'ue son las /ormas normales. * 2ue 3ene/icios 3rinda su a4licaci5n. >as FN son reglas matem$ticas %ue se basan en la teor0a de con.untos %ue dan garant0a de %ue en las relaciones re"resentadas no ocurren anomal0as de actualizaci#n ni e?iste "erdida de in!ormaci#n ni de de"endencias entre los datos& )on criterios "ara determinar el grado de vulnerabilidad de una tabla a inconsistencias * anomal0as l#gicas& ;ientras sea m$s alta la !orma normal a"licable a una tabla+ es menos vulnerable a inconsistencias * anomal0as& >as !ormas normales "roveen a los dise2adores de bases de datos de lo siguiente' @n marco !ormal "ara analizar los es%uemas de relaci#n con base en sus calves * en las de"endencias !uncionales entre sus atributos& @na serie de "ruebas %ue "ueden e!ectuarse sobre es%uemas de relaci#n individuales de modo %ue la base de datos relacional "ueda normalizarse -asta el grado deseado&

>a a"licaci#n de las !ormas normales no a*udan a' Aeducir valores redundantes en las tu"las& /sto es cuando el mismo dato a"arece almacenado en m$s de un lugar en la base de datos& >o anterior a*uda a evitar "roblemas de actualizaci#n& /vitar modi!icar un dato en una de sus ubicaciones "ero no en la otra& >o %ue evita la generaci#n de valores contradictorios en las tu"las& /vitar inco-erencia de datos& Cuando es"eramos cierta in!ormaci#n dado un atributo de la base de datos+ "ero encontramos otro ti"o de in!ormaci#n en ese atributo& Aeducir valores nulos en las tu"las& ;e.orar la sem$ntica de los atributos& /vitar reuniones de datos aditivas+ es decir con datos no corres"ondientes o err#neos& /vitar "rdidas de datos en las reuniones de di!erentes relaciones&

/s de signi!icar %ue el mero uso de las !ormas normales no garantiza el me.or desem"e2o de la base de datos& Deben considerarse otros !actores+ "or lo %ue aun%ue siem"re es "osible llevar una base de datos a una !orma normal m$s alta+ no siem"re "uede ser deseable+ "or razones de rendimiento "or e.em"lo&

Ctedra de Base de datos

David Gimnez 162027 Como a4licar las /ormas normales. >as !ormas normales son a"licables a tablas individuales& = la !orma normal m$s alta alcanzada "or una tabla se le llama BNF' Big-est Normal Form& @na tabla satis!ace los re%uisitos de su BNF * de todas las !ormas normales in!eriores& /ntonces se considera %ue una base de datos se encuentra en una !orma normal N+ si todas sus tablas satis!acen los re%uisitos de esa esa !orma normal N& /s decir la BNF de cada tabla es igual o su"erior a N& Cara a"licar las !ormas normales NO es necesario comenzar "or la 1ra+ "asar a la 2da+ luego a la 6ra * as0 sucesivamente& /n realidad un dise2ador de base de datos e?"erimentado "odr0a realizar un "rimer dise2o "ara una base de datos+ cu*a BNF sea desde el "rinci"io la 6NF o la Dta o Eta !ormal normal& /n el siguiente e.em"lo * solo con !ines did$cticos nosotros "lantearemos el caso de una tabla %ue no se encuentra normalizada en ninguna medida * seguiremos un "roceso ordenado de normalizaci#n+ -aciendo "asar a la tabla "or cada !orma normal una a una& Cero ser$ solo con !ines demostrativos * no ser$ muestra de la !orma normal de traba.o al contrastar una base de datos con las !ormas normales& )u"ongamos entonces el caso de una base de datos %ue desea guardar la in!ormaci#n de los tcnicos * los "ro*ectos en los %ue traba.an& =lguien sin e?"eriencia en base de datos "odr0a de!inir una tabla como la %ue sigue'

Ctedra de Base de datos

David Gimnez 162027 Caso de estudio-

A@1 1ecnico Cedula 1ele!ono @niversidad @niversidad Babilidad

>ugarDe /%ui"o Aesidencia Cro*ecto CodCro* =2o )u"ervisor =2osDe/?"eriencia

Fuan

Celular' 03376117 2?? Casa' 2D00&2??? Fuega bien al !utbol 2D11&10?? No tiene

OA1 @rugua*

Aedes

;ontevideo

2012

Carlos

10

>uis

@D/>=A

Crogramaci#n

Canelones

2012

Carlos

12

=ndrs Carlos

6 1

:n!raestructura 2 (ase de Datos

;ontevideo ;ontevideo

( C

H I

2 6

2011 2012

=ntonio =ntonio

E 6

:ndicando adem$s %ue las "ersonas %ue se encuentran en los "rimeros diez lugares son .e!es+ * el resto son em"leado&

Ctedra de Base de datos

David Gimnez 162027

/ste dise2o "resenta m<lti"les "roblemas' Ba* datos re"etidos %ue "ueden guardar inconsistencias& = %uien le "ertenece la cdula 1? )on las misma "ersona? Ba* atributos %ue no almacenan ning<n dato o "ermiten almacenar cual%uier dato& /l encabezado J1el!onoJ llega a ser sem$nticamente di!uso+ "uede re"resentar un n<mero de tel!ono+ una lista de n<meros de tel!ono+ o de -ec-o cual%uier cosa& @na consulta como JK u "ares de 1cnicos com"arten un n<mero tele!#nico?J es virtualmente im"osible de !ormular& Ba* in!ormaci#n %ue no es almacenada o distinguida "or la relaci#n& Como %uien es .e!e * %uien es em"leado& Con este dise2o es im"osibles de!inir restricciones claras "ara los atributos&

Ctedra de Base de datos

David Gimnez 162027 Cules son las /ormas normales. * como a4licarlas. >a "rimera !orma normal -abla b$sicamente el conce"to de relaci#n * su re"resentaci#n& >a segunda * tercera !orma normal se basan en las de"endencias !uncionales res"ecto de las claves "rimarias+ la !orma normal de (o*ce7Codd es una versi#n m$s estricta de la 6FN %ue inclu*e a las claves candidatas& >a cuarta * %uinta !ormal normales -ablan de los .oin no aditivos sin "erdida * la conservaci#n de de"endencias& /dgar Fran4 Codd de!ini# las tres "rimeras !ormas normales& /stas se "ueden resumir

re2uiriendo 2ue todos los atri3utos no+clave sean de4endientes en 6la clave7 la clave com4leta7 y nada e8ce4to la clave6&
>as cuarta * %uinta !ormas normales se ocu"an es"ec0!icamente de la re"resentaci#n de las relaciones muc-os a muc-os * uno muc-os entre los atributos&

Ctedra de Base de datos

David Gimnez 162027

$RI)#R& FOR)&

OR)&L
es una 2ue

Una ta3la de 3ase de datos relacional 2ue se ad0iere a la 9F satis/ace cierto con:unto m0nimo de criterios& >a tabla es una re"resentaci#n !iel de una relaci#n& >a tabla est$ libre de Jgru"os re"etitivosJ&

Las ta3las como re4resentaciones /iel de una relaci5n )eg<n la de!inici#n de C-risto"-er Date 5nacido en 13D19 de la 1NF+ una tabla est$ en 1FN si * solo si es Lisomor!a a alguna relaci#nJ+ lo %ue signi!ica+ es"ec0!icamente+ %ue satis!ace las siguientes cinco condiciones' 1& No -a* orden de arriba a aba.o en las !ilas& 2& No -a* orden de iz%uierda a derec-a en las columnas& 6& No -a* !ilas du"licadas& D& Cada intersecci#n de !ila * columna contiene e?actamente un valor del dominio a"licable 5* nada m$s9& E& 1odas las columnas son regulares 5es decir+ las !ilas no tienen com"onentes como :Ds de !ila+ como los n<meros en las !ilas de /?cel9& >a violaci#n de cual%uiera de estas condiciones signi!icar0a %ue la tabla no es estrictamente relacional+ * "or lo tanto no est$ en 1FN& =lgunos e.em"los de tablas %ue no satis!acen esta de!inici#n de 1FN son'

@na tabla %ue carece de una clave "rimaria& /sta tabla "odr0a acomodar !ilas du"licadas+ en violaci#n de la condici#n 6& @na tabla cu*a de!inici#n e?ige %ue los resultados mantengan un orden "articular+ de modo %ue el orden de la !ila sea un as"ecto intr0nseco * signi!icativo de la misma& /sto viola la condici#n 1& >as tu"las en relaciones verdaderas no est$n ordenadas una con res"ecto de la otra& @na tabla con "or lo menos un atributo %ue "ueda ser nulo& @n atributo %ue "ueda ser nulo estar0a en violaci#n de la condici#n D+ %ue re%uiere a cada cam"o contener e?actamente un valor de su dominio de columna& )in embargo+ debe observarse %ue este as"ecto de la condici#n D es controvertido& ;uc-os autores consideran %ue una tabla est$ en 1FN si ninguna clave candidata "uede contener valores nulos+ "ero se ace"tan stos "ara atributos 5cam"os9 %ue no sean clave&

%ru4os re4etidos >a cuarta condici#n de Date+ %ue e?"resa Jlo %ue "ara la ma*or0a se entiende como la caracter0stica %ue de!ine la 1FNM+ concierne a gru"os re"etidos& /n el e.em"lo mencionado Ctedra de Base de datos 10

David Gimnez 162027 se muestra la re"etici#n de gru"os+ en violaci#n de la 1NF& Cara guardar m<lti"les n<meros tele!#nicos "ara algunos tcnicos+ la manera m$s sim"le es "ermitir %ue el cam"o J1el!onoJ contenga m$s de un valor en cual%uier registro dado& =sumiendo+ sin embargo+ %ue la columna J1el!onoJ est$ de!inida en alg<n ti"o de dominio de n<mero tele!#nico 5"or e.em"lo+ el dominio de cadenas de 16 caracteres de longitud9+ la re"resentaci#n de arriba no est$ en 1FN& >a 1FN "ro-0be a un cam"o contener m$s de un valor de su dominio de columna+ "or lo %ue una "rimera a"ro?imaci#n al "roblema "odr0a ser como sigue& Fec0a C;dula om3re De4artamento Tel;/ono9 Tel;/ono< acimiento 1 Fuan Crez Carlos G#mez Fuan Carlos Cerez >uis Finanzas 23007117 00 230072E7 1E 230071E7 02 232E7117 11 2D00E072E 2070871378 No traba.a bien 217077 1387 2E70E71381 (uen em"leado Conce4to

Croducci#n

Finansas

(uen ti"o

)in embargo+ esta re"resentaci#n -ace uso de columnas %ue "ermiten valores nulos+ * "or lo tanto no se con!orman con la de!inici#n de la 1NF de Date& :ncluso si se contem"la la "osibilidad de columnas con valores nulos+ el dise2o no est$ en armon0a con el es"0ritu de 1NF& 1el!ono 1 * 1el!ono 2+ com"arten e?actamente el mismo dominio * e?actamente el mismo signi!icadoN el dividir del n<mero de tel!ono en dos encabezados es arti!icial * causa "roblemas l#gicos& /stos "roblemas inclu*en'

Di!icultad en -acer consultas a la tabla& /s di!0cil contestar "reguntas tales como JK u em"leados tienen el tel!ono G?J * JK u em"leados com"arten un n<mero de tel!ono?J& >a im"osibilidad de -acer cum"lir la unicidad las relaciones Cliente7a71el!ono "or medio del AD(;)& =l em"leado 2 se le "uede dar e%uivocadamente un valor "ara el 1el!ono 2 %ue es e?actamente igual %ue el valor de su 1el!ono 1& H eso %ue signi!icar0a?& Aestringe la realidad en cuanto a la cantidad de tel!ono "or em"leados a dos& )i viene un em"leado con cuatro n<meros de tel!ono+ estamos obligados a guardar solamente dos * de.ar los restantes sin guardar& /sto signi!ica %ue el dise2o de la base de datos est$ im"oniendo restricciones al "roceso del negocio+ en vez de a la inversa como debe ser&

Ctedra de Base de datos

11

David Gimnez 162027 &tomicidad Codd -ace re!erencia al conce"to de atomicidad& :ndica %ue Jse re%uiere %ue los valores sean at#micos con res"ecto al D(;) en los dominios en los %ue cada relaci#n es de!inidaM& De!ine un valor at#mico como uno %ue Jno "uede ser descom"uesto en "edazos m$s "e%ue2os "or el D(;) 5e?ce"to "or ciertas !unciones es"eciales9M& Bug- DarOen * C-ris Date -an sugerido %ue el conce"to de Codd de un Jvalor at#micoJ es ambiguo+ * %ue esta ambigPedad -a conducido a una e?tensa con!usi#n sobre c#mo debe ser entendida la 1NF& /n "articular+ la noci#n de un Jvalor %ue no "uede ser descom"uestoJ es "roblem$tica+ "ues "arecer0a im"licar %ue "ocos+ si alg<n+ ti"os de datos son at#micos'

@na cadena de caracteres "arecer0a no ser at#mica+ *a %ue el AD(;) t0"icamente "ro"orciona o"eradores "ara descom"onerla en subcadenas& @na !ec-a "arecer0a no ser at#mica+ *a %ue el AD(;) "ro"orciona t0"icamente o"eradores "ara descom"onerla los com"onentes de d0a+ mes+ * a2o& @n n<mero de "unto !i.o "arecer0a no ser at#mico+ *a %ue el AD(;) "ro"orciona t0"icamente o"eradores "ara descom"onerlo en com"onentes de n<meros enteros * !raccionarios&

Date sugiere %ue Jla noci#n de atomicidad no tiene ning<n signi!icado absolutoJN un valor "uede ser considerado at#mico "ara algunos "ro"#sitos+ "ero "uede ser considerado un ensambla.e de elementos m$s b$sicos "ara otros "ro"#sitos& >a atomicidad debe ser considerara en base al conce"to re"resentado& /n el e.em"lo de los n<meros de tel!onos+ la atomicidad estar0a dada "or%ue cada cam"o contuviese un <nico n<mero de tel!ono * no varios&

Ctedra de Base de datos

12

David Gimnez 162027 Un dise=o con/orme con 9F @n analista con "oca e?"eriencia "odr0a sugerir una soluci#n como la siguiente' >a cual se encuentra ine%u0vocamente en 1 FN&

TEC !C"# Cedula 1ecnico

Te$e%onosTe&ni&o Cedula 1ele!ono id1i"o1ele!ono

Ti'osTe$e%onos id1i"o1ele!ono 1i"o1ele!ono

Te&ni&o(niversidades Cedula A@1@niversidad @niversidad 5Cedula7A@1@niversidad9 5Cedula7@niversidad9 -ro.e&to#,'ervisor CodCro* =2o )u"ervisor /?"eriencia

Te&ni&o)a*i$idad Cedula Babilidad >ugarDeAesidencia 5Cedula 77Q >ugarDeAesidencia 9

E+,i'os Codigo /%ui"o

Te&ni&oE+,i'o-ro.e&to Cedula Codigo CodCro*

-ro.e&tos CodCro* Cro*ecto

/n este dise2o no ocurren gru"os re"etidos de n<meros tele!#nicos& /n lugar de eso+ cada enlace 1cnico7a71el!ono a"arece en su "ro"io registro&

Ctedra de Base de datos

13

David Gimnez 162027

S#%U D& FOR)&

OR)&L

>a segunda !orma normal se basa en el conce"to de de"endencia !uncional& @na tabla est$ en 2NF si * solo si+ dada cual%uier clave candidata * cual%uier atributo %ue no sea un constitu*ente de la clave candidata+ el atributo no clave de"ende de toda la clave candidata en vez de solo una "arte de ella& =%u0 debemos entender claramente el conce"to de de"endencia !uncional& G 7Q H& esto indica %ue un atributo o con.unto de atributos G de!inen a un atributo o con.unto de atributos H& /l reci"roco no tiene "or %u ser verdadero+ es mas es "robable %ue no lo sea 5H 7Q G9& /ntindase %ue la de"endencia es en base a la sem$ntica de la realidad re"resentada+ aun%ue tambin "ueden in!erirse de"endencias !uncionales %ue no son sem$nticamente obvias& /n trminos levemente m$s !ormales' una tabla 1NF est$ en 2NF si * solo si

ninguno de sus atri3utos no+4rinci4ales son /uncionalmente de4endientes en una 4arte >su3con:unto 4ro4io? de una clave candidata& /ntindase
atributo no7"rinci"al como uno %ue no "ertenece a ninguna clave candidata& /sto es' sea G'R?1+ ?2S e H'R*1S& /ntonces )i R?1+ ?2S 7Q R*1S "ara %ue la tabla este en 2da !orma normal no "uede darse %ue R?1S 7Q R*1S ni %ue R?2S 7Q R*1S& /s decir %ue si G es descom"uesta H de.a de de"enden !uncionalmente de su valor& Observe %ue cuando una tabla 1NF no tiene ninguna clave candidata com"uesta 5claves candidatas consistiendo en m$s de un atributo9+ la tabla est$ autom$ticamente en 2NF& /n el e.em"lo traba.ado+ en la tabla 1ecnicoBabilidad+ el cam"o >ugarDeAesidencia "resenta varios "roblemas' )i un tcnico "osee m$s de una -abilidad el valor de lugar de residencia a"arecer0a re"etido * "odr0a ser vulnerable a anomal0as de actualizaci#n+ de.ando la "osibilidad "ara %ue en un registro diga un lugar * en otro registro se contradiga con otro lugar& >os datos resultantes im"licar0an res"uestas contradictorias a la "regunta JKCu$l es el lugar de residencia del tcnico G?J& =dem$s el dato lugar de residencia es l#gicamente de"endiente <nicamente de la cdula del tcnico * no de la -abilidad %ue "osea+ "or lo %ue de"ende solamente de "arte de la clave * no de toda la clave&

Ctedra de Base de datos

14

David Gimnez 162027

@n alternativa con!orme a 2NF de este dise2o re"resentar0a la misma in!ormaci#n en dos tablas'
TEC !C"# Te&ni&o)a*i$idad

Cedula 1ecnico >ugarDeAesidencia

Cedula Babilidad

/stas tablas est$n en 2NF&


< F y las claves candidatas

@na tabla "ara la cual no -a* de"endencias !uncionales "arciales en la clave "rimaria est$ t0"icamente+ "ero no siem"re+ en 2NF& =dem$s de la clave "rinci"al+ la tabla "uede contener otras claves candidatasN es necesario establecer %ue ning<n atributo no7"rinci"al tienen de"endencias de clave "arciales en cuales%uiera de estas claves candidatas& >as m<lti"les claves candidatas ocurren en la siguiente tabla' 5e.em"lo de Ti4i"edia9

;odelos elctricos de ce"illo de dientes

Fa3ricante )odelo

om3re com4leto del modelo $as del /a3ricante

Forte

G7Crime

Forte G7Crime

:talia

Forte

@ltraclean

Forte @ltraclean

:talia

Dent7o7Fres- /I(rus-

Dent7o7Fres- /I(rus-

@)=

Uoba*as-i

)1760

Uoba*as-i )1760

Fa"#n

Boc-

1oot-master Boc- 1oot-master

=lemania

Boc-

Contender

Boc- Contender

=lemania

Ctedra de Base de datos

15

David Gimnez 162027

=un si el dise2ador -a es"eci!icado la clave "rinci"al como RNombre com"leto del modeloS+ la tabla no est$ en 2NF& RFabricante+ ;odeloS es tambin una clave candidata+ * Ca0s del !abricante es de"endiente en un subcon.unto a"ro"iado de l' Fabricante&

Ctedra de Base de datos

16

David Gimnez 162027

T#RC#R& FOR)&

OR)&L

>a tercera /orma normal 5@ F9 de!inida "or Codd indica %ue una tabla est$ en 6NF si * solo si las dos condiciones siguientes se mantienen' >a tabla est$ en segunda !orma normal 52NF9 Ning<n atributo no7"rimario de la tabla es de"endiente transitivamente de una clave candidata&

@n atributo no7"rimario es un atributo %ue no "ertenece a ninguna clave candidata& @na de"endencia transitiva es una de"endencia !uncional'

G H e H I entonces G I+
=%u0 I no es inmediatamente de"endiente de G+ "ero s0 de un tercer con.unto de atributos H+ %ue a su vez de"ende de G& @na !ormulaci#n alternativa de la de!inici#n de Codd+ dada "or Carlo Ianiolo en 1382+ es sta' @na tabla est$ en 6NF si * solo si+ "ara cada una de sus de"endencias !uncionales G =+ "or lo menos una de las condiciones siguientes se mantiene'

G contiene = G es una su"erclave1 = es un atributo "rimario 5es decir+ = est$ contenido dentro de una clave candidata9

>a de!inici#n de Ianiolo tiene la venta.a de dar un claro sentido de la di!erencia entre la 6NF * la m$s rigurosa !orma normal de (o*ce7Codd 5(CNF9& >a (CNF sim"lemente elimina la tercera alternativa 5J= es un atributo "rimarioJ9&

6 ada e8ce4to la clave6


@n resumen de la de!inici#n de Codd de la 6NF+ !ue dado "or (ill Uent' cada atributo no7 clave Jdebe "ro"orcionar un -ec-o sobre la clave+ la clave entera+ * nada m$s e?ce"to la claveJ&

@na su"erclave+ es un atributo o con.unto de atributos de una relaci#n %ue nos "ermite identi!icar cada tu"la %ue contiene la relaci#n como <nica& @na clave candidata de una relaci#n es una su"erclave C de la relaci#n %ue cum"le %ue ning<n subcon.unto de atributos "ro"io de C es su"erclave& /s decir %ue no "uede ser descom"uesta en sus atributos o de.ar0a de ser clave+ de.ar0a de identi!icar a las tu"las de la relaci#n& /ntonces una )u"erClave siem"re es clavecandidata+ "ero una clave candidata no siem"re es su"erclave&

/n una relaci#n /;C>/=DO) 5C:+ Credencial+ nombre+ a"ellido+ tel!ono9+ algunas de las su"erclaves de la relaci#n ser0an los siguientes subcon.untos de atributos' RC:+ Credencial+ nombre+ a"ellido+ tel!onoS+ RC:+ a"ellidoS+ RC:S * RCredencialS+ "ero solo RC:S * RCredencialS son claves candidatas&

Ctedra de Base de datos

17

David Gimnez 162027 Ae%uerir %ue los atributos no7clave sean de"endientes en Jla clave com"letaJ asegura %ue una tabla est en 2NFN un re%uerimiento "osterior %ue los atributos no7clave sean de"endientes de Jnada e?ce"to la claveJ asegura %ue la tabla est en 6NF&

#:em4lo
@n e.em"lo de una tabla 2NF %ue !alla en satis!acer los re%uerimientos de la 6NF es' -ro.e&tos -ro.e&to#,'ervisor

CodCro* Cro*ecto

CodCro* =2o
)u"ervisor

/?"eriencia

>a <nica clave candidata de Cro*ecto)u"ervisor es RCodCro*+ =2oS& >a violaci#n de la 6NF ocurre "or%ue el atributo no "rimario /?"eriencia es de"endiente transitivamente de RCodCro*+ =2oS v0a el atributo no "rimario )u"ervisor& /l -ec-o de %ue la /?"eriencia del su"ervisor es !uncionalmente de"endiente en el )u"ervisor -ace la tabla vulnerable a inconsistencias l#gicas+ "ues no -a* nada %ue im"ida a la misma "ersona ser mostrada con di!erentes datos de e?"eriencia en diversos registros& Cara e?"resar los mismos -ec-os sin violar la 6NF+ es necesario dividir la tabla en dos'

-ro.e&tos

-ro.e&to#,'erviso

#,'ervisores

CodCro* Cro*ecto

CodCro* =2o )u"ervisor

)u"ervisor /?"eriencia

>as anomal0as de actualizaci#n no "ueden ocurrir en estas tablas+ las cuales est$n en 6NF&

Ctedra de Base de datos

18

David Gimnez 162027

FOR)&

OR)&L D# BO*C#+CODD

>a Forma ormal de Boyce+Codd 5o F BC9 es una versi#n ligeramente m$s !uerte de tercera !orma normal 56FN9& >a !orma normal de (o*ce7Codd re%uiere %ue no e?istan de"endencias !uncionales no triviales de los atributos %ue no sean un con.unto de la clave candidata& /n una tabla en 6FN+ todos los atributos de"enden de una clave+ de la clave com"leta * de ninguna otra cosa e?ce"to de la clave 5e?clu*endo de"endencias triviales+ como 9& )e dice %ue una tabla est$ en FN(C si * solo si est$ en 6FN * cada de"endencia !uncional no trivial tiene una clave candidata como determinante& /n trminos menos !ormales+ una tabla est$ en FN(C si est$ en 6FN * los <nicos determinantes son claves candidatas&

#:em4lo
)olamente en casos raros una tabla en 6NF no satis!ace los re%uerimientos de la FN(C& @n e.em"lo de tal tabla %ue no satis!ace FN(C es'

TEC !C"# Cedula 1ecnico

Te&ni&o(niversidades Cedula A@1@niversidad

>ugarDeAesidencia

@niversidad

/l "ro"#sito de la tabla 1ecnico@niversidad es mostrar a %ue @niversidades asisti# cada tcnico& >as claves candidatas de 1ecnico@niversidades son 5Cedula7A@1@niversidad9+ 5Cedula7 @niversidad9& Cor lo tanto los tres atributos de la tabla son atributos "rimarios+ es decir+ los tres atributos "ertenecen a las claves candidatas& Aecordar %ue la 2NF "ro-0be de"endencias !uncionales "arciales de atributos no7"rimarios en las claves candidatas+ * la 6NF "ro-0be de"endencias !uncionales transitivas de atributos no7"rimarios en claves candidatas& Dado %ue la tabla de arriba carece de cual%uier atributo no7"rimario+ est$ en 2NF * 6NF& >a FN(C es m$s rigurosa %ue la 6NF en %ue no "ermite ninguna de"endencia !uncional en la cual el con.unto determinante de atributos no sea una clave candidata& >a de"endencia de Aut@niversidad 7 @niversidad es ese ti"o de de"endencia& Cor consiguiente+ la tabla de arriba no est$ en FN(C

Ctedra de Base de datos

19

David Gimnez 162027 Cual%uier tabla %ue sea insu!iciente en satis!acer FN(C ser$ vulnerable a inconsistencias l#gicas& /n la tabla de arriba "od0a ser re"resentada una combinaci#n inconsistente de Aut@niversidad 7 @niversidad& /n este caso+ corregir el "roblema ser0a una sim"le cuesti#n de usar solo un es%uema de identi!icaci#n "ara las universidades' o el A@1 o el Nombre+ "ero no ambos&

TEC !C"#

Te&ni&o(niversidades

(niversidades

Cedula 1ecnico >ugarDeAesidencia

Cedula A@1

A@1 @niversidad

Otra /ormulaci5n
@na !orma sencilla de com"robar si una relaci#n se encuentra en FN(C consiste en com"robar+ adem$s de %ue est en 6FN+ lo siguiente'

519 )i no e?isten claves candidatas com"uestas 5con varios atributos9+ est$ en FN(C& 529 )i e?isten varias claves candidatas com"uestas * stas tienen un elemento com<n+ no est$ en FN(C&

/n el e.em"lo e?isten dos claves candidatas * ambas com"arten el atributo Cedula+ "or lo tanto no est$ en FN(C&

Ctedra de Base de datos

20

David Gimnez 162027

CU&RT& FOR)&

OR)&L

>a cuarta /orma normal 5A F9 se asegura de %ue las de"endencias multivaluadas inde"endientes sean correctas * e!icientemente re"resentadas en un dise2o de base de datos& @na tabla est$ en DNF si * solo si est$ en 6NF o en (CNF 5cual%uiera de ambas9 * no "osee de"endencias multivaluadas no triviales& @na tabla con una de"endencia multivaluada es una donde la e?istencia de dos o m$s relaciones inde"endientes muc-os a muc-os causa redundanciaN * es esta redundancia la %ue es su"rimida "or la cuarta !orma normal&

Considere el siguiente e.em"lo' E+,i'os

T&ni&os

-ro.e&tos

1/CN:CO 1 2 6 D 1 2

/ @:CO = = ( ( = =

CAOH/C1O G G H H I I

Cada !ila indica %ue un /%ui"o de traba.o asignado a un "ro*ecto determinado est$ integrado "or determinados tcnicos& Note %ue debido a %ue la tabla tiene una clave <nica * ning<n atributo no7clave+ no viola ninguna !orma normal -asta el (CNF& Cero debido a %ue los tcnicos asignados a un e%ui"o de traba.o son inde"endientes del "ro*ecto asignado "ara ese e%ui"o+ -a* redundancia en la tabla' "or e.em"lo+ nos dicen dos veces %ue el e%ui"o = traba.a sobre el "ro*ecto G+ * si el mismo e%ui"o comienza a traba.ar sobre el "ro*ecto I nos dir$ dos veces %ue los tcnicos 1 * 2 "ertenecen a ese e%ui"o+ "or%ue necesitaremos agregar m<lti"les registros+ uno "ara cada una de los tcnicos integrantes del e%ui"o& /n trminos !ormales+ esto se describe como %ue T;cnico est teniendo una de4endencia multivalor en #2ui4oB

Ctedra de Base de datos

21

David Gimnez 162027 Cara satis!acer la DNF+ debemos "oner los -ec-os sobre las integrantes de los e%ui"os en una tabla di!erente de los -ec-os sobre los "ro*ectos sobre los %ue traba.a cada e%ui"o'

T&ni&os

E+,i'os

-ro.e&tos

1ecnico 1 2 6 D

/%ui"o = = ( (

/%ui"o = ( =

Cro*ecto G H I

De -acer un .oin natural entre estas dos tablas+ obtendr0amos la tabla de la %ue "artimos sin "rdida de in!ormaci#n * sin datos aditivos& Notar %ue esta soluci#n de4ende /uertemente de la realidad a re4resentar' Ha %ue si los com"onentes de los e%ui"os variara "or "ro*ecto+ la tabla original de las tres columnas satis!ar0a la DNF& =%u0 vemos un caso de lo mencionado al "rinci"io+ como demostr# Aonald Fagin siem"re "osible alcanzar la DNF "ero no siem"re deseable&

Ctedra de Base de datos

22

David Gimnez 162027

'UI T& FOR)&

OR)&L

>a 2uinta /orma normal 5CF 9+ tambin conocida como /orma normal de 4royecci5n+ uni5n 5$(D F9+ es "ara reducir redundancia en las bases de datos relacionales %ue guardan -ec-os multi7valores aislados sem$nticamente& @na tabla se dice %ue est$ en ENF si * solo si est$ en DNF * cada de"endencia de uni#n 5.oin9 en ella es im"licada "or las claves candidatas& /s di!0cil descubrir de"endencias de reuni#n en bases de datos reales de cientos de tributos+ es "or eso %ue en la "r$ctica real se les "resta "oca atenci#n& >as de"endencias de inclusi#n se de!inieron "ara !ormalizar las restricciones entes relaciones+ como la de clave !or$nea& Generalmente esta !orma normal solo se encuentra al estudiar cuidadosamente las restricciones de la realidad& Cor e.em"lo si tuviramos Cro*ectos+ Com"onente * Croveedor+ donde debe re"resentarse %ue cada "ro*ecto re%uiere de cierto com"onente+ %ue es "rovisto "or cierto "roveedor& Con una relaci#n ternaria estar0a bien "ara re"resentar esa realidad&

Com'onente

-roveedor

-ro.e&to

Croveedor Fuan Fuan >aura Carlos Carlos >aura

Com"onente C-i"s Aoms C-i"s Aoms Aoms C-i"s

Cro*ecto = ( ( C ( =

Cero si la realidad indicara %ue si un "roveedor C suministra el com"onente C+ * un Cro*ecto H consume el com"onente C+ * el "roveedor C es %uien suministra al Cro*ecto H entonces lo

Ctedra de Base de datos

23

David Gimnez 162027 suministra del com"onente C& /ntonces la realidad deber0a modelarse con tres tablas di!erentes %ue "ermitan la reuni#n sin "rdida de in!ormaci#n& Com'onente

-roveedor

-ro.e&to

CroveedorCom"onente Croveedor Fuan Fuan >aura Carlos Com"onente C-i"s Aoms C-i"s Aoms

Cro*ectoCom"onente Cro*ecto = ( ( C Com"onente C-i"s C-i"s Aoms Aoms

Cro*ectoCroveedor Cro*ecto = = ( ( C Croveedor Fuan >aura >aura Fuan Carlos

Ctedra de Base de datos

24

David Gimnez 162027

C&SO D# L& ,ID& R#&LB&S# D# D&TOS DISTRIBUID& D# D S

DN)' )istema de Nombres de Dominio& /s una base de datos distribuida+ organizada de !orma .er$r%uica cu*a estructura se mantiene -asta -o* d0a casi idntica a como lo era cuando se cre#& /st$ basada en con.untos de eti%uetas agru"ados ba.o un nombre .er$r%uico en com<n * almacenados ma*oritaria mente en arc-ivos de te?to se"arados "or cada dominio& /s decir %ue cada dominio 5&com+ &u*+ &com&u*9 mantendr$ su "ro"ia base de datos con la in!ormaci#n de las ma%uinas %ue "ertenecen a su dominio& >a estructura genrica de un registro en una base de datos DN) es la siguiente' Aegistro RNombre+ 11>+ Clase+ 1i"o+ ValorS om3re' Bace re!erencia al nombre del registro DN) buscado& /.' OOO&ort&edu&u*& /s un cam"o al!anumrico %ue no "uede estar vac0o& TTL' 1ime to live' 1iem"o de vida& :ndica cuanto tiem"o en segundos es guardado en cac-e la in!ormaci#n contenida en el registro& De"ender$ de cuan estable es el registro& /s un cam"o numrico& Clase' :ndica %ue in!ormaci#n almacena el registro& /.' :N :nternet :n!ormation& /s un cam"o de te?to %ue no "uede estar vac0o& Ti4o' 1i"o de registro al %ue -ace re!erencia la in!ormaci#n almacenada& /.' =' address direcci#n de un -ostN ;?' ;ail (o? direcci#n de servidores de correo+ N)' Name )erver+ nombres de los servidores de dominio+ etc& /ste es un cam"o de te?to %ue no "uede estar vac0o& ,alor' Cuede ser un n<mero+ un nombre de dominio+ una cadena de te?to+ u otro ti"o de dato+ de"endiendo de la sem$ntica %ue se encuentre en el cam"o Ti4o& @n e.em"lo de una tabla del servidor de dominio de ort&edu&u*& "odr0a ser como sigue' O)BR# aulas ort&edu&u*& OOO ns1 >ab1 TTL 6600 6600 86D00 6600 86D00 TI$O = N) CN=;/ = 1G1 CL&S# :N :N :N :N :N ,&LOR 200&66&21&E0 ns1&ort&edu&u*& =ulas 200&66&21&1D CC1 en laboratorio 1 "lanta ba.a&
25

Ctedra de Base de datos

David Gimnez 162027

/videntemente esta tabla no cum"le ninguno de los re%uisitos "lanteados en ninguna de las !ormas normales& Ni si%uiera de la "rimera !orma normal+ *a %ue el dominio del cam"o valor "uede ser virtualmente cual%uier cosa& >a "regunta es' Funciona mal el servicio de internet basado en DN) "or no encontrase normalizadas sus tablas? @na res"uesta adecuada a tan sub.etiva "regunta "odr0a ser %ue el servicio cum"le su cometido * nadie -a "lanteado de !orma seria cambiarlo o a.ustarlo& Codr0a !uncionar me.or si la base de datos de DN) !uera normalizada? (ueno esa "regunta %uedar$ abierta "ara discusi#n "or%ue sin duda e?isten muc-os m$s as"ectos a considerar %ue solamente la estructura l#gica de los datos& /n de!initiva -a* %ue considerar %ue e?isten en "roducci#n muc-as bases de datos %ue no se a"egan a los criterios de bases de datos normalizadas * %ue usamos d0a a d0a sin inconvenientes& Cor lo %ue las !ormas normales nos brinda un marco de correctitud * seguridad en cuanto a los datos contenidos en nuestras bases de datos+ "ero no son re%uisitos esenciales "ara su !uncionamiento& )in embargo tambin deber0amos mencionar %ue al traba.ar sobre una base de datos %ue no se a"egue a los re%uisitos de !ormalidad %ue dan las !ormas normales+ debemos tener ma*ores consideraciones * seguramente m$s -ora de "rogramaci#n sobre los so!tOare %ue interact<en con esas bases "ara asegurar la correctitud de los datos&

Ctedra de Base de datos

26

David Gimnez 162027

#$"LO%O
>as !ormas normales son una -erramienta !ormal "ara el dise2o * estructuraci#n de las bases de datos relacionales& No es necesaria su a"licaci#n "ara %ue una base de datos !uncione& Cero si es una !orma de lograr seguridad en los datos+ %ue de otra manera deber0an ser garantizadas "or la "rogramaci#n de las reglas del negocio en el sistema desarrollado sobre la base de datos& /l analista de datos no deber0a "asar "or alto las !ormas normales * las reglas de normalizaci#n al momento de brindar una soluci#n de base de datos ante una realidad "lanteada+ de !orma de tener ciertas garant0as de e!iciencia * seguridad en los datos a almacenar& uedar$ a discreci#n de cada dise2ador * sus necesidades+ el grado de a"licaci#n de las !ormas normales+ "ara llevar sus relaciones a las !ormas normales m$s altas&

Ctedra de Base de datos

27

David Gimnez 162027

BIBLIO%R&F"&
)istemas de (ases de Datos W Conce"tos Fundamentales W /lmasri X Navat-e& 2da /dici#n& Ti4i"edia' Formas Normales& Documentos "ublicados "or la c$tedra de Aedes de Datos de la Facultad de :ngenier0a de la @niversidad OA1 5esto en lo %ue re!iere al an$lisis de DN)9&

Ctedra de Base de datos

28

S-ar putea să vă placă și