entorno97sese.com

97sese.com/  时间:2021-03-19  阅读:()
apuntesBasesdeDatos1EvaGómezBallesterPatricioMartínezBarcoPalomaMoredaPozoArmandoSuárezCuetoAndrésMontoyoGuijarroEstelaSaqueteBoroDpto.
deLenguajesySistemasInformáticosEscuelaPolitécnicaSuperiorUniversidaddeAlicantehttp://www.
dlsi.
ua.
es/asignaturas/bdBIBLIOGRAFABSICAAcontinuaciónsepresentanloslibrosdetextosqueseconsideranmanualesbásicosparalaasignatura.
Decadaunodeellos,presentamosunbreveresumenconlaintencióndefacilitaralalumnounaprimeraaproximaciónsobrelaidoneidaddecadaunodeellosparacadaunadelaspartesdeltemariodelaasignatura.
CELMA03Celma,M.
;Casamayor,J.
C.
;Mota,L.
BasesdeDatosRelacionalesPearson-PrenticeHall,2003.
DATE01Date,C.
J.
Introducciónalossistemasdebasesdedatos.
Addison-WesleyPublishingCompany,Ed.
7,2001.
ELMASRI02Elmasri&NavatheFundamentosdeSistemasdeBasesdeDatos.
Addison-WesleyPublishingCompany,Ed.
3,2002SILBERSCHATZ02Silberschatz,S.
,Korth,H.
FundamentosdeBasesdeDatos.
McGraw-Hill,Ed.
3,2002CONNOLLY05SistemasdeBasesdeDatos.
Connolly,ThomasM.
;Begg,CarolynE.
AddisonWesley,2005DRAERealAcademiaEspaoladelaLenguaDiccionariodelaLenguaEspaolaEspasa,2001http://buscon.
rae.
es/diccionario/drae.
htmComentariosalabibliografíabásicaCELMA03Estelibroestápensadoparaintroducirseenlatemáticadelasbasesdedatosrelacionalesmedianteunapresentaciónformalyrigurosa.
Enloscapítulos1y2seintroducenlosconceptosdebasededatos,sistemasdegestióndebasesdedatosylosprincipalesmodelosdedatos.
Elcapítulo3presentalosfundamentosdelmodelorelacionaldedatosdesdeladobleperspectivaalgebraicaylógica,loquepermiteintroducirformalmentelasestructurasdedatosdelmodeloysusoperadoresasociadosmedianteellgebraRelacional.
Ademásproporcionalabaseformallógicaparaintroducirloslenguajeslógicosdeinterrogación,elCálculoRelacionaldeTuplasyelCálculoRelacionaldeDominios.
Enelcapítulo4seintroduceellenguajeSQL,yenelcapítulo5seprofundizaenelconceptodesistemadegestióndebasesdedatos.
Ellibrocontienenumerososejemplosyejerciciosresueltos.
EllibrohasidorealizadoporungrupodeprofesoresdeBasesdeDatosdelaUniversidadPolitécnicadeValenciayrecogesuexperienciaenlaenseanzadeestamateria.
Esporestemotivoqueseajustaglobalmentealenfoquedocentepropuestoenlaasignatura,ytieneespecialaplicaciónenlasunidades1,2,3,4,y7deltemario,aunquenoincluyeinformaciónsobreaspectosdenormalización(unidad5),nisobrelaorganizaciónfísicadeunabasededatos(unidad6),ypuestoquesebasaenelmodelodedatosrelacional,noincluyeinformaciónparaelseguimientodelaunidad8deltemariodelaasignaturarelativaalmodeloentidad-relación.
DATE01EstelibroeslatraducciónencastellanodelaséptimaedicióndeltextoDate,ed.
2000querevisaactualizaymejoraciertosaspectoscontempladosenlaversiónpreviaDate,ed.
1993.
Ellibroseorganizaenseispartesprincipales.
LaparteIproporcionaunaampliaintroducciónalosconceptosbásicosdelasbasesdedatos,adaptándosealtemariopropuestoenlaunidad1delaasignatura,eincluyendoinformaciónacercadelossistemasdegestióndelasbasesdedatos,adaptándosealpropuestoenlaunidad7;laparteIIabordaelmodelorelacionaldedatosincluyendoinformaciónactualizadayrevisadarespectoala5edición,loquelohacemásrecomendableenestesentidoparaelalumno(unidades3,4y5deltemario);laparteIIItratalateoríageneraldeldiseodebasesdedatosincluyendoinformaciónacercadelateoríadelanormalización(unidad5deltemario)ydelmodeloentidad-relación(unidad8deltemario);laparteIVprofundizaenlosaspectosderecuperaciónyconcurrenciaylaVenotrosaspectosentrelosqueseincluyeeldelaseguridad,loquelashacerecomendableaambasparalaextensióndelosconocimientosquelosalumnoshanmanejadoenlaunidad7deltemario.
Finalmente,laparteVIsededicaaladescripcióndelimpactodelatecnologíaorientadaaobjetosenlossistemasdebasesdedatos,loquepuedeservirparainiciaralalumnohacialaenseanzaquesemostraráenlaasignaturadeBasesdeDatosAvanzadas(optativa).
ELMASRI02Terceraedicióndeotrodeloslibrosclásicosenbasesdedatos.
Eltextocontieneseispartesprincipalesenlasqueabarcalagranpartedelosaspectosnecesariosparalaenseanzadelasbasesdedatos.
Enconcreto,laparteIsecentraenlosconceptosbásicosdelossistemasdebasesdedatos,ylaparteIIenelmodelorelacionaldedatos,siendoambasespecialmenterecomendablesparaabarcarlaenseanzadelaasignaturadeBasesdeDatosI.
Deestetextosedestacaademáselrigorylaextensiónconlosquetratacualquieradelostemas,yademáslasfrecuentesreferenciasaejemplossobresistemasdegestióndebasescomercialescomoOracleyMicrosoftAccess.
Tambiénsedestacalaprofundidadconlaquesetrataelmodeloentidad-relaciónconunfrecuenteusodeejemplos,asícomolacoberturadeotrosaspectosrelativosatecnologíasemergentes(novedaddeestaterceraedición)sobrelasbasesdedatoscomolosrelativosalosalmacenesdedatos,tecnologíasWeb,multimediaybasesdedatosdistribuidas.
Estosaspectossonbrevementeintroducidosdurantelaunidad1deltemarioyseránanalizadosconmayorprofundidadenlaasignaturaBasesdeDatosAvanzadas(optativa).
SILBERSCHATZ02Estelibroesunaversiónrevisada,ampliadaycorregidadeuntextoanteriorqueconelmismotítulofueescritoporlosmismosautoreskorth93.
Enestarevisiónseofreceunmarcocompletodelosfundamentosydiseodelasbasesdedatos,suslenguajesdeaccesoylasdiversastécnicasdeimplementacióndebasesdedatos.
Ademásincluyenumerososejerciciosdespuésdecadatemaqueayudanalaasimilacióndeloscontenidos,asícomofrecuentesejemplosparaapoyarlasdiferentesexplicaciones.
Estelibrosepuedeconsiderarcomobásicoparaelseguimientodelaasignaturayaquecontieneuntratamientoelementalsobretodosycadaunodelosaspectospropiosdelasbasesdedatos,yademásproporcionaalgunosaspectosmásavanzadosquepuedenserusadosporelalumnocomocomplementoasuenseanzateóricaocomointroducciónaotrasasignaturasmásavanzadassobrelasbasesdedatos.
Sedestacandeestelibroloscapítulos1al5quecontienenlaintroducciónalasbasesdedatos,elmodeloentidad-relaciónyposteriormenteeldesarrollodelmodelorelacionalencajandoperfectamenteenlasunidades1,3,4y8deltemariodelaasignatura,aunquelohacedeunaformabastanteelemental.
Másinteresantesresultanloscapítulos10al21enlosquesetratanlosaspectosmásavanzadosdelossistemasdegestióndelasbasesdedatos,desdeelaccesofísicoalosdatospasandoporaspectoscomoelprocesamientodelasconsultas,transacciones,concurrencia,seguridad,arquitectura,accesocliente/servidorybasesdedatosdistribuidas,quepermitiránalalumnoprofundizarenlostemasmostradosenlasunidades6y7deltemariodelaasignatura.
Especialmentesedestacaelcapítulo4querealizaunestudiotantoteóricocomoprácticodellenguajeSQLloqueserviráalalumnoparaaclararconceptosyproblemasqueselepresentanenlassesionesprácticasdelaasignatura.
Sinembargo,ellibroadolecedeunafaltadeprofundidadeneltratamientodelconceptodemodelodedatosdelqueúnicamentesepresentanbrevementelasdiferenciasentrelosmodelosdedatosmástratados.
Aúnasípuedeserconsideradocomounaobrabásicaparalaasignatura.
Iintroducciónalasbasesdedatos1I1.
introducciónintuitiva3I2.
evolucióndelastécnicasdeprocesamientoelectrónicodelainformación8IImodelosdedatos15II1.
Sistemasdeinformación16II2.
Conceptosydefiniciones19II3.
Representacióndeunsistemadeinformación22II4.
Cualidadesdelosmodelosdedatos23II5.
Clasificacióndemodelosdedatos23IIIelmodelorelacional27III1.
introducciónintuitiva29III2.
conceptoderelación30III3.
representacióndeobjetos32III4.
restriccionessemánticas43III5.
operadores55III6.
otrascaracterísticas56III7.
conclusiones58IVálgebrarelacional61IV1.
Conceptosprevios.
62IV2.
definicióninformaldelosoperadores65IV3.
ResumendelosoperadoresdellgebraRelacional76IV4.
ejemplos77IV5.
Referencia83Vintroducciónaldiseodebasesdedatosrelacionales87V1.
Introducción88V2.
dependenciafuncional91V3.
formasnormales93V4.
formanormaldeboyce-codd97V5.
UnejemploError!
Marcadornodefinido.
VIlaperspectivalógicadelmodelorelacional99VI1.
introducción100VI2.
cálculodepredicadosdeprimerorden100VI3.
unabasededatosrelacionalcomounainterpretacióndeunlenguajedeprimerorden.
109VI4.
fórmulasseguras113VI5.
cálculorelacional117VIIorganizaciónfísicadelasbasesdedatos123VII1.
introducción125VII2.
conceptosbásicos126VII3.
ficheros129VII4.
implementacióndebasesdedatosrelacionales138VIIIsistemasdegestióndebasesdedatos141VIII1.
técnicasdebasededatos142VIII2.
arquitecturadeunsistemadegestióndebasesdedatos143VIII3.
eladministradordelabd148VIII4.
componentesyfuncionesdeunSGBD149VIII5.
independencia,integridadyseguridad151VIII6.
arquitecturacliente-servidor154IXintroducciónalmodeloentidad-relaciónextendido157IX1.
modeloentidad-relación159IX2.
ejemplo1165IX3.
otrosmecanismosdeabstracción169IX4.
ejemplo2170IX5.
deficienciasdelmodelo1721IINTRODUCCINALASBASESDEDATOSComoprimeraintroducciónalaasignaturaBasesdeDatosI,sepretendeefectuarunsomerorecorridoporlosconceptoseideasatratarenella,dandounavisiónsuperficialdelastécnicasdebasesdedatos.
Seexpone,deunamanerainformalynoestructurada,elcontextoyloscontenidosdelaasignatura.
Introducciónalasbasesdedatos3I1.
introducciónintuitivaLanecesidaddemanejarinformaciónPongamoscomoejemplouncasosencillo:queremosmantenerdeformaelectrónicaunalistaconlosdiscosquehemoscompradoalolargodeestosaos.
Tenemosunordenadoryunprogramaquenospermitealmacenarlalistacomosepresentaacontinuación.
autorTítuloformataotipoCOCTEAUTWINSVictorialandCS86AmbientBJRKPostCD95PopBLACKCROWESAmoricaCD94RockBLUENILE,THEHighCD04PopBOBMOULDCD96IndependientesBLURLeisureCD90PopBUDPOWELLJazzTimeCDJazzCANDYDULFERSaxualityCS93FusiónCHURCH,THETheBlurredCrusadeLP82PopCOCTEAUTWINSBlueBellKnollCD88AmbientCURVEPubicFruitCGIndependientesCOCTEAUTWINSMilkAndKissesCD95AmbientCODEBLUECodeBlueLP80PopCOPSHOTCOPAskQuestionsLaterCD93IndependientesCOMITECISNEDulcesHoras(Maxi)LP85PopCOMPLICESLaDanzaDeLaCiudadCD90PopCONSTANCEDEMBYNovusMagnificatCD86NuevasMúsicasCULT,THESonicTempleCD89HardRockCURVEDoppelgngerCSNuevaPsicodeliaLalistaesmuysencilla,yestádetalladaporautordelvolumen,título,aodepublicación,formatoenquelotenemosdisponibleennuestradiscoteca(CDesdiscocompacto,CSescassette,yLPesdiscoenvinilo),yunaclasificaciónpropiadelestilodemúsicaquecontiene.
ParaquénecesitamosalmacenarlosdatosdeestamaneraAlolargodeltiempohemosidoadquiriendomásymásdiscos,ynosgustaintercambiarmúsicaconnuestrosamigos(comosehacíaantes,deformainocenteylegal,segúnloqueseentiendeporlegalhoyendía).
Esmásprácticodarunalistaenpapel,oenviarlaporcorreoelectrónicoparaqueésteelijaloquemásleguste,envezdeinvitarleacasayqueélsellevelosdiscosviéndolosdirectamenteenelestante;nuestroamigotambiénnosproporcionaríasupropialistaparahacernosotroslopropio.
Precisamenteenestepunto,cuandolacantidaddediscosesgrande,hacerdichalistanoestanfácil.
Podemospensarquelonormalescomenzaraconfeccionarlaundíayanotarenellalasnuevasadquisicionesamedidaquevanllegando.
Mástarde,sialguiennoslapide,podemosfotocopiarlayproporcionársela.
Sinembargo,esevidentequelalistanoestáordenadabajoningúncriterio,salvosinoshemostomadolamolestiade,cuandocreamoslalista,anotarlainformaciónordenadaporautor,porejemplo.
Noobstante,lasnuevasentradasdelalistaestarándesordenadaspuestoquelasanotamosalfinaldeesalista.
Además,conlacantidaddediscosquemanejamos,esfácilquetengamosdescripcionesdediscosrepetidas,omalcatalogadas,oconelaoequivocado;quéhacemos:unborrón,escribirencima,escribirlaalápizparapoderborraryrectificarUndía,unamigonospideunalistadelosdiscosquetenemos,perosabemosqueloquelegustaeselguitarreoyelruido,loquenosotroscatalogamosBD12006-20074comorock,duro,oindependiente.
Laúnicaposibilidadesdarlelalistayqueélmismosebusqueloqueleinteresa.
Cansadosdeestaslimitacionesdecidimosutilizarelordenador.
Lohacemosporquenospermiteobtenerlistadosordenadosporcualquiercriterio,mantenerlainformaciónactualizada,ycorregirloserroresfácilmente.
Figura1.
1.
EjemplodebasesdedatosdediscosAdemás,estainformaciónlapodemossuministrardecualquierforma:enpapelmediantelasalidaporimpresora,porcorreoelectrónico,enunficherodetextoenundispositivodealmacenamientoportátilo,endefinitiva,encualquierformatodeintercambio.
Podemostenercopiasdeseguridadporsisenospierdelalistaprincipal.
Además,siqueremosdarmásdatosdescriptivosdenuestrosdiscos,elordenadornosdafacilidadesparahacerlosinalterarlainformaciónanterior:sóloladefinicióndeloslistadossealteraráparapoderimprimir,apartirdeentonces,losnuevosdatos.
HerramientasparamanejarlainformaciónYahemosdichoquevamosautilizarunordenadoryunprogramaparaalmacenarlosdatosymanejarlos.
Laprimeraopciónenlaquepodemospensaresunprocesadordetextosounahojadecálculo,dondelainformaciónesfácilmenteaccesibleymodificable.
Simplementesetratadeescribirlalistayguardarlaeneldiscoduro.
Noobstante,elprogramadiseadodesdeunprincipioparahacerloquenosotrospretendemosesunprogramadecreaciónymanejodebasesdedatos,unsistemadegestióndebasesdedatos(SGBD).
Unabasededatos(BD)1esunconjuntodedatosestructuradosapropiadamenteyrelacionadosentresí(como,porejemplo,nuestralistadediscos).
Podemostenertantasbasesdedatosalmacenadasennuestrodiscodurocomopermitalacapacidaddeldiscoduro:lalistadediscos,laagendadeteléfonosydireccionesdenuestrosamigos,etc.
,sontodasbasesdedatosdiferentes;opodríamostenerrelacionadalosdiscosconlaagendadetalformaquesepamosentodo1Paraelprofanoenlamateriaesnormaldenominaralprogramadegestiónsimplementebasededatos.
Entiéndasequeunsistemadegestióndebasesdedatos,elprograma,puedemanejarunaomuchasbasesdedatos,unoomuchosconjuntosdeinformaciónsobreundeterminadotema.
Introducciónalasbasesdedatos5momentoaquienleprestamoslosdiscos,conloquetodoseríaunaúnicabasededatos.
ElSGBDnosfacilitauninterfazparaintroducirnuestrainformacióndesdetecladoocualquierotroperiféricoquelopermita,yprocesardespuésesainformaciónparaobtenerinformesdecualquiertipo.
Porejemplonospuedeinteresartenerunlistadoordenadoporautoryotroportipodemúsica.
Otroinformepuedequesólotengalainformacióndelautor,títuloyaodepublicacióndeldisco.
Laventajaestribaenquelainformaciónsólolahemosintroducidounavez,yeselpropiosistemadegestióndebasededatoselque,segúnnuestrasnecesidades,seencargadeclasificaresainformacióncadavezquelepedimosunlistado.
Además,sinoshemosequivocadoenelaodepublicacióndeundisco,simplementelomodificamosyenlossiguienteslistadosyasaldrácorregido.
Siquisiéramosborrarundisco,porquesenoshayaperdidooroto,tampocoesunproblema:simplemente,cuandoelSGBDvayaarealizarunnuevolistadonoseencontraráconesediscoentrelosdatpsquemaneja.
Figura1.
2.
EjemplodeconsultaalabasededatosmedianteunasentenciaSQL.
DiseodelalmacenamientodelainformaciónElfundamentodetodaBDseencuentraenelanálisisyeldiseo.
AlSGBDselehandeproporcionardoscosas:losdatosylaformaenquelosvamosaalmacenar.
Esdecir,undiscomusical,paranosotros,esunobjetoquetienecomocaracterísticasquelodiferenciandeotrodiscoconceptostalescomolainformacióndelautor,eltítulo,elaodepublicación,elformatodeldiscoyeltipodemúsicaquecontiene.
Debemos,antesdenada,darlealSGBDestosconceptosconsucorrespondientetipodedatos:siesunnúmero,siesunacadenadecaracteres,siesunafecha,etc.
Unavezhechoesto,yapodemosintroducirlosdatosdenuestrosdiscos.
Delamismaforma,unavezquesehanintroducidolosmismos,podemosrealizarconsultassobrelosdatosalmacenadosbasándonosenlosobjetosdefinidos.
BD12006-20076I1.
1.
SistemadeGestióndeBasedeDatosUnSGBDesunprogramadeordenadorquefacilitaunaseriedeherramientasparamanejarbasesdedatosyobtenerresultados(información)deellas.
Ademásdealmacenarlainformación,selepuedenhacerpreguntassobreesosdatos,obtenerlistadosimpresos,generarpequeosprogramasdemantenimientodelaBD,oserutilizadocomoservidordedatosparaprogramasmáscomplejosrealizadosencualquierlenguajedeprogramación.
Además,ofreceotrasherramientasmáspropiasdelagestióndeBDcomosistemasdepermisosparaautorizacióndeaccesos,volcadosdeseguridad,transferenciadeficheros,recuperacióndeinformacióndaada,indización,etc.
Engeneral,unSGBDesunsoftwaredeBDquecentraliza2losdatosenunúnico"lugar"lógicoalqueaccedentodoslosusuariosyaplicaciones.
esutilizablepormúltiplesusuariosyaplicacionesconcurrentemente.
ofrecevisionesparcialesdelconjuntototaldeinformación,segúnlasnecesidadesdeunusuarioenparticular.
poseeherramientasparaasegurar:laindependenciadedatos:avariosniveles,permitiendolamodificacióndelasdefinicionesdedatossinafectaralasaplicacionesoesquemasquenoutilizanesosdatos.
laintegridaddelosdatos:quelosdatosseancorrectosentodomomento,deacuerdoconlasespecificacionesoreglasimpuestasalsistemalaseguridaddelosdatos:quesólolaspersonasautorizadaspuedanaccederadeterminadosdatosyquesólopuedanefectuarlasoperacionesparalasquehansidoautorizados.
HaymuchostiposdeSGBD,perolamayorpartedelosutilizadoscomercialmenteenlaactualidadsonrelacionales,esdecir,sebasanenunaciertateoríaoformaderepresentarlosdatosparaimplementarsusherramientaseinterfaces,enestecasoelmodelorelacional.
Entendemosporrepresentacióndelosdatoscomolaformaenquesepresentanalusuarioyquepermitenciertasoperacionesparapodermanejarlos.
Dehecho,enestosSGBD,lainformaciónsepresentaenformadetablas("relación"eseltérminoformal),concolumnasparalascaracterísticasdelosobjetosoconceptosquepretenderepresentarlatabla,yfilasparacadacasoconcretooinstanciadeobjeto.
Existeunlenguajeconsideradocomoestándarparamanejaresastablas,elSQL,quepermitecrearymodificartablas,yconsultarlas,introducirnuevosdatos,modificarlosyaalmacenados,oborrarlos.
AldecirqueunSGBDesrelacional,estamoshablandodeque,comomínimo,siguetodaslasreglasyconceptospropuestosporelmodelorelacional.
Elmodelorelacionalsebasaenlateoríadeconjuntosyes,portanto,unmodeloconunfundamentomatemático.
Estemodelomanejaunaestructuradedatos,larelación(conceptomatemáticoqueserepresenta"físicamente"comounatabla),yunosoperadoresdefinidossobreella.
2Nosreferimosalasbasesdedatoscentralizadas.
Enotrasasignaturasseprofundizaenelconceptodebasesdedatosdistribuidas.
Introducciónalasbasesdedatos7Estosoperadoresseagrupanenlenguajesdeespecificaciónymanipulación,quenosproporcionanunasintaxisparapoderdarordenesalSGBD.
Anivelteóricoseproponentreslenguajesequivalentesencuantoalascosasquepuedenhacer:ellgebraRelacional,elCálculoRelacionalorientadoaTuplasyelCálculoRelacionalorientadoaDominios.
Elálgebraestábasadoenelálgebradeconjuntos,mientrasquelosdoscálculossebasanenelcálculodepredicadosdeprimerorden.
ElSQL,quepodemosdecirqueesellenguaje"real"utilizado,tienesuorigenformalenlosanteriores.
Además,aportamásoperadores,necesariosparamanejareficazmenteunaBDrelacional.
Comoprocedimientodecomprobacióndelacalidaddenuestrosesquemasdebasededatosrelacionalesveremoslateoríadelanormalización.
stanosdicecuandounatablaescorrecta:nocontieneredundanciainnecesaria,teniendoencuentalasdependenciasqueexistenentrelascolumnasdelatabla,yproporcionalosmétodosparacorregirlasdeficienciasdetectadasNodebemosolvidarqueparaalmacenardatosenunaBDprimerodebemosdisearla,decircuálesycómosonlastablas(sihablamosexclusivamentedelossistemasrelacionales).
Parataldiseosesuelenutilizarotrosmodelosdedatosmásintuitivosyexpresivos.
Unomuycercanoalmodelorelacional,elEntidad-RelaciónExtendido3(EER)seutilizaparadefinirlaBDsobrepapel.
Unavezqueyasabemoscómorepresentarlainformaciónnosqueda,simplemente,crearlastablaseintroducirlainformación.
Hemoshabladodedosdelosmuchosmodelosdedatosqueexisten.
Brevemente,unmodelodedatosesunconjuntodereglasyconceptosquesirveparadescribirunconjuntodeinformación.
Estosmodelosdedatospuedenserdetipográfico(p.
ej.
elEntidad-Relación)ono,eincluirmásomenosformasderepresentarhechosyobjetosdelavidareal.
Almodelarunconjuntodedatos,unsistemadeinformación,loqueestamoshaciendoesdesecharlainformaciónnoútilquedándonosúnicamenteconlaquenosinteresa,yrepresentandolomásfielmenteposiblelasinterrelacionesentrelosdatosdeesesistema.
Pero,quéhabíaantesdelasBDylosSGBD,yporquénacenéstosLoscomienzosgestiónadministrativaayudadaporordenadorfueronfrutodeldesarrollodeloslenguajesdeprogramaciónnormalesdeaquellaépoca,comoCOBOL,FORTRAN,BASIC,etc.
,ylainformaciónsemanejabamedianteficherosconvencionalesderegistros.
Losavancesenhardwareysoftwaregeneraronunincrementóexponencialdelvolumendedatomanejado,yelrendimientodeestosprogramasbajóaltiempoqueloscostesdemantenimientocrecierondeformaalarmante.
Losdatosseduplicabaninnecesariamente,nohabíasuficientescontrolesdeseguridadfrenteaaccesosnoautorizadosalainformación,nicontrolesdecalidaddelosdatos.
Alterarlasestructurasdedatos,losficheros,llevabaaparejadounaingentecantidaddetrabajoparamodificartodoslosprogramasafectados.
ComosoluciónaestosyotrosproblemassedesarrollaronlastécnicasdeBasesdeDatos.
3TambiénconocidocomoEntidad-Interrelación,pordiferenciarelconceptorelaciónenestemodeloyenelrelacional:enelprimeroesunadependenciaoasociaciónentreobjetos,mientrasqueenelsegundoeslaestructuradedatosquealmacenalosdatos.
BD12006-20078I2.
evolucióndelastécnicasdeprocesamientoelectrónicodelainformaciónI2.
1.
sistemasdeinformaciónmecanizadostradicionales.
Veamosahora,deunaformamuysucinta,cualesfueronlosiniciosdelossistemasdeinformaciónmecanizados.
stoshanidoevolucionandohastaelpresentealritmodelasinnovacionestecnológicastantoenhardwarecomoensoftware.
Elhechodedisponerdeunadeterminadatecnologíasiempreconllevaciertasventajassobrelossistemasanteriores,yunaseriedelimitacionesimpuestasporlasposibilidadesdelatécnicadeesemomento.
Todosetraduceenunacarreraenlaquesesolucionanproblemasycarenciasparamejorarlacalidad,prestaciones,flexibilidadyseguridaddenuestrosistemadeinformación,alavezquelamayorexigenciaylasnuevasnecesidadesdelosusuariosplanteanuevosproblemasnoprevistosonoabordablesenunmomentodado.
Lossistemasdeinformaciónbasadosenarchivoconvencionalseapoyanenlasdistintasorganizacionesdefichero:secuenciales,directos(direccionamientodirecto,calculado),indexados,invertidos.
.
.
Estasorganizacionesllevanaparejadosunosmétodosdeaccesoalosregistrosparticulares:elaccesosecuencialrecorretodoslosregistroshastaencontrarelbuscado;elindexadopuedeaccederenunsolopasoalregistrosiestamosbuscandoporuncampoclave.
Paraelmanejodeestosficheroslossistemasoperativosllevanintegradasrutinasquefacilitanlasoperacionesbásicas:inserción,borrado,modificaciónyrecuperación.
Paraentendermejorelorigenynecesidaddelasbasesdedatosesinteresanteanalizarlascaracterísticasdelsistematradicional.
Lacaracterísticabásicadeestossistemasesquelosficherossediseabanparaunprogramaconcreto.
Estoloshacemuyeficientesenprincipio,perolosproblemasaparecencuandohayqueampliaromodificarelsistemainicial.
Puestoqueladefinicióndelosdatosestádentrodecadaprogramadeaplicación,cualquieralteracióndelaestructuradelosficherosquemanejannosobligaarecompilartodoslosprogramasqueutilicenesosficheros,obienconstruirnuevosprogramasqueutilicennuevosficherosconinformaciónreplicadaocalculadaenbasealosantiguos.
Lasoluciónmásrápidayfácilsueleserconstruirnuevosprogramasyficherosconinformaciónredundante,mássisepiensaensistemasgrandesdondecadadepartamentorepresentaunconjuntodeusuariosconunavisiónparcialdelaOrganización(laqueesnecesariaparasupropiocometido),yporlotanto,conunconocimientoparcialdelsistemaglobal.
Porejemplo,enunaUniversidad,laseccióndePersonal,lasecretaríadelCentroyelDepartamentotienenunavisióndistintadelosdatosalmacenadossobreunempleadodocente,algunoscomunesatodos(nombre,dirección,categoría,.
.
.
),perootrosúnicamenteútilesparaunadeellos.
Lainformaciónsobrecuentabancaria,estadocivilonúmerodehijosesnecesariaparaPersonal,peronolasasignaturasimpartidasporelprofesorosuhorario.
Estadistintaperspectivadelaorganizacióneslaqueconduceenmuchoscasosadesarrollaraplicacionesseparadasconficherospropios.
Introducciónalasbasesdedatos9Endefinitiva,todosellosmanejaninformaciónquepertenecealaorganización,peroeldesarrollodelostratamientosdeesosdatosserealizaindependientementedelosotrosusuarios,detalformaquecadaaplicaciónesunobjetoautónomo.
Puestasasílascosas,esfácilquenosencontremos,enunsistemadeinformaciónmecanizadobasadoenarchivoconvencional,conlossiguientesproblemas:Redundanciadedatos.
Dependenciadelosprogramasrespectodelosdatos.
Insuficientesmedidasdeseguridadentresaspectos:controldeaccesossimultáneosrecuperacióndeficheroscontroldeautorizacionesPasamosahoraadescribircadaunodeestospuntos.
I2.
2.
deficienciasdelossistemasbasadosenarchivoconvencionalRedundanciadedatos.
Eldesarrollodelasaplicacionesnoterminanunca.
Lasnecesidadesdelaorganizaciónsoncambiantesyevolucionanconeltiempo.
Estoquieredecirquesiempreseestáncreandonuevasaplicacionesymodificandolasexistentes.
Enunsistemadeficherostradicional,cadaprogramallevasupropiadefinicióndedatosymanejasuspropiosficheros.
Además,suelenservarioslosprogramadoresquelasrealizan,bienenelmismoperíododetiempo,oporquesevansustituyendounosaotros.
Elresultadofue,habitualmente,quemuchosficherosutilizadospordiversosprogramasalmacenabanlamismainformación.
Ynosoloeso,sinoquelamayoríadelasvecesnorecibíanelmismonombrenicoincidíanlostiposdedatos.
Porejemplo,uncampociudad(cadenade20caracteresdelongitud)enunfichero,sellamabalocalidadenotroypodíatenerunalongitudmayorquelaprimera.
Evidentemente,eslafaltadecontrolsobrelosdatosquegenerabalaempresaloquellevabaaestassituaciones.
Unapersonaoequipoquesededicaraasupervisartodaslasaplicacionespodríaintentarmejoraresteproblema.
Enrealidad,estossistemasnosonlosadecuadosparalatareaporlocostosoqueresultaríatalcontrol(yasíapareceránlastécnicasbasesdedatos).
Aunquecadaaplicacióngestionainformaciónpropia,siemprehaydatoscomunesavariasaplicaciones.
Alestarestosdatosalmacenadosenficherosindependientesseproduceredundanciadentrodelsistemadeinformación,loquegenerasituacionesindeseables:inconsistencia:alteneralmacenadalamismainformaciónenvariossitios,esdifícilmantenerlosenelmismoestadodeactualización(queentodolugartengaelmismovalor),pudiendoproducirinformaciónincorrecta.
laboriososprogramasdeactualización:noeslomismomodificarelvalordeundatounasólavezquetantasvecescomosehalleduplicado.
BD12006-200710mayorocupacióndememoria.
Dependenciadelosprogramasrespectodelosdatos.
Enlossistemasclásicosladescripcióndelosficherosusadosporunprograma,coninformaciónsobreformatodelosregistros,organizaciónymododeacceso,localizacióndelfichero,etc.
,formapartedelcódigodelprograma.
Estosignificaquecualquiercambiorealizadoenalgunodeestostresaspectosobligaareescribiryrecompilartodoslosprogramasqueutilicenelficheromodificado.
Piénsese,porejemplo,sisecambiaralaorganizacióndeunficherodesecuencialaindexado,oqueseaadierauncampoaunregistroparaunaaplicaciónnueva,hechoésteque,enteoría,notendríaqueafectaralasantiguas.
Podemosdecirquelosprogramassoncompletamentedependientesdelosdatos,loqueprovoca:pocaflexibilidaddelsistemadeinformaciónfrenteafuturasvariacionesenlosrequerimientosdeinformación.
altocostedemantenimientodelsoftware.
Insuficientesmedidasdeseguridad:controldeaccesossimultáneosElaccesosimultáneodedosomásprogramasaunosmismosdatospuedeconduciraerroresenlainformaciónalmacenada.
Supongamosdosprocesosquedebenaccederalmismodato,queeneseinstantevale100,ylohacenconcurrentemente,detalformaqueelprimerosumaalvalorleído200yelsegundo500,porloquefinalmentedeberíamosobtenerunvalorde800yalmacenarlo.
Supongamosqueelprimerprocesollegaantesqueelsegundo.
Lasrespectivastransaccionescomprendenunaoperacióndelecturadeldatoalmacenadoylaposteriorescrituradeldatoincrementado(latransacciónestáformadapordosoperacionesatómicas).
Cuandoelprimerohaterminadodeleer(yobtieneelvalor100)yantesdeactualizareldato(sumándole100),elsegundoprocesotambiénefectúaunaoperacióndelecturarecuperandoelmismovalor.
Debidoalasecuenciadeoperacioneseneltiempo,laactualizacióndelproceso1sepierdepuestoque,inmediatamentedespués,elproceso2modificaelmismodatoperoconunasumaerrónea.
Escomosielproceso1nuncasehubieraejecutado.
proceso1proceso2tleer(100)escribir(100+200)leer(100)escribir(100+500)recuperacióndeficherosEnelcasodeprocesosdeactualizaciónincompletosoerróneoshacefaltadevolverlosficherosaunestadoanteriorcorrectoapartirdelcualsepuedanrepetir,ahoracorrectamente,losprocesosdeactualizaciónIntroducciónalasbasesdedatos11rechazados.
Tradicionalmenteserecurreacopiasdeseguridaddelosficherosafectados.
ControldeautorizacionesNotodoslosusuariosdebenpoderaccederalosmismosdatos,pormotivosdeprivacidaddelainformación,nipuedenaccederdelamismaforma,porpermisosalahoraderealizarrecuperaciones,actualizaciones,etc.
Enlossistemasclásicos,alteneraplicacionesindependientes,elvolumendeinformaciónyelnúmerodeusuariosdecadaunaerareducido,pudiendoaplicarseestasmedidasdeseguridadanivelhumano.
Amedidaquefueroncreciendolossistemasseviolanecesidaddequeelsoftwaredispusiesedemecanismosdeseguridadadecuadosaestosniveles.
Enresumen,lascaracterísticasdelossistemasbasadosenarchivoconvencionaladolecendelossiguientesproblemasalincrementarselasexigenciasyelvolumendedatos:Pobrecontroldelosdatos:losdatospuedenestarreplicadosinnecesariamente,llamarsededistintaformaytenerdistintasdefinicionesendiferentesficheros.
Capacidadesdemanipulacióndelosdatosinadecuadas:lasorganizacionesdeficherosnosonadecuadasparaciertotipodeoperacionesqueimpliquenaccederalosdatosparaobtenerinformaciónelaborada(osimplemente,enelmejordeloscasos,queelcriteriodebúsquedanoestáindexado).
Excesivoesfuerzodeprogramación:enentornosdeestetipo,laprogramacióndenuevasaplicacionesobligabaaconstruirdenuevolasdefinicionesdeficheroyrutinasdeaccesoenlamayoríadeloscasos.
Podemosdecirqueestasituacióneslaque"obliga"areplantearlaformadegestionargrandesvolúmenesdedatos,buscandoprincipalmentelaindependenciadelasaplicacionesrespectodelarepresentaciónfísicadelosdatosalmacenados.
Nacenentonceslastécnicasdebasesdedatos,queseabordanenelsiguientetema.
BD12006-2007121generación(Desdemediadosdelos40amediadosdelos50)2generación(Desdemediadosdelos50amediadosdelos60)3generación(Desdemediadosdelos60amediadosdelos70)4generación(Desdemediadosdelos70amediadosdelos80)5generación(Desdemediadosdelos80amediadosdelos90)ModelosdedatosoModelojerárquicooModeloredoModelorelacionaloModelossemánticosoM.
OrientadosaObjetoso.
.
.
Dispositivosdealmacenamientooprogramas+datosotarjetasperforadasoCintasmagnéticas(1945)oDiscosmagnéticosoTamboresoSGIoDiscosooProductosoIDSdeGeneralElectric(1965)oBOMP,DBOMP,CFMSdeIBMoTOTALdeCincon(1971)oIMAGENdeHPoADABASdeSoftwareAGoSYSTEM2000deMRIoSGBDIMS/1deIMB(1969)(Modelojerárquico)oSistemasderedCODASYL(1969-71)oIDS/2deHoneywelloDMS-1100deUnivacoIDMSdeBFGoodrichoDBMSdeDigitaloINGRESdelaU.
Berkeley(1973-77)oSystemRdeIBM(1974-78)oINGRESdeRTI(1980)oSQL/DSdeIBM(1981)oORACLEdeRSI(1981)oDB2deIBM(1983)oRDBdeDigital(1983)oORIONdeMCCoOpenOODBdeTIoIRISdeHPoGemstonedeServioLogicoONTOSdeOntologicoO2deO2Tech.
oObjectStonedeObjectDesignoCORALdeU.
WisconsinoLDLdeMCCAccesodedatosoFicherossecuencialesoFicherosdea.
directooFicherosindexadosoFicheroshashoFicherosintegradosoFicherosinvertidosoFicherossecuencial-indexadoAvancesdestacadosdelageneraciónoGestióndedatosapoyadoenaplicacionesoIntegracióndeinformaciónoIndependenciadedatosoSGBDprerelacionalesoSistemasdegestióndebasesdedatosrelacionalesoSistemasdegestióndebasesdedatospostrelacionalesVisióndiacrónicadelaevolucióndelatecnologíadelasbasesdedatosintroducciónalasbasesdedatos13CONCLUSIONESTodaorganización,seapequeaogrande,tieneunasnecesidadesdeinformación,bienenlaformatradicionaldedatosadministrativos,bienensistemasavanzadosdetratamientodeinformacióndetodotipo.
Detodoslosdatosqueentranysalendeesaorganización,enelformatoquesea,unossonimportantesyotrosnotanto.
Elobjetivodeunanalistaesidentificarlainformaciónimportanteyestructurarladeformaqueseaútilparatodoslosmiembrosdelaorganización.
Esesistemadeinformaciónpuedesermecanizadomedianteherramientasinformáticasyservirasíalaproductividaddelaentidad.
Enunprincipio,lossistemasdeinformaciónamecanizareransencillosyreflejabanmásomenosexactamenteelflujoadministrativodepapeldelexteriorhacialaempresa,dentrodelamismaempresa,ydelaempresahaciaelexteriornuevamente.
Paraelloseutilizabanloslenguajesdeprogramacióndisponibles,másomenosadecuadosparalatarea,quemanejabanficherosorganizadossegúnlopermitíalatecnologíadelmomento.
Peroprontonuevasnecesidadesyexpectativashicieronqueelmantenimientoycreacióndeaplicacionesinformáticas,juntoconelincrementomasivodelacantidaddedatosaalmacenarytratar,seconvirtieraenuncuellodebotelladebidoaproblemasderedundancia(einconsistencia)dedatos,deficientesmedidasdeseguridad,bajacalidaddelainformaciónalmacenada,ypérdidasdeinformaciónpordiversascausas.
Latecnologíadelmomentonoeraadecuadaparasistemasdeinformaciónenconstanteevoluciónyconunosrequerimientosderendimientoyfiabilidadcadavezmásexigentes.
Laaparicióndelastécnicasdebasesdedatosvinoasolucionargranpartedeestosproblemas.
BIBLIOGRAFA[CELMA97][DATE2000][KORT87]Prieto,A.
;Lloris,A.
;Torres,J.
C.
;IntroducciónalaInformáticaMcGraw-Hill,2edición.
15IIMODELOSDEDATOSAntesdeentraraladescripcióndelmodelorelacional,objetivocentraldelaasignatura,debemosdefinirloqueesunmodelodedatoengeneral.
Lacalidaddelanálisisydiseodeunsistemadeinformaciónquepretendemosmecanizardependerádelosmodelosdedatosqueutilicemosparacadaunadelasfasesdedesarrollo.
Además,disponerdeherramientassoftwarebasadasenmodelosdedatosadecuadosanuestratareanosharámásfácilyrentableeldiseoyelmantenimiento.
Podemosdecirque,enlíneasgenerales,eldiseodeunsistemadeinformación,enloqueataealasbasesdedatos,tienetresfases:Diseoconceptual:enlaqueseformalizanlasestructurasqueseobservanenelmundorealproduciendoloquesedenominaEsquemaConceptual.
DiseoLógico:enlaqueseestructuraelconjuntodeinformacióndelafaseanteriorteniendoencuentaelSGBDquesevayaautilizar.
EnestafaseobtendremoselEsquemaLógico.
DiseoFísico:enlaqueseestructuranlosdatosentérminosdealmacenamientoenlosdispositivosdelordenador.
EsloqueseconocecomoEsquemaInterno.
Paradefiniresasrepresentaciones,esdecir,losdistintosesquemas,utilizaremosunoovariosmodelodedatos,unformalismoounlenguajequenospermiterepresentarunarealidadconunamayoromenorriquezadedetalle.
PodemosconsiderarquelosModelosdeDatosseutilizan,entreotrasaplicaciones,para:Comoherramientadeespecificación,paradefinirtiposdedatosylaorganizacióndelosdatosdeunaBDespecífica.
ComosoporteparaeldesarrollodeunametodologíadediseodeBD.
Comoformalismoparaeldesarrollodefamiliasdelenguajedemuyaltonivel,paralaresoluciónderequerimientosymanipulacióndedatos.
ComomodelosoportedelaarquitecturadelosSGBD.
Comovehículoparainvestigarelcomportamientodediversasalternativasenlaorganizacióndelosdatos.
BD12006-200716Enunaprimeraaproximación,unmodelodedatosesunconjuntodeconceptosyunasreglasdecomposicióndeesosconceptosque,combinadosdealgunaforma,soncapacesderepresentarunsistemadeinformación,tantoensuparteestáticacomodinámica.
Pero,hablandodebasesdedatos,quéesantes:elmodelodedatosoelSGBDEnrealidad,elconceptodemodelodedatosestotalmenteindependientedelastécnicasdeBD.
Esunaherramientaquepermitedescribirundeterminadoconceptoosistema.
LosSGBDseapoyanenundeterminadomodelodedatosparapoderestructurarlainformaciónaalmacenarygestionarlarentablemente.
EstoimplicaunasciertasreglasqueeldiseadordelaBDdebeseguirpara"informar"alSGBDdecómosevanaintroducirlosdatosyquelímites,restriccionesoevoluciónpuedenodebenteneresosdatos.
Noolvidemos,pues,queelmodelodedatosesuna"formadehablar",unlenguajederepresentaciónquepodemosutilizarindependientementedequesevayaautilizarunordenadorono,yquenossirveparadefinirlaspropiedadesesencialesdeunsistemadeinformacióny,almismotiempo,podercomunicarnosconotraspersonasparaexplicarlesesaspropiedades.
Elsiguientepuntopretendeserelmarcodepartidaparaintroducirlosmodelosdedatos,herramientasqueseutilizanparadescribir,mejoropeor,unarealidadconcreta.
ElconceptoadesarrollareselSistemadeinformación,larealidadquequeremosmodelaryconvertir(seguramente)enunsistemadeinformaciónmecanizadoporordenador.
II1.
SistemasdeinformaciónUnodelospilaresdecualquierorganizacióneslainformaciónquenecesitaparasufuncionamiento.
Asimismo,eltratamientodedichainformaciónesunadesusocupacionesbásicas.
PodemosdecirquelaOrganizacióndisponeenunprimermomentodeunacantidaddedatosdesordenadoseinconexossobreelentornoenelquesedesarrollaylaactividadoactividadesalasquesededica.
Esprimordial,pues,ordenareinterrelacionaresosdatosyobtenerconclusionesdeellos,esdecir,obtenerinformaciónelaboradaquepermitatomardecisionesoconocerelestadodelaOrganización.
Eltratamientodelainformación(seamanualoelectrónico)tienecomoobjetivoproporcionaresainformaciónelaborada,detalformaqueseacorrecta,seobtengaenelmomentoylugaradecuado,paralapersonaautorizadayconelmínimocoste.
Siunsistemaesunconjuntode"cosas"que,ordenadamenterelacionadasentresí,contribuyenacumplirunosdeterminadosobjetivos,unsistemadeinformaciónesunconjuntodeelementos(enestecasodatos),ordenadamenterelacionadosentresísiguiendounasciertasreglas,queaportaalsistemaobjeto(laorganizaciónalaquesirveyquelemarcalasdirectricesdefuncionamiento)lainformaciónnecesariaparaelcumplimientodesusfines,paralocualtendráquerecoger,procesaryalmacenarlosdatos,facilitandolarecuperación,elaboraciónypresentacióndelosmismos.
Dichodeotraforma,unsistema(yunsistemadeinformaciónenparticular)esunconjuntodecomponentesconectadosdeformaorganizada.
Dependiendodecómoesténconectadoselsistemasecomportaocontribuyeasusfinesdeunamaneraconcreta;sicambiamosesasinterrelaciones,sucomportamientocambiará,aligualquesieliminamosoagregamoscomponentes.
Esoscomponentesdelsistemadeinformación,datosennuestrocaso,serepresentaránmediantepapelesquesearchivanocualquierotrotipodemodelosdedatos17almacéndeinformación(unabasededatos).
Así,sideseamoscontrolarelinventariodeunalmacén,elsistemafísicoquequeremosrepresentaresellocaldondesealmacenanyseretiranciertasmercancías.
Enrealidad,elencargadopodríapasarsetodoslosdíasporellugarycomprobarsiseveelsuelodelalmacén,ydecidirentoncesqueesnecesarioreponerexistencias.
Otraformadeorganizarelalmacénesconstruirunsistemadeinformaciónenelquelasentradasysalidasnoseanbienesmaterialessinonotasdepedido,albaranes,etc.
,esdecir,papelesquevandeunarchivadoraotro.
Seríalarepresentaciónmediantelacirculacióndeinformacióndelsistemafísicoalmacén.
EnlaFigura2.
1podemosveresteejemplodelalmacénvistodesdeelpuntodevistafísicoydesdeelpuntodevistadelsistemadeinformación.
Figura2.
1.
Diferenciasentreunsistemafísicoyunsistemadeinformación.
Unadecisiónaposterioriseríalademecanizarestesistemadeinformaciónono.
Esperfectamenteposiblequesedéelcasoenelquelaincorporacióndeunordenadornoreporteningúnbeneficioencuantoaeficienciayrendimiento,einclusoquefueraperjudicialparaunabuenagestión.
Unsistemadeinformaciónmecanizado(SIM)seráaquelsoportadoporunordenador.
Sinoscircunscribimosaestesupuesto,podemosparticularizarloscomponentesbásicosdeunsistemadeinformación:-contenido:losdatosysudescripción.
-equipofísico:elordenadorsoportedelainformación.
-equipológico:sistemadegestióndebasesdedatos,sistemadecomunicaciones,etc.
-administrador:lapersonaoequipodepersonasresponsablesdeasegurarlacalidadydisponibilidaddelosdatos.
-usuarios.
Resumiendo,losSIMestáncompuestosdemáquinas,programasqueseejecutanenesasmáquinas,unresponsableoresponsablesdesubuenfuncionamientoexpertoentemasdeanálisis,diseoeimplementacióndesistemasinformáticosy,porsupuesto,losusuariosfinalesquesonlosqueindicancualessonlasnecesidadesdelaorganización.
Lossistemasdeinformaciónsoportadosporunordenadorhansufridounarápidaevolución.
Desdeelpuntodevistadesufuncionalidadpodemoshacerunasomeradistincióndeestos:-SIMdeprocesosdetransacción.
-SIMdeayudaalatomadedecisiones.
ALMACNINVENTARIOsistemafísicobienesbienesPedidoAlbaránNotadeEnvíoOrdendeVentasistemadeinformaciónBD12006-200718Losprimerostienencomoobjetivoeltratamientodelosdatosnecesariosparallevaracabolastareasrutinariasdelaorganización:nóminas,contabilidad,etc.
;eransistemasdeinformaciónparalagestión.
Peroeldesarrollotécnicoenelcampodelosordenadoreshapermitidoexigircadavezmásprestacionesalossistemasdeinformación,quepasanaproporcionarunainformaciónmáselaboradadeayudaalatomadedecisiones:sonlossistemasdeinformaciónparalaayudaalatomadedecisiones.
Pensemosenunasistemadeinformacióndediseoasistidoporordenador(CAD);lamáquinaserálaencargadadesimularelcomportamientodeundeterminadoobjeto(eldiseodeunavión,porejemplo)endistintascondicionesambientales,informaciónéstaquenosdaráunabaseparadecidirsiesfactiblesufabricaciónosi,porelcontrario,nodebemosseguiradelanteconelproyecto.
Losalmacenesdedatos(másconocidoscomoDataWarehousesylasaplicacionesOLAPconstituyenhoyendíaelnúcleodeestossistemasdeapoyoalatomadedecisiones).
EstossistemassonlapartecentraldelaasignaturaoptativaBasesdeDatosMultidimensionales.
II1.
1.
Desarrollodeunsistemadeinformaciónmecanizado.
Paraconstruirunsistemadeinformaciónsepartedeunadefinicióndelosposiblesusuarios,susnecesidadesylasfuentesdeinformación,pasandoadarrespuestaaunconjuntodetemasentrelosquedestacanlosrelativosalaorganizacióndelosdatos,quedeterminanengranmedidaelrendimiento,flexibilidadyfiabilidaddetodoelsistema.
Así,cualquiersistemadeinformaciónpretende,pormediodeunaabstraccióndelmundoreal,representarconunconjuntodedatosestructuradotodalainformaciónnecesariaparaelcumplimientodelosobjetivosdeunaorganización,paraloquesedebenseguirdistintasfasesapoyadasenmétodosyreglas.
Enprimerlugar,habráqueaislarlaparceladelmundorealobjetodeestudio,identificandoobjetosconsuspropiedades,lasrelacionesentreellos,asícomosusemánticaasociada.
Acontinuaciónypormediodeunprocesodeabstracción,intentaremosobtenerunaimagen(representación)deestaparceladelmundoreal.
Esloquesellamamodelado,proponerunesquemabajoundeterminadosistemaderepresentaciónquesimuleelcomportamientodelapartedelarealidadenestudio.
Obtendremosasílasestructurasquealberguennuestrosdatosylosprocesos(operaciones)quelashandeafectarparaobtenerlainformaciónelaboradafinal.
Porúltimo,habráqueorganizarelconjuntodeinformacióndefinidoenlaetapaanteriorparaalmacenarlaenunsoporteinformático,loqueexigeelconocimientodetécnicascadavezmássofisticadasentrelasqueseencuentranlastécnicasdebasesdedatos.
Endefinitiva,siguiendoelciclodevidaclásicodelsoftwarepodemosdiferenciartresfasesalahoradedesarrollarunsistemadeinformación,ennuestrocasomecanizado,asaber:-Análisis:investigaciónymodelado-Diseo:lógicoyfísico-Implementación:programas,cargadedatos,pruebas.
modelosdedatos19Enlafasedeanálisisserealizanlaboresderecogidaderequerimientos,yseobtieneunmodelonoinfluidoporunsistemamecanizadoconcreto(modeloconceptual),querepresenta,lomásfielmenteposible,elconjuntodedatosenestudioylasinterrelacionesquehubiereentreellos,asícomolosprocesosquelosafectan.
Endefinitivavamosadescribir,medianteunformalismoadecuado,nuestrosistemafísico.
Enlaetapadediseotrasladamoslasideasobtenidasenlafaseanterioraunmodelocomprensibleporelordenador,eldiseológicoyelfísico,querepresentansucesivosacercamientosalnivelmásbajodedetallesdealmacenamiento.
Conlaimplementaciónintroducimosenlamáquinaelresultadodeldiseoylosdatosnecesariosparalainmediataexplotacióndelosmismos,traslascorrespondientespruebasdefiabilidadyrendimiento.
EnlaFigura2.
2.
podemosverunresumendelprocesodediseodeunabasededatosdesdeelpuntodevistadelciclodevidadeevolucióndelsoftware.
Figura2.
2.
DiseodeunabasededatosdesdeelpuntodevistadelciclodevidadeevolucióndelsoftwareII2.
ConceptosydefinicionesPropiedadesdeunsistemadeinformaciónEnunsistemadeinformaciónencontraremospropiedadesestáticas,dinámicasyrestriccionesdeintegridad.
Laspropiedadesestáticasserefierenalosdatosensi,quéinformacióneslaquesemanejaenelsistema,quévalorespuedecontenerelsistema,ycómodependenunosdeotros.
Sonpropiedadesquenovaríaneneltiempo.
Lasdinámicashacenreferenciaalaevolucióndeesosdatoseneltiempo,alasoperacionesqueselesaplican,másconcretamentetransacciones(secuenciasindivisiblesdeoperacionessimples).
Lasrestriccionesdeintegridadsonreglasutilizadasparadefinirlaspropiedadesestáticasydinámicas.
Dichodeotromodo,eselmecanismoporelqueestablecemoscualessonlosvaloresválidosdelosobjetosdenuestrosistemaencadainstante.
MUNDOREALmodeladoorganizaciónobjetosinterrelacionesprocesosrestriccionessemánticasrequerimientosdeinformaciónrequerimientosdeprocesosMUNDODELASIDEASMUNDODELOSDATOSesquemasdedatosesquemasdetransaccionesanálisisdiseoimplementaciónBD12006-200720Lamayoríadeellassepodránexpresaradecuadamenteconlosconceptosquemanejaelmodelodedatos.
Alestructurarlainformacióndeunaciertamanerayalespecificarlastransaccionesejecutablesestamosestableciendoyaunasreglasquecumpliráelsistema.
Noobstante,haypropiedadesimposiblesdeexpresarconlosmecanismosanterioresquenecesitanunadefiniciónadicionalmedianteunformalismodeespecificacióndeaserciones.
Deunaformahastaciertopuntocoloquial,habitualmentesehabladerestriccionesdeintegridadrefiriéndoseúnicamentealassegundas,yaquelasprimerasnonecesitandeesaespecificaciónaparte.
Resumiendo,enelprocesodeanálisisydiseodeunsistemadeinformaciónobtendremosfinalmenteunconjuntoestructuradodedatos,unconjuntodeoperacionesarealizarsobreellos,yunaseriedeafirmacionesadicionalessobrelascombinacionesdevaloresquesonposiblesdentrodenuestrosistema.
Parareflejartodoellonecesitamosunformalismo,un"lenguaje"quenospermitaestructuraresainformaciónydefiniresasoperacionesparasatisfacerlasdemandasdelosusuariosfinales.
Esteformalismoeselmodelodedatos.
Figura2.
3.
EjemplodelprocesodediseodeunabasededatosModelodedatosDefinimosunmodelodedatoscomolaherramientaintelectualquenospermiteestructurarlosdatosdeformaquesecaptelasemánticadelosmismos.
stenosofreceráunconjuntodeconceptosyreglasquenospermitiránrepresentar,conmayoromenorfidelidad,unconjuntodedatosinterrelacionadosyoperacionessobrelosmismos,alosqueafectanunasrestriccionesquehandecumplirentodomomento.
Cuantamásinformaciónsobrelosdatospodamosrepresentardentrodelmismo,másexpresivoseráelmodelodedatos(yporlatantomásdeseable).
EsquemaLaaplicacióndeunciertomodelodedatosaunarealidadnosdarácomoresultadounesquema,unarepresentacióndeesarealidadquepodráserdetipográficoolingüísticoyquedescribiráunconjuntodeobjetoseinterrelacionesentreellos,unconjuntodeoperaciones(combinacionesdeS.
I.
propiedadesestáticaspropiedadesdinámicasrestriccionesdeintegridadMDconceptos+reglasdecomposiciónLDDclasesdeobjetosoperadoresmecanismosderepresentacióndeR.
I.
ESQUEMASGBDBDdescripciónestadoactualdelS.
I.
ocurrenciadelesquemaestadodelabasededatosabstraccióndatostransaccionessoportedelmodelomodelosdedatos21insertar,borrar,modificaryconsultar)aaplicarsobrelosprimeros,ytodaslasrestriccionessemánticasqueafectenalsistema.
LenguajesdedefiniciónymanipulacióndedatosParaaplicarunmodelodedatosdeberíamosdisponerdeunlenguajededefinicióndedatos(LDD)ydeunlenguajedemanipulacióndedatos(LMD).
ConelLDDdescribiríamoslasestructurasenlasquesealmacenaríanlosdatos,yconelLMDlastransaccionesaefectuarparaobtenerinformaciónelaboradaapartirdeesosdatos.
Podemosdecir,pues,queunmodelodedatossecomponededospartesestrechamenterelacionadas:lasestructurasdedatos4,querepresentanlaspropiedadesestáticasdelmodelo,ylaespecificacióndetransacciones,quehacelopropioconlasdinámicas.
Notodoslosmodelostienenencuentalosdostiposdepropiedades,centrándosebienenunooenotro.
Dehecho,losmásimplantadosdeformacomercialsebasancasiexclusivamenteenlaparteestática,seguramenteporserlamenoscostosadesolucionar.
QuiéneselencargadodeproporcionarloslenguajesantesmencionadosydegestionarlosdatosestructuradosenfuncióndeundeterminadomodelodedatosElsistemadegestióndebasesdedatoseslaherramientasoftwarequesoporteaunmodelodedatoso,dichodeotromodo,todoSGBDdebetenerunmodelodedatossubyacentequepermitadescribirlosdatosdeunaformaconcreta.
Disponemos,pues,deunconjuntodereglas,aplicablesmedianteelLDD,paralageneracióndeesquemas.
Elesquemadeunabasededatos,resultadodelautilizacióndelLDD,esladefinicióndelasestructurasdeacuerdoacadamodelo.
Seusapararepresentarlaspropiedadesestáticassegúnelmodeloqueseutilice.
Enalgunosmodelossedistinguendossubconjuntosdeesteconjuntodereglas:unoparaladefinicióndeestructurasensí,yotroparaladefiniciónderestriccionesdeintegridadestáticas.
LosLMDpuedensernavegacionalesodeespecificación.
Losprimerossebasanenlautilizacióninternadepunteros,porloquelosoperadoresseleccionanunúnicoobjetoporlaposiciónlógicaqueocupa,esdecir,serecuperalainformaciónpartiendodelvaloractualdelpuntero(delobjetoalqueestáapuntando).
Enotraspalabras,debemosrecorrerlaestructuradesdeellugarenelquenosencontremoshastallegaralainformaciónqueprecisamos.
LosLMDdeespecificación,sinembargo,recuperanlosdatosenfuncióndequéesloqueestamosbuscando,indicandoexplícitamentequédatosprecisamosyquécondicioneshandecumplir,perodejandoalSGBDlatareadecómoobtieneesainformación.
SistemadeGestióndeBasesdeDatosUnSistemadeGestióndeBasesdeDatos(SGBD)eselsoftwarequeimplementalasherramientasasociadasaunmodelodedatos.
EstadosdelaBDDiremosqueparaunesquemadeBDexistenmuchasocurrenciasdebasededatos,cadaunadelascualestienelasmismasestructurasyobedecealasmismasrestriccionesdeintegridad.
Laestructuradelabasededatosessiemprelamismaosufrealteracionescadabastantetiempoperolasoperacionesdemanipulacióndedatossonconstantesy,portanto,losdatos4Enunsentidoamplio;piénsesequeenelanálisisydiseoorientadosaobjetonosehabladeestructurassinodeobjetos.
BD12006-200722contenidosenlabasededatoscambiancontinuamente.
Tradicionalmente,lostérminosocurrenciadelesquemaybasededatossesuelenutilizarindistintamente.
Unestadodelabasededatosestádefinidoenuninstantedetiempoporladescripcióndelamismaylainformaciónalmacenada;generalmenteseentiendequeelresultadodeunatransacciónounasimpleoperaciónatómica(insertar,borrar,.
.
.
)generanunnuevoestadodelaBD(sehamodificado,dealgunaforma,laBDconrespectoalestadoinmediatamenteanterior).
Evidentemente,lasoperacionesqueprovocanlatransicióndeunestadodeBDaotronuncavaríanlaestructuradelaBD(elesquema).
II3.
RepresentacióndeunsistemadeinformaciónResumiendodeformaintuitivatodoloexpuestoenlasseccionesanteriores,todomodelodedatosutilizalossiguientesmecanismosdeabstracciónparalaconstruccióndelasclasesdeobjetosapropiadas:Clasificación:definirunconceptocomounaclasedeobjetosAgregación:definirunanuevaclasedeobjetosapartirdeotrasclasesGeneralización:definirsubtiposdeunaclaseIgualmente,paraexpresarlasrestriccionesaplicablesalasclasesdeobjetosenparticular,yalsistemaengeneral,seandetipoestáticoodinámicoseutilizanlas:restriccionesdedominio:definenelconjuntodevalores(escalaresocomplejos)agrupadosenunaclasedeobjetos.
restriccionesdeidentificación:nohaydosobjetosdentrodeunaclasedeobjetosiguales.
restriccionesdecorrespondenciaentreclases:restriccionesdecardinalidad,dedependenciadeidentificador,deexistenciaydecoberturadelasgeneralizaciones.
Característicasdinámicasdelsistemadelinformación:restriccionesdinámicas.
Lapartedinámicadeunsistemahacereferenciaalavariacióndelcontenidodelsistemadeinformación(oinclusosuevolucióncomoesquema)atravésdeltiempo.
Vistodeunaformasimplista,sucomportamientofrenteainserciones,borrados,modificacionesyconsultasdelosdatosenélalmacenados.
Talycomoestudiaremoseneltema3dedicadoalmodelorelacional,ésteesenconcreto,unmodeloquecomotodoslosdenominadosclásicosyalgunosdelossemánticos,únicamenteescapazderepresentarlaparteestáticadeunsistemadeinformación.
Posterioresextensionesonuevosmodelosdedatosmáspotenteshanincorporadoherramientaspararepresentarelmodelosdedatos23comportamientoeneltiempodelosdatos,estoes,lasrestriccionesdinámicasdelsistema.
Esevidentequesiendountemaimportanteesteúltimo,tradicionalmentesehadejadodeladoporsudificultaddedefinicióneimplementación,ynovaasertratadoenmásprofundidadenestaasignatura.
II4.
CualidadesdelosmodelosdedatosAlahoradeevaluarunmodelodedatosdebemosfijarnosenlossiguientespuntos:Expresividad:cuantosmásmecanismosoconceptosderepresentacióntengaunmodelomayorserálacantidaddepropiedadesdelsistemadeinformaciónquepuedacaptar,ymenorelusodeasercionesenformaderestriccionesdeintegridadquenosepuedenreflejardirectamentesobreelesquema.
Simplicidad:tambiénesdeseablequeelmodeloseasimpleparaquelosesquemasseanfácilesdeentenderporterceraspersonas.
Debellegarse,pues,aunequilibrioentrelapotenciadelmodelomencionadaenelpuntoanterioryesasimplicidaddeseable.
Minimalidad:cadaconceptotieneunsignificadodistintodelosdemásconceptosutilizadosenelmodelodedatos;nosepuedeexpresarunconceptoenfuncióndeotros.
Formalidad:todoslosconceptosdelmodelotienenunainterpretaciónúnica,precisaybiendefinida.
Puestoqueelesquemapretendeserunaespecificaciónformaldelsistemadeinformaciónarepresentar,estacualidadpermitiríaeltratamientomatemáticodesusconceptos.
Sielmodeloutilizaunlenguajededefinicióngráfico,tambiéntendremosencuenta:Complecióngráfica:unmodeloesgráficamentecompletositodossusconceptosposeenrepresentacióngráfica.
Facilidaddelectura:quelossímbolosgráficosseanfácilmentedistinguiblesunosdeotros.
II5.
ClasificacióndemodelosdedatosAmedidaquehanidoevolucionandoelsoftwareyelhardware,lasposibilidadesylasdemandasdelosusuarioshanidocreciendo;paralelamente,losmodelosdedatosfueronenriqueciéndoseysalvandocarenciasdesuspredecesores.
Cronológicamente,podemosclasificarlosdelasiguienteforma:-Primitivos:basadosensistemasdeficherosconvencionales-ClásicosBD12006-200724-Jerárquico(elmásconocido,IMS:IBM)-Red(CODASYL)-Relacional(desarrolladoporE.
Codd)-Semánticos5-EER(Entidad-RelaciónExtendido:Chen)-RM/T(RelationalModel/Tasmania:Codd)-SemánticoGeneral-OrientadoaObjetos-ModeloFuncionalSedicequetantoprimitivoscomoclásicosestánbasadosenregistros,mientrasquelossemánticosseapoyanenlafilosofíaOrientadaaObjetos.
Losmodelosdedatosprimitivosseusaronduranteladécadadelos70,cuandoaunnoseutilizabanlastécnicasdebasesdedatos.
Losobjetosserepresentabancomoregistrosorganizadosenficheros,ylasrelacionesmediantereferenciasexplícitasaotrosregistrosenalgúncampodelmismo.
Loslenguajesdemanipulacióndependenporenterodelaorganizaciónfísicadelosdatos,ylasoperacionesbásicassonlalecturaylaescritura.
Paragarantizar,oalmenosmejorar,laindependenciadelosaplicacionesfrentealosdatosaparecenlosprimerosSGBD,basadosenloqueahorallamamosmodelosdedatosclásicos.
LosprimerosenaparecerfueroneljerárquicoyelreddeCODASYL,cuyosnombresmuestrancualeslaestructuradedatossubyacenteenlosmodelos.
Losobjetossiguensiendorepresentadosporregistrosperolasrelacionesentreobjetosseexpresan,conciertaslimitacionesimplícitasdelmodelo,mediantelaestructuraenquesebasan.
Loslenguajesdemanipulacióndedatossonnavegacionales.
Sinembargo,ydentrotodavíadeestageneración,laaparicióndelModeloRelacionalprovocólarepresentacióndelosobjetoscomorelaciones(tablasensudenominacióninformal),cuyastuplas(filasensudenominacióninformal)identificanaocurrenciasdelobjetopatrón,ylavueltaalasreferenciasexplícitas(unosatributosquerelacionanunobjetoconunsegundoporcomparacióndevaloresigualesenunoyotro)paraexpresarlasinterrelaciones.
LaestructuradedatosmássimpleylaaparicióndelenguajesdeespecificacióntotalmentedeclarativoshahechodeestemodeloelmásampliamenteutilizadoenlosSGBDcomercialesactuales.
UnodelosgrandesproblemasqueplanteanlosSGBDcomercialesactuales,engeneral,esquenosoportanmodelosconlasuficienteexpresividadcomoparadejarlibrealdiseadordesistemasdeinformacióndemolestastareasdeadministracióndedatosabajonivel.
EsprácticahabitualutilizarenlaconfeccióndelECmodelosdedatosconunfuertepotencialsemánticoparatraducirlodespuésamodelosquesitienenunsoftwarecomercialdisponible,peromuyprobablementemáspobressemánticamente.
Poreso,laaparicióndelosmodelosdedatossemánticosestájustificadaporlapretensióndeaumentarlacapacidadexpresivadelosmodelosclásicosincorporandoconceptosymecanismosdeabstracciónnocontempladosenlosanteriores.
SeutilizanpreferentementeparalaconfeccióndelEsquemaConceptual,ycomomodelosubyacentedealgunosSGBDaunenexperimentación.
Sonlosmáspotentesperonotienenunreflejocomercialenalgúnproductodeampliadifusión;larepresentacióndelEChadetraducirsea5ElmodeloEERseráestudiadoenprofundidadenlaasignaturaBasesdeDatosII,mientrasqueelrestodelosmodelossemánticossonobjetodeestudioenlaasignaturaBasesdeDatosAvanzadas.
modelosdedatos25unEsquemaLógico,engeneralaunmodeloclásico,parapoderserexplotadoeficientementeenalgúnSGBD.
Asíytodo,parecequeelEERestáteniendoalgunapenetraciónsobretodoenherramientasdeanálisisydiseodeSistemasdeInformación,enformademódulodeciertasherramientasCASEquesepuedetraducirdeformaautomáticaalModeloRelacional.
Otrosmodelosdedatos,quedenominaremosdepropósitoparticular,sedesarrollaronsobreaplicacionesconcretas:cartografía,CAD/CAM,hipertexto,etc.
BIBLIOGRAFA[DATE01].
Capítulos1y2.
[ELMASRI02].
Capítulo1.
[SILBERSCHATZ02].
Capítulo1yapéndicesA(ModelodeRed)yB(ModeloJerárquico).
[MOTA02].
Capítulo2.
27IIIELMODELORELACIONALLateoríadelModeloRelacionalsedesarrollóhaciael1970delamanodeE.
Codd,quepropusotambiéntreslenguajesdedefiniciónymanipulacióndedatosbasadosenellgebradeconjuntosyelCálculodePredicadosdePrimerOrden.
Desdeentonces,elModeloRelacionalsehaimpuestoclaramentesobresusinmediatospredecesores,elJerárquicoyelRed,porsusencillezyporlaaparicióndeunlenguajedeespecificación,elSQL(StandardQueryLanguage),defuerteaceptacióncomolenguajedeexplotación.
Veremosacontinuaciónlasestructurasquedefinenelmodelo,losoperadoresasociadosylosmecanismospararepresentarrestriccionesdeintegridad.
29III1.
introducciónintuitivaSepuededecirqueempezamosahablardetecnologíasdebasesdedatospropiamentedichasconlaaparicióndelmodelorelacional.
Dehecho,elmodelojerárquicoyelmodeloenred,losotrosclasificadosdentrodelgrupodelosmodelosclásicos,noeranconsideradoscomotalessinoquelaaparicióndelrelacionalforzólaformalizacióndeesosdossistemasdegestióndeficheros.
SindudaeselmodelodedatosdemáséxitoentrelosSGBDcomerciales.
Sudifusiónsebasaenlasencillezenlarepresentacióndelosdatosyenlaaparicióndeunlenguajedemanipulacióndedatosqueesconsideradocomoestándarycadavezmásutilizado.
Losmodelosclásicos,elrelacionalentreellos,seconsideraqueestánorientadosaregistro(mientrasquelossemánticossedicequeestánorientadosalobjeto).
Noobstante,decaraalusuario,elmodelorelacionalnopresentalainformaciónenregistrossinocomotablas.
Latablapresentalainformaciónreferenteaunconceptoenformadefilas,ylascolumnasrepresentanunaciertacaracterísticaopropiedaddelconcepto;losnombresdescriptivosdedichaspropiedadesestánenlacabeceradelatabla.
tablaALUMNOexpdninombretitulacióncursogrupo121PEPEITIG2A352LUISAITIS2C223ANAITIG2ANoexisteotraformaderepresentarlainformación:laúnicaestructuraqueofreceelmodeloparacaptarcualquierrealidadeslatabla.
Lainformaciónsiempresealmacenaenformadevaloresexplícitos,esdecir,noexistenpunterosomecanismossimilaresquerelacionenlainformaciónsinoquevaloresigualesendoscolumnasdediferentestablasindicanunaposiblerelación.
Además,loslenguajesdemanipulacióndedatosnosonnavegacionales,noimplicanprocesosderecuperaciónsecuencialderegistros,sinoque,simplemente,elusuarioledicealsistemaquecondicioneshadecumplirlainformaciónresultante.
Eseresultadotambiénsepresentaenformadetabla,oloqueeslomismo,ellenguajeescerradoyaqueoperandosyresultadosondelmismotipoconjunto.
Elestándaractual,elSQL,sufrepocasvariacionesdeunamarcaaotradeSGBDyhacontribuidotambiénalaaltaaceptacióndelmodelo.
BD12006-200730III2.
conceptoderelaciónLateoríadelModeloRelacionalsebasaenelconceptomatemáticoderelación,formalismoenelqueseapoyalatabla6.
DefiniremoslosconceptosnecesarioshastallegaraldeRelaciónMatemática:dominioyproductocartesiano.
Larelaciónnospermitirárepresentarobjetosyrestriccionessemánticas,ylosoperadoresutilizaránrelacionescomooperandosydaráncomoresultadonuevasrelaciones.
dominioUndominioesunconjuntodevaloresescalares,enelsentidodequesonlasunidadessemánticasdedatosmáspequeas,sonvaloressimplesquenotienenunaestructurainterna.
Enrealidad,hablardedominioseshablardetiposdedatossobrelosquetomanvaloreslosobjetosdelsistemadeinformación,yesunconceptoclavealahoradepoderestablecercriteriosdeordenacióno,simplemente,comparardosobjetos.
Porotrolado,esevidentequesidefinimosundominioyunaciertaclasedeobjetossobreél,estamosdescribiendodirectamentealgunasdelasrestriccionessemánticasdelsistemadeinformación,enconcretolasquelimitanlosvaloresquepuedetomarunobjeto.
productocartesianoDadaunacoleccióndeconjuntosD1,D2,.
.
.
,Dn,nonecesariamentedisjuntos,elproductocartesianodelosnconjuntosD1*D2*.
.
.
*Dneselconjuntodetodaslasposiblesn-tuplastalesquelacomponentei-ésimadelamismaperteneceali-ésimoconjunto.
D1*D2*.
.
.
*Dn={/d1∈D1,d2∈D2,.
.
.
,dn∈Dn}relaciónmatemáticaResunaRelaciónMatemáticadefinidasobrelosdominiosD1,D2,.
.
.
,DnsiesunsubconjuntodelproductocartesianoD1*D2*.
.
.
*Dn.
RD1*D2*.
.
.
*Dn6Desdeunpuntodevistaformal,elterminocorrectoseríarelación,sinembargoseutilizanindistintamentelostérminostablayrelación.
modelorelacional31gradodeunarelaciónmatemáticaAlosconjuntosDiselesdenominadominios.
ElnúmerodedominiossobreelqueestádefinidaunaRelaciónMatemáticarecibeelnombredegradodelarelación.
Grado(R)=n.
cardinalidaddeunarelaciónmatemáticaAsimismo,sedenominacardinalidaddelarelaciónalnúmeroden-tuplasquecontieneR.
Resultaevidentequemientraselgradoesconstante,lacardinalidaddeunarelaciónvaríaeneltiempo(amedidaqueseincluyenoeliminantuplasdelarelación).
DeladefinicióndeRelaciónMatemáticapodemosdeducirlassiguientesconclusiones:1.
EnunaRelaciónMatemática,porserunconjunto,nohaytuplasduplicadas.
Esevidentequeelproductocartesianodelosdominiosnoproducelamismatupladosveces,ylarelaciónesunsubconjuntodeeseproductocartesiano.
2.
Lastuplas,porlamismarazón,noestánordenadasentresí.
3.
Latuplaesunconjuntoordenadodevalores(listadevalores)deformaqueeli-ésimovalorsiempreperteneceali-ésimodominio.
SupongamosunarelaciónqueagrupealosALUMNOSDEINFORMTICA,delosqueseconoceinformacióntalcomoelnúmerodeexpediente,nombre,titulación,cursoygrupo,quetomanvalores,respectivamente,enlossiguientesdominios:númerodeexpediente∈domExp={1.
.
3000}dni∈domDni={c/cescadena(8)}nombre∈domNom={c/cesunacadena(30)}titulación∈domTit={'II','ITIG','ITIS'}curso∈domCur={1,2,3,4,5}grupo∈domGrp={'A'.
.
'Z'}LarelaciónmatemáticaALUMNOseríaunconjuntodetuplascuyaprimeracomponenteperteneceríaalprimerdominio,domExp,lasegundaalsegundodominio,etc.
:ALUMNOdomExp*domDni*domNom*domTit*domCur*domGrpElgradodelarelaciónes6,yunposiblesubconjuntodetuplasdelproductocartesianoantesdefinidopodríaserelmostradoacontinuación,decardinalidad3.
BD12006-200732III3.
representacióndeobjetosUnabasededatosrepresentaobjetosyconceptosdelavidareal.
Hayprocesospreviosalaintroduccióndedatosenelordenadorqueimplicanlaidentificacióndetalesobjetosysudiseoparaaplicarlosaunsistemainformáticoconcreto.
Podemosdecirque,trasunafasedeinvestigaciónenlaquesedetectanlasnecesidadesdeinformacióndeunadeterminadaorganizaciónosistema,lainformaciónseestructuraenclasesdeobjetosquepretendenrepresentaresarealidadparticular.
Enestepuntoveremosenprimerlugar,deformageneral,cuálessonlosmecanismosatravésdeloscualessellegaaesaestructuraciónconcretadelosdatos.
Posteriormente,yadentrodelmodelorelacional,sedetallaránlasherramientasyconceptosdelmismoqueayudanaesarepresentación.
Esimportantedestacarquelosconceptosquesedesarrollanenestepuntonosonexclusivosdelmodelorelacionalsinoque,pornecesidaddejustificacióndelporquésedefinenlastablascomosedefinen,seexponenahora.
Comorecordaremoseneltemademodelosdedatos,estosconceptossongeneralesyaplicablesacualquiermodelodedatos,seancualesseansusherramientasderepresentación.
III3.
1.
mecanismosdeabstracciónLarealidad,elsistemadeinformaciónarepresentar,tienedemasiadosdetallescomoparapodertenerlostodosencuenta.
Dehecho,muchosdeellossonirrelevantesparanuestroobjetivofinal,queesadministrarunconjuntodedatosquereflejelaproblemáticadenuestrosistemadedatos.
Sehacenecesarioobtenerunarepresentaciónqueúnicamenteabarquelosdetallesimportantesparanuestrosobjetivos.
Losesquemasdebasededatoshacenprecisamenteeso,resumirlascaracterísticasmásimportantesdenuestrosistemadeinformacióny1PEPEITIG2A2ANAITIG2A3LUISAITIS2CALUMNO215223modelorelacional33hacerlascomprensiblesanuestroSGBD.
Esosesquemasseapoyanenundeterminadomodelodedatos.
Unmodelodedatosesunconjuntodeconceptosyunasreglasdecomposicióndeesosconceptosque,combinadosdealgunaforma,soncapacesderepresentarunsistemadeinformación,tantoensuparteestáticacomodinámica.
Dichodeotramanera,unlenguajededescripcióndedatos,apoyadoenunmodelodedatos,nospermitedefinirlasestructurasdedatosquevanaalmacenarnuestrainformación,lasoperacionesqueserealizansobreesasestructurasyladefinicióndelasrestriccionesdeintegridadquedeterminancualessonlosvaloresválidosentodomomento.
Pensemos,porejemplo,enunmodelodedatoscuyasherramientasderepresentaciónseanregistros,camposderegistroyalgunostiposdedatos,yquequeremosrepresentarelhechodelamatriculacióndelosalumnosenciertasasignaturas.
MODELODEDATOSESQUEMAConceptos:registroscampostipoenterotipocarácteroperadorInsertar()operadorBorrar()operadorConsultar()Reglas:Losregistrossecomponendecampos.
Loscampossondeundeterminadotipo.
Losoperadoresseaplicanaregistrosydevuelvenregistros.
abstracciónREGALUMNO(nombre:char(30)dni:char(9)dir:char(30))REGASIGNATURA(cod:char(5)nombre:char(30)créditosT:enterocréditosP:entero)REGASISTE(asig:char(5)alum:char(9))asiste.
Insertar(r)=si(alumno.
Consultar(x)yasignatura.
Consultar(y))OCURRENCIADELESQUEMAdninombredir21Pepec/Toro,1022Juanc/Moisés,303DcodnombrecréditosTcréditosPBD1BasesdeDatos163BD2BasesdeDatos233asigalumBD121BD221BD122Así,laprimeratareaarealizaresseleccionarelconjuntodecaracterísticasrepresentativasdelsistemayexcluirloirrelevante.
Enesteprocesodeabstracciónidentificaremoslosobjetosimportantes,lasrelacionesquesedanentreellos,lasoperacionesarealizar,ylosBD12006-200734límitesdecomportamientoqueafectanatodos,tantodatoscomooperaciones(restriccionessemánticasodeintegridad).
Almodelarunadeterminadasituaciónestamosaplicandolossiguientesmecanismosdeabstracción:-Clasificación:definirunconceptocomounaclasedeobjetos-Agregación:definirunanuevaclasedeobjetosapartirdeotrasclases-Generalización:definirsubtiposdeunaclaseclasificación.
Entendemosporclasificacióncomoladefinicióndeunconceptocomounaclasedeobjetos.
Siobservamoslosobjetosenero,febrero,marzo,.
.
.
,ydiciembre,podemosestablecerunaclasedeobjetosquerepresentealconceptoMES,queserá,pordecirlodeotramanera,unconjuntodeobjetos(losmesesensí)agrupadosbajounmismoepígrafe.
Losnombresdepersonasepuedenclasificarcomounaclasedeobjetosquelosdefina:NOMBRE={Alfredo,Antonio,Antonia,Armando,…}o,deformamásgeneral:NOMBRE={s/sesunacadenadecaracteresdelongitudvariable}También,paraelD.
N.
I.
:DNI={s/sesunacadenade8dígitos}Resumiendo,laclasificacióntipificaenunaclasedeobjetosunconjuntodeobjetosrealeso,desdeotropuntodevista,dichosobjetossonmiembros_deunaclasedeobjetosagregaciónLadefinicióndeunaclasedeobjetosapartirdeotrasyadefinidasseconocecomoagregación.
Porejemplo,laclasePROFESORsedefineapartirdelaagregacióndelosobjetosdni,nombre,ydirección.
modelorelacional35Definimoslaclasedeobjetoscomounaagregacióndesuspartescomponentes,(dnies_parte_deprofesor).
Unejemplounpocomáscomplejodeagregaciónseríaelsiguiente,quedefineunaclaseIMPARTE,enfuncióndelasclasesprofesoryasignatura.
Porotrolado,unamismaclasedeobjetospuedeparticiparenmásdeunaagregación.
generalizaciónEstemecanismonossirveparadefinirsubtiposdeunaclasedeobjetos.
PensemosenCOCHESyMOTOS:todosellossonVEHCULOS,peroaunquelaagregacióndematrículaescomúnatodosellos,sólopodemoshablardenúmerodepuertasenloscoches,mientrasqueeltipoderefrigeracióndelmotoresunapropiedadrelevanteúnicamenteenlasmotocicletas.
Unobjetogeneralizadoesunobjetodefinidoapartirdedosomásobjetosespecializadosconpropiedadescomunes.
Laspropiedadesdelobjetogeneralizadoseránlascomunesatodoslosespecializados,profesordninombredirecciónprofesordninombredirecciónasignaturacódigodescripcióncréditosimparteprofesordninombredirecciónasignaturacódigodescripcióncréditosimpartecoordinadoralumnoBD12006-200736mientrasqueestosúltimos,además,aportanlassuyasquenosepuedenaplicaralrestodeobjetosdentrodelageneralización.
Decimosqueunobjetoespecializadoes_unobjetogeneralizado(uncocheesunvehículo).
III3.
2.
restriccionessemánticasLasrestriccionesdeintegridadhacenreferenciaatodasaquellasreglasonormasquedelimitanlosvaloresquepuedentomarlasocurrenciasdelesquema,yquemodifican,enunsentidoamplio,elsignificadodelosconceptosenélrecogidos.
Estasrestriccionespuedenreflejarsesimplementemediantelautilizacióndelosmecanismosdeabstracciónantesmencionados,ocomoaadidosnosoportadosportalesrepresentaciones(losnacidosenAlicantetienenundescuentodel10%ensudeclaraciónderenta).
Afectantantoalaspropiedadesestáticasdelsistemadeinformacióncomoalasdinámicas(lasoperaciones).
Veremosquétipoderestriccionessemánticasseaplicanacadaunodelosconceptosqueaparecenenunmodelodedatos:-restriccionesdedominio-restriccionesdeidentificación-restriccionesdecorrespondenciaentreclasesrestriccionesdedominio.
Aldefinirunaclasecomounaasociacióndeobjetosestamosdeterminandocualessonlosvaloresválidosparalainstanciacióndeesaclase,esdecir,estamosestableciendo,pordefinición,eldominiosobreelquetomarávalores.
restriccionesdeidentificación.
Noexistenduplicadosentrelosposiblesvaloresdeunainstanciacióndelaclasedeobjetos(aúndoshermanosclónicos,siendoexactamenteiguales,ocupanespaciosdiferentesyson,aefectosdeidentificación,dospersonasdiferentes).
VEHCULOMOTOCOCHEmatrículapuertasrefrigeraciónmodelorelacional37restriccionesdecorrespondenciaentreclases.
Tantolaagregacióncomolageneralizaciónestablecencorrespondenciasentrelasclasesdeobjetosinvolucradas.
EnlaagregaciónIMPARTE,unprofesorpuedeimpartirvariasasignaturasyunaasignaturaserimpartidaporvariosprofesores,ypodemosobligaraquetodoprofesorimpartaalmenosunaasignatura.
Estamosestableciendorestriccionesdecardinalidad.
EntendemoscomocardinalidadmínimaCardMin(o,a)comoelnúmerodecorrespondenciasmínimoqueseestableceentreelobjetooylaagregacióna.
Deigualforma,lacardinalidadmáxima,CardMax(o,a),eselmáximodecorrespondenciasentrelaclasedeobjetosoylaagregacióna.
Porabreviar,utilizaremoslanotaciónCard(o,a)=(m,M)dondemeslacardinalidadmínimayMlamáxima.
Siguiendoelmismoejemplolascardinalidadesserían:Card(profesor,imparte)=(1,n)Card(asignatura,imparte)=(0,n)Aunquelosvalorestípicosparalamínimason0y1yparalamáxima1yn(nindicaríaquenoexistelímite)seadmitenotrosvaloressiasílorequiereelsistemadeinformaciónarepresentar.
Seríandeltipoqueunprofesorhadeimpartiralmenos3asignaturasy/oqueelmáximodeasignaturasquepuedeimpartirson5.
Enlascardinalidadesindicadasarribaestamosrepresentandolaobligatoriedadparatodoprofesordeimpartiralmenosunaasignatura,mientrasqueunaasignaturapudieranotenerprofesorquelaimpartiera.
Sinosfijamosenloslímitesmáximos,ningunodelosobjetosdelaagregacióntienerestricciónalguna.
Enestaagregación,ladefinicióndelaclasedeobjetosagregadaseapoyaenotrasdosclasesyadefinidas.
Seríaelcasodeunaagregaciónbinaria;engeneral,hablamosdeagregaciónn-ariacuandoelnúmerodeclasesparticipantesesn.
Sealaagregaciónsiguiente,querepresentaquelacorrespondenciaentreprofesor,asignaturasqueimparteyauladondelasimparte,asícomolasrestriccionesdecardinalidadqueseespecificanparatalagregación.
Card(profesor,imparte)=(1,n)Card(asignatura,imparte)=(0,n)Card(aula,imparte)=(0,n)Enestecaso,lasemánticaasociadaalaagregaciónindicaqueunprofesorimparteunaasignaturaenunauladeterminada,conlaúnicaprofesorasignaturaaulaimparteBD12006-200738restriccióndequetodoprofesorhadeestarasignadoaunaulayunaasignaturaalmenos.
Lasrestriccionesdeintegridadqueserefierenalascorrespondenciasentreclasesqueseproducenporlageneralizaciónseconocencomopropiedadesdecoberturadelageneralización.
Sidividimosalaspersonasentrevaronesyhembrastodasellasseránovarónohembraperonolasdoscosasalavez.
Porcontra,detodaslasasignaturasobligatoriasdeInformática,unassoncompartidaspordosomástitulaciones(ITIG,ITIS,oII),ytodaasignaturaobligatoriaperteneceaalgunatitulación.
SigeneralizamosalospintoresyescultorescomoARTISTA(unpintorounescultoresunartista),notodoslosartistassondelasdosartesmencionadas,perounpintorpuedeseralmismotiempoescultor.
Resumiendo,lageneralizaciónpuedesertotaloparcial,ydisjuntaosolapada:total:sitodaocurrenciadelobjetogeneralizadosecorrespondeconunadealmenosunodelosobjetosespecializados.
parcial:sialgunaocurrenciadelobjetogeneralizadonotienesucorrespondienteocurrenciaenunodelosobjetosespecializados.
disjunta:siunaocurrenciadelobjetogeneralizadosecorresponde,comomáximo,conunaysólounaocurrenciadeunodelosobjetosespecializados.
solapada:siunaocurrenciadelobjetogeneralizadosecorrespondeconocurrenciasdeobjetosespecializadosdistintos.
Lasgeneralizacionesmencionadastienenlassiguientespropiedadesdecobertura:-PERSONA:totalydisjunta.
-ASIGNATURAOBLIGATORIADEINFORMTICA:totalysolapada.
-ARTISTA:parcialysolapada.
armandoevarafafbddgbdpcp15c01e02p25modelorelacional39III3.
3.
adaptacióndelconceptoderelaciónmatemáticaalmodelorelacional.
Larelacióneslaestructurabásicaqueproporcionaelmodelorelacionalpararepresentarunadeterminadarealidad.
EselmedioporelquepodemoshacerreferenciaenunaBDrelacionalapersonas,cosasointerrelacionesentreesosobjetosoindividuos.
Noobstante,necesitamosadaptarelconceptomatemáticoantesexpuestoparala"tarea"quevaarealizarcomoestructuradelmodelorelacional.
Veamoscuálessonesasadaptacionesycomorepresentarconéllosobjetosyrelacionesentreobjetosdenuestrosistemadeinformación.
Enprimerlugar,recalcarelhechodequelaúnicareferenciaaunacomponentedeunatupla,enunarelaciónmatemática,essuposiciónrelativadentrodeella.
Enotraspalabras,laúnicainformaciónsobrela"forma"quetienelarelaciónsonlosdominiosdelosqueseextraenlosvaloresyelordenqueocupanenelproductocartesiano.
EnelcontextodelModeloRelacional,pretendemosevitartratarasílastuplasdelarelación,comolistasdevaloresdondecadacomponentesereferenciaporlaposiciónqueocupa.
Modificaremos,pues,ladefiniciónquesehadadodeRelaciónMatemática.
UnarelaciónsobrelosdominiosD1,D2,.
.
.
,Dn(nonecesariamentedisjuntos)constadeunaintensiónyunaextensión.
Intensión:unconjuntodenombresdeatributosdistintosA1,A2,.
.
.
,An,cadaunodeellosasociadoasudominiocorrespondiente.
Tambiénrecibeelnombredeesquemaocabeceradelarelación.
Constadelnombredelarelaciónydelosnombresdelosatributosylosdominiosasociados,enformadepares.
Porejemplo:ALUMNO={,,,,}7Extensión:unconjuntoden-tuplasdondecadatuplaesunconjuntodepares(nombreDeAtributon:Valor),siendonelgradodelarelación,unoporcadaatributodelconjuntoanterior,dondeValorsiempreesunvalordeldominioasociadoanombreDeAtributo.
Seleconocetambiéncomocuerpodelarelación.
T={{,,,,}{,,,,}{,,,,}7Aunqueéstaeslanotaciónformal,paraabreviar,enadelanteutilizaremoslaformaALUMNO(exp:domExp,nombre:domNom,titulación:domTit,curso:domCur,grupo:domGrp)BD12006-200740}(TeslaextensióndeALUMNO)Enladefinicióndelpuntoanterior,larelaciónmatemáticaerasimplementeunconjuntodetuplas,dondecadavalorsemovíaeneldominioquelecorrespondíaporlaposiciónqueocupabaenlatupla.
Ahoraunarelaciónmatemáticaconstadedosconjuntos,eldenombresdeatributoyeldetuplasdevalores.
Fijémonosqueahoranoexisteunordenentreloscomponentesdeunatupla,puestoquesiempresabemosquédominio,porserelasociadoalnombredeatributo,eselconjuntoalqueperteneceesevalor.
Disponemos,pues,dedosformasdedescribirunaRelaciónMatemática(segúnlanuevadefinicióndelconcepto):porintensiónoporextensión.
--porintensión:R{(A1:D1),(A2:D2)An:Dn)}.
--porextensión:{{(A1:vi1),(A2:vi2)An:vin)}}i=1,2,.
.
.
,m.
-(Grado(R)=n;Cardinalidad(R)=m)Asídefinidalarelación,loscomponentesdeunatuplasereferencianporelnombredelatributo,noporsuposiciónrelativadentrodeella;noexiste,pues,unordendentrodecadatuplaparasuscomponentes.
III3.
4.
percepcióndelarelación:latablaUnavezfamiliarizadosconelconceptomatemáticonecesitamostrasladarelconceptoaunmedio"físico"conelquepodamostrabajar,yaseaenpapeloenelordenador,debemosrepresentarlarelacióndealgunamanera.
LarepresentacióndelaideaabstractaderelaciónsobreunSGBDrelacionaleslatabla.
Latablaseasemejaaunamatrizdondelafilarepresentaunatupladelarelaciónmatemática,ylacolumnalosvaloresdelascomponentedecadatuplaasociadosaldominiocorrespondiente.
expnombretitulacióncursogrupo1PEPEITIG2A3LUISAITIS2C2ANAITIG2ADecimosquelatablaeslarepresentaciónfísicadelarelaciónmatemática.
Sinembargo,unatablasugiereunascaracterísticasquenotienelarelación:-Enunatablavemosqueexisteunordenentresusfilas.
Portanto,sipodemosdiferenciarcadatuplaporelordenqueocupadentrodelatabla,esperfectamenteposibletenerdostuplasconlosmismosvaloresparatodossusatributos.
modelorelacional41-Tambiénsugiereunordenentrelascolumnas:podemosreferirnosaunacomponentedeunafilaporsunombreoporlaposicióndentrodeella.
Noobstante,sondetallesderepresentaciónquenoinfluyenalahoradesutratamiento:nosotrosentenderemosunatablacomounaRelaciónMatemática,contodaslascaracterísticasdeladefiniciónantesexpuesta.
Asípues,altrasladarelconceptodeRelaciónMatemáticaalModeloRelacional,nosencontramosconquelosconceptosmatemáticostienenunequivalenteinformal.
ConceptoformalEquivalenteinformalrelacióntablaatributocolumnatuplafilagradonúmerodecolumnascardinalidadnúmerodefilasPorúltimo,mencionarquesibienlapercepcióndelusuariodela"forma"desusdatoseslatabla,nadatienequeverconsualmacenajefísico.
Larepresentacióndelosdatosenlosdispositivosfísicosdelordenadornoesenformadetablassinoregistrosestructuradosdeunamaneramásomenoseficiente(o,engeneral,cualquierotrométodo).
Latablaes,portanto,unaabstraccióndesurepresentaciónfísicalacualesdesconocidaporelusuariofinal.
III3.
5.
abstracciones.
Lasclasesdeobjetosserepresentanpormedioderelaciones(tablas).
Veamoscuáleslamecánicadedefinicióndeesasrelaciones.
Elprocesodeabstraccióndeclasesdeobjetosutilizatresmecanismosconcretos,talcomomencionamosanteriormente:clasificación:Ladescripcióndedominiosyladefinicióndeatributosquetomanvaloresenesosdominios.
agregación:Ladefiniciónderelaciones.
generalización:Ladefiniciónderelacionescomosubtiposdeotrarelación.
Veremos,conejemplossencillos,comotrataelmodelorelacionalestosmecanismosdeabstracción.
Comoyahemosdicho,laclasificaciónconsisteenlaidentificacióndeobjetosylosdominiossobrelosquetrabajan.
dni∈domDni={c/cescadena(8)}nombre∈domNom={c/cescadena(30)}dirección∈domDir={c/cescadena(50)}BD12006-200742código∈domCod={c/cescadena(6)}descripción∈domNomcréditos∈domCdt={n/nesrealyn>0.
0}Laagregaciónpuedeversecomolacomposicióndeobjetosdemayornivelapartirdelosidentificadosenlaclasificación.
Elesquemadelabasededatos(elconjuntodetodoslosesquemasderelación),segúnlasagregacionesanteriores,seríaelsiguiente8:PROFESOR(dni:domDni,nombre:domNombre,dirección:domDir)ASIGNATURA(código:domCod,descripción:domNom,créditos:domCdt)IMPARTE(profesor:domDni,asignatura:domCod)Lasimplecomparacióndevaloresentrelasrelacionesnospermitesaberquéprofesoresimpartenquéasignaturas,comosepuedeverenlasextensionesdelasrelacionesquesemuestranseguidamente.
PROFESORdninombredirección211LUCAc/A,3321JUANc/C,33221LUISAc/E,333ASIGNATURAcódigodescripcióncréditosBD1Basesdedatos19BD2Basesdedatos26FP2Fundamentosdeprogramación23IMPARTEprofesorasignatura211BD1321BD1211BD28Másadelante,porlasrestriccionesdecardinalidaddecorrespondenciaentreclases,sejustificaráestarepresentación.
profesordninombredirecciónasignaturacódigodescripcióncréditosimpartemodelorelacional43Sealageneralizacióndevehículosqueseproponeacontinuación:Elesquemaresultanteseríaelsiguiente:VEHCULO(matrícula:domMat,marca:domMarca,modelo:domMod)COCHE(mat:domMat,puertas:domPp)MOTO(mat:domMat,refrigeración:domRfr)VEHCULOmatrículamarcamodeloA-0000-AAXeatKordobaA-1111-BBSusukiFantom0-0000-0FerrariTestarrossaCOCHEMOTOmatpuertasmatrefrigeración0-0000-03A-1111-BBaguaA-0000-AA5Porlaestructuracióndelasrelaciones,sabemosqueelvehículoconmatrículaA-0000-AAesuncochedemarcaXeatymodeloKordobayquetiene5puertas.
ElvehículoA-1111-BBesunamotoSusukiFantomrefrigeradaporagua.
Losatributoscomunesatodoslostipossemantienenenlarelaciónvehículo,mientrasqueelnúmerodepuertasúnicamenteesaplicablealoscoches,comoeltipoderefrigeraciónsóloloesparalasmotos.
Másadelanteveremoscomosecompletanlosesquemasderelaciónparadotarlesdeunasemánticaadecuadaypreservarlaintegridaddelosdatos.
III4.
restriccionessemánticasConlovistohastaahoranosomoscapacesderepresentarfielmentetodaslascaracterísticasdelsistemadeinformaciónamecanizar,niVEHCULOMOTOCOCHEmatrículapuertasrefrigeraciónmarcamodeloBD12006-200744hemosconseguidoquelatablasecomportecomounarelación:cómoevitamosladuplicacióndetuplasenlasrelacionesOtroejemplo:podemosintroducirinformaciónenlastablasdefinidascomoseproponíaenelpunto3,peronocontrolamoslaintegridaddelosdatos.
Podríamosdecir,insertandounanuevatuplaenlarelaciónIMPARTE,queLucíaseresponsabilizadeladocenciadeXYZ,perotalcódigodeasignaturanoseencuentraenlarelaciónASIGNATURA:cuálesesaasignatura,cuántoscréditostieneVamosaver,acontinuación,quémecanismosutilizaelmodelorelacionalparareflejartodaslasrestriccionessemánticasqueafectanaunsistemadeinformaciónrepresentadomedianteunabasededatosrelacional.
Losconceptosdelmodelorelacionaladesarrollarsonlossiguientes:dominiovalornuloclaveprimariasyalternativaclaveajenaeintegridadreferencialIII4.
1.
RestriccionesdedominioTodoatributotieneundominioasociado(untipodedatos),unconjuntodevaloressobrelosquetomavalor.
Losatributospuedencontenernulosotenerprohibidaestaposibilidad.
Unvalornuloesausenciadeinformación,undatoquesedesconoce.
Notienenadaqueverconvalores0ocadenasdelongitud0,puestoqueestossonvaloresconocidos.
Esunconceptofundamentaldelateoríadelmodelorelacionalperoqueestálejosdehabersesolucionadosatisfactoriamente.
Porejemplo,deunapersonapodemosnoconocersuteléfono.
Sinembargo,estonoimplicaqueesapersonanoposeaeseserviciosino,simplemente,quenodisponemosdeesainformación.
Porotrolado,elvalorNULOnosepuedecompararconotrosvalores;únicamentepodemossabersiunatributoesNULOonoloes.
Así,sielsueldodeunempleadoesdesconocido,obviamente,nopodemosinterrogaralabasededatossobresiesapersonaeslaquemáscobradetodalaplantilla.
III4.
2.
restriccionesdeidentificaciónComoyahemosdicho,noexistendostuplasigualesenunarelación.
Esobvio,pues,quepodemosencontrarunconjuntodeatributosquemodelorelacional45porsucombinacióndevaloresnosidentifiqueunívocamenteunadeterminadatupladelarelación(ofiladeunatabla)9.
PensemosenunarelaciónquecontengainformaciónsobrePERSONAS.
PareceobvioquenuncanosencontraremoselcasodedospersonasconelmismoD.
N.
I.
:siésteesunatributodelarelación,podremosdiferenciarcadatupla(cadapersona)delasdemás.
Estamosbuscando,pues,unatributo(osubconjuntodeatributos)quenospermitaespecificarunaúnicatupla.
ClavecandidataUnaclavecandidataesunsubconjuntodeatributosquecumplequecualquiercombinacióndesusvaloresesúnica;noexistirándosfilasconvaloresigualesenlasmismascolumnasqueconstituyentalsubconjunto.
Además,nodebeconteneratributosquenoseanrelevantesparaesaidentificación.
SeaRunarelaciónconatributosA1,A2,.
.
.
,An.
SedicequeunsubconjuntodeesosatributosK={Ai,Aj,.
.
.
,Ak}esunaclavecandidatasisatisfacelasdospropiedadessiguientes:identificaciónúnicaeirreducibilidad.
IdentificaciónúnicaNohaydostuplasenR,TmyTntalesque:Aim=AinAjm=Ajn.
.
.
.
Akm=AknParacadatupla,lacombinacióndevaloresdelosatributosqueformanlaclavecandidataesúnica,noserepiteparaningunaotratupla.
KesirreducibleNingunodelosatributosdeKpuedeeliminarsesinquesedejedecumplirlapropiedadanterior,oloqueeslomismo,ningúnsubconjuntodeKpuedediferenciarcadatupladelrestodetuplasdelarelación.
SupongamosunarelaciónRconatributosa,b,c,yd.
Si(a,d)esclavecandidataentonces10:(a)noloes,ni(d)(a,b,d)noloes,ni(a,c,d),ni(a,b,c,d)(b)sípuedeserlo,y(c)(c,d)sípuedeserlo,y(a,b),(a,c),(b,c)9Engeneral,novamosadiferenciartérminostalescomotupladerelaciónyfila,oatributoycolumna:véaseladiscusióndelpuntoanterior.
10Téngaseencuentaqueelordendelascolumnasnoimporta:(a,d)eslomismoque(d,a).
BD12006-200746SealarelaciónSUMINISTRA,representadaporlatablaquesemuestraacontinuación,queasociaunosproveedores(representadosporsuD.
N.
I.
)conunosartículos(códigodeartículo)queelprimerovendeaunpreciodeterminado,datoésteúltimoquesereflejaenlacolumnaquerepresentaalatributoimporte.
Veamosahoracuálespodríanserlasclavescandidatas.
dninumartículoimporte2145585500011.
200.
000214558550002500.
00010154123000125.
000144567890001135.
500-{dni}nopuedeserclavecandidataporqueviolalaprimerapropiedad:haydostuplasconelvalordedni=21455855-Lomismoocurrecon{numartículo}.
-Sinembargo{dni,numartículo}siqueposeevaloresdistintosparacadatupla('21455855,0001'esdistintode'21455855,0002',.
.
.
)y,además,ningunodelosdosatributos,comohemosdicho,puedeserclaveporseparado.
stasiseríaclavecandidata.
-{dni,numa,importe}noseríaclavecandidataporqueviolalasegundapropiedad:existeunsubconjuntodeéste,{dni,numartículo},queyaloes.
Noobstanteelejemplo,nodebepensarseenlabúsquedadelasclavescandidatasapartirdelconjuntodetuplasquecontienelarelacióneneseinstante,sinoporelconceptoalquerepresentan.
LarelaciónALUMNOpuededarlacasualidadquenocontenganingunatuplaconelnombrerepetido,peroesobvioqueenlarealidadeselnúmerodeexpediente(exp)laclavecandidata,ynoelatributonombrequeviolaelprincipiodeidentificaciónúnica.
Todarelacióntienealmenosunaclavecandidata,yaqueelconjuntodetodossusatributossiemprecumplelaprimerapropiedad(porladefiniciónderelación,noexistentuplasduplicadas),deformaquesiesteconjuntonoesclaveesporqueexisteunsubconjuntoquesíloes.
ClavePrimariayClavesAlternativasUnaclaveprimariaesunadelasclavescandidatas.
Eslaquevamosautilizarparaidentificarcadatupladelarelación,yesdecisióndelanalista/diseadordecidircualdeentretodas,sihaymásdeuna,eslaquevaahacerelpapeldeprimariaenelsistema.
Siempreexistiráunaclaveprimariapuestoquesiempreexistealmenosunaclavecandidata.
Unaclavealternativaesunaclavecandidatanoprimaria.
Unaconsecuenciadeladefinicióndeclavecandidata,laidentificaciónúnicadecadatupla,eslaconocidacomointegridaddeclave,quedicequeningúnatributodeunaclavecandidatapuedecontenervaloresnulos.
Sielnulosignificavalordesconocido,pareceuncontrasentidoqueunaclavecandidata(opartedeella)seanula,puestoqueentonceselobjetoalquequeremosidentificarnosesdesconocido.
Sipermitiéramosnuloseneldnideunempleadoquesemodelorelacional47llameJuan,comopodemosdiferenciarlodeotroempleadoquesellamedelamismamaneraSonlamismapersonaosondistintasCómopodemosalmacenarinformacióndeunapersonaalaquenoconocemosConestoaseguramosquesiemprevamosapoderidentificartodasycadaunadelastuplasdeunadeterminadarelación;notendríasentidounaclavenulayaquenosfaltaríaprecisamentelainformaciónqueladiferenciadelasdemástuplas11.
Aunquepuedaparecerlo,ladefinicióndelasclavesprimariasyalternativasnoseempleaenmejorarelrendimientodelsistemaalahoraderecuperardatosdenuestraBD.
Losdosconceptosanterioresseutilizan,básicamente,paramantenerenlastablaslapropiedaddelasRelacionesMatemáticasdenoduplicidadentresustuplas,yparaexpresarrestriccionesdecorrespondenciaentreclasesdeobjetostambiénagregadas.
Enotraspalabras,lasclavesnossirvenpararepresentarlasemánticadenuestroesquemaconceptual.
Notiene,portanto,elsentidodeunaorganizaciónindexada(aúncuandoutiliceestaparaimplementarlosmecanismosdeidentificación),porponerunejemplo,enunficheroconvencional,puestoquepretendemosdejaralSGBDlastareasdelaadministraciónfísicadelosdatos.
III4.
3.
restriccionesdecorrespondenciaLaagregaciónylageneralizaciónnoestántotalmentesoportadasporelmodelorelacionalyaqueelmodelocarecederecursospararepresentartodaslasrestriccionesdecorrespondenciasentreclasesdeestetipodeabstracciones.
Noobstante,veremoslasherramientasquenosproporcionalateoríarelacionalconrespectoaestosmecanismosdeabstracción.
Lasclavesajenassirvenparaasociartuplasderelacionesdistintas(odeunarelaciónconsigomisma).
Esunmecanismoutilizadoparaexpresaragregacionesdeobjetosyaagregados.
11Tradicionalmente,laintegridaddeclaveseaplicabaúnicamentealaclaveprimaria.
Aunquelabibliografíanoesclaraaesterespecto,ennuestraopiniónpareceuncontrasentidonopermitirnulosenlaclaveprimariaperosienelrestodecandidatas,puestoquetodaclavecandidatadeberíasercapazdeidentificartodas,sinexcepción,lastuplasdeunarelación.
empleadodninombredepartamentocódigonombretrabaja_enBD12006-200748Seaelárboldeagregacionesanterior,dondedefinimoslascardinalidadessiguientes:Card(empleado,trabaja_en)=(0,1)Card(departamento,trabaja_en)=(0,n)Cómopodemosexpresar,dentrodelmodelorelacional,queunempleadotrabajaenundeterminadodepartamentodentrodeunaempresaUnasoluciónesanotar,comounacaracterísticamásdelempleado,cuálesesedepartamentoenelquedesempeasulabor.
Talinformaciónestárepresentadapordosrelaciones:EMPLEADOyDEPARTAMENTO,dondesehandefinidolosatributosnecesariosparacadauno:númerodeempleado,nombre,ycódigodedepartamentoalqueestáasignadoparalaprimera,ycódigoydescripciónparalasegunda.
Enelmodelorelacional,unaclaveajenaesunsubconjuntodeatributosdeunarelacióndetalformaqueelvalordetodosellosdebecoincidirconelvalordelaclaveprimariadeunatupladeotrarelación,enelcasodeteneralgúnvalor.
ElatributodepartamentodelatablaEMPLEADOactúacomoclaveajena,yreferencia,porsuvalorencadatupla,unadeterminadafiladelatablaDEPARTAMENTO.
ConestemecanismoderepresentaciónestamosdiciendoqueelempleadoAntonio,declave001,trabajaeneldepartamentodeVentas,lomismoquePilar,mientrasSusanalohaceeneldeInvestigación.
Así,talycomoestádefinidalaclaveajenapodemosdeducir(conlainformacióndequedisponemosacercadeladefinicióndelastablas)queundepartamentotieneasignadosningunoovariosempleados,yqueunempleadononecesariamenteestáasignadoaundepartamentoenconcreto(elempleado002noestáasignadoaningúndepartamento,yeldepartamentoDEP3notieneempleados).
IntegridadReferencialTodaclaveajenapertenecienteaunarelaciónSquehagareferenciaalaclaveprimariadeotrarelaciónR(RySnohandesernecesariamentedistintas)debecumplirquetodovalornonuloendichaclaveajenahadeserexactamenteigualalvalordeclaveprimariadealgunatupladeR.
TodoSGBDbasadoenelModeloRelacionalqueposeamecanismosdeclavesajenasdebegarantizartodaslasrestriccionesdeintegridadquesepuedanexpresarenél;enparticular,laintegridadreferencial.
EMPLEADOnúmeronombredepartamento001AntonioDEP1DEPARTAMENTO002Josécódigonombre003SusanaDEP2DEP1Ventas004PilarDEP1DEP2InvestigaciónDEP3Contabilidadmodelorelacional49Enestecaso,debeasegurarqueunaclaveajenadeunarelación,obiennoreferenciaanada(latuplanoestárelacionadaconotra),obienreferenciaaunatuplaexistenteenotrarelación.
Nuncapodrátenervaloresquenoseencuentrenenlaclaveprimariadealgunatupladeotrarelación.
CómopuedeelSGBDgarantizarlaintegridadreferencialSuponiendoquedispongadetodalainformaciónnecesariasobreclaves(primariasyajenas,almenos)seencuentraconelproblemadelasactualizacionesyborradosdeclavesprimariasreferenciadasporalgunaclaveajena.
SeaelcasodelarelaciónentreEMPLEADOyDEPARTAMENTO,antesdescrita.
EloperadorpretendeborrardelatablaDEPARTAMENTOSlatupladel"Dpto.
deInvestigación".
Siasílohiciere,enEMPLEADOS,latuplade"Susana"tendríasuclaveajenaapuntandoaunvalordeclaveprimariaquenoexisteenDEPARTAMENTOS,loqueviolalaintegridadreferencial.
TambiénsepuededarelcasodequedichoDpto.
deInvestigacióncambiedeclaveprimariaypaseaidentificarsecomo"DEP5".
Nuevamente,sinotomamoslasmedidasoportunas,estaríamosviolandolaintegridadreferencial.
Endefinitiva,paraactualizacionesyborradosdetuplasreferenciadasporclavesajenasenotrastablas,elSGBDdebeconocer,porlasespecificacionesoportunasenelesquemadelaBD,cualdelassiguientesestrategiasdebeutilizarparagarantizarlarestricción:RechazarAnularPropagarRECHAZARElSGBDsólopermitirálaoperaciónencasodequenoproduzcaproblemas.
Ennuestroejemplonodejaríaquerealizásemoslaoperación.
ANULARElSGBDpondráanulostodaslasclavesajenasquehaganreferenciaalaclaveprimariaquesufrelaoperación.
Ennuestroejemplo,sipretendemosborrarlatuplade"Investigación",latuplade"Susana"quedaríaconelatributoDEPARTAMENTOavalornulo.
EMPLEADODEPARTAMENTOnúmeronombredepartamentocódigonombre1AntonioDEP1DEP1Ventas2JoséDEP3Contabilidad3Susana4PilarDEP1BD12006-200750Supongamos,ahora,queparaactualizareldpto.
deVentasaunnuevocódigo,cambiarlode"DEP1"a"DEP4",adoptamoslamismaestrategia.
Obtendríamos:EMPLEADOnúmeronombredepartamento001AntonioDEPARTAMENTO002Josécódigonombre003SusanaDEP4Ventas004PilarDEP2InvestigaciónPROPAGARTambiénconocidacomo"encascada"porquereproducelaoperaciónsobretodaslastuplasquehaganreferenciaalaclaveprimaria.
Sipartimos,nuevamente,delejemplooriginalyborramoslatupladeldpto.
deInvestigación,latuplade"Susana"tambiénseríaborrada:EMPLEADOnúmeronombredepartamento001AntonioDEP1DEPARTAMENTO002Josécódigonombre004PilarDEP1DEP1VentasDEP3ContabilidadYenelcasodelaactualizaciónantesmencionadadeVentas:EMPLEADOnúmeronombredepartamento001AntonioDEP4DEPARTAMENTO002Josécódigonombre004PilarDEP4DEP4VentasDEP3ContabilidadPorejemplo,enunlenguajededefinicióndedatosficticiopodríamosdefinirlaestructuradelatablaEMPLEADOcomosigue:CREARTABLAEMPLEADO(númerocarácter(3),nombrecarácter(20),departamentocarácter(4),CLAVEPRIMARIA(número),CLAVEAJENA(departamento)REFERENCIADEPARTAMENTONULOSPERMITIDOSBORRADOSENDEPARTAMENTORECHAZARACTUALIZACIONESENDEPARTAMENTOPROPAGAR);Nótesequeparacadaunadelasoperacionessehandefinidométodosdistintosparamantenerlaintegridadreferencial.
Además,dichadefiniciónhadehacersecontodasycadaunadelasclavesajenasaúnestandoenlamismarelación:modelorelacional51CREARTABLASUMINISTRA(provcarácter(4),artcarácter(5),precioenterolargo,CLAVEPRIMARIA(prov,art),CLAVEAJENA(prov)REFERENCIAPROVEEDORBORRADOSENPROVEEDORRECHAZARACTUALIZACIONESENPROVEEDORPROPAGAR);CLAVEAJENA(art)REFERENCIAARTCULOBORRADOSENARTCULOPROPAGARACTUALIZACIONESENARTCULOPROPAGAR);restriccionesdecardinalidadLasrestriccionesdecardinalidadlimitanelnúmerodetuplasdevariasrelacionesquesepuedenasociarentresí.
Larepresentacióndelassiguientesrestriccionesdecardinalidadsehacemedianteladefiniciónapropiadadeclavesajenas,tantascomoseannecesarias,ydeladefinicióndeclavesprimarias.
Másquesabercómotraducirunesquemaconceptual(enelmodelodedatosquesea)aunesquemalógicorelacional,interesacomprendercómo,mediantetablasyclaves,sepuede"simular"unarelaciónentreentidades.
Card(E1,R)=(0,n)Card(E2,R)=(0,1)LaformaderepresentarestascardinalidadesentreE1yE2esdefinirunatablaparacadaobjetoyaadirunacolumnaalatablaE2queactúecomoclaveajenahacialatablaE1:E1(A:domA,B:domB,C:domC)ClavePrimaria:AE2(D:domD,E:domE,aE1:domA)ClavePrimaria:DClaveAjena:aE1→E1EsteeselmecanismoutilizadopararelacionarEMPLEADOyDEPARTAMENTOenunejemploanterior.
E1ABE2CDRBD12006-200752Elnúmerodecolumnasquesonclaveajenadebecoincidirconelnúmerodecolumnasdelaclaveprimariadelatablaconlaqueserelacionay,además,coincidirendominiosparapodercompararlas.
Unaclaveajena,enprincipio,noesunaclavecandidatadentrodelatablaenlaquesedefine,yporlotantoadmite,enprincipio,duplicadosyvaloresnulos.
Poresopodíamostenerempleadosquenoestuvieranasignadosaningúndepartamento,yvariosempleadosconelmismovalordecódigodedepartamentoenlacolumnaqueactúacomoclaveajena.
Esimportante,también,darsecuentadequeserespetanlascardinalidadesmínimas.
Enconcreto,existendepartamentosquenoestánasociadosaningúnempleado,yelhechoyacomentadodeempleadossindepartamento.
Card(E1,R)=(0,n)Card(E2,R)=(1,1)Larepresentacióneslamismaqueenelcasoanteriorperoobligandoaquelaclaveajenatengasiemprevalor(queseadeValorNoNulo):E1(A:domA,B:domB,C:domC)ClavePrimaria:AE2(D:domD,E:domE,aE1:domA)ClavePrimaria:DClaveAjena:aE1→E1VNNEsteseríaelcaso,aplicándoloalaagregaciónTRABAJA_EN,enelquetodoslosempleados,sinexcepción,estánasignadosaundepartamento.
Card(E1,R)=(0,n)Card(E2,R)=(0,n)Enestecaso,sedefineunaterceratablaconunnúmerodecolumnasigualalasumadelnúmerodecolumnasquesonclaveprimariadelasentidadesrelacionadas.
E1(A:domA,B:domB,C:domC)ClavePrimaria:AE2(D:domD,E:domE)ClavePrimaria:DR(aE1:domA,aE2:domD)ClavePrimaria:(aE1,aE2)ClaveAjena:aE1→E1ClaveAjena:aE2→E2steeselcasodelarelaciónSUMINISTRA,suponiendoqueexistierandostablasmás,PROVEEDORyARTCULO,dondelaclaveprimariadelaprimeraeselD.
N.
I.
delvendedoryelcódigodeartículoladelasegunda.
Esevidentequelasparejas(dni,numartículo)noserepitennunca:unvendedornovendeunmismoartículoadospreciosdistintos.
Sinembargo,sinosfijamosenlasclavesajenas,comotales,elproveedor21455855aparecedosvecesensucolumna,ylomismoocurreparaelartículo0001.
Lascardinalidadesmínimasserespetan,yaquepuedehabervendedoresdelatablaPROVEEDOR,opiezasdePIEZA,quenoaparezcanreferenciadosenlatablaSUMINISTRA.
modelorelacional53Card(E1,R)=(0,1)Card(E2,R)=(0,1)Enestecaso,tambiénsedefineunaterceratabla,perounadelasclavesajenasactúaahoracomoprimariaylaotracomoalternativa.
E1(A:domA,B:domB,C:domC)ClavePrimaria:AE2(D:domD,E:domE)ClavePrimaria:DR(aE1:domA,aE2:domD)ClavePrimaria:aE1ClaveAlternativa:aE2ClaveAjena:aE1→E1ClaveAjena:aE2→E2Pensemos,porejemplo,enunaagregaciónSER_JEFE_DEentreEMPLEADOyDEPARTAMENTOenlaqueunodelosempleadoseseldirectordeunúnicodepartamento,ytododepartamento,asuvez,tieneunúnicojefe.
Veamosahoraloscasosconcardinalidadmínimaenunoolosdosobjetos:Card(E1,R)=(0,1)Card(E2,R)=(1,1)E1(A:domA,B:domB,C:domC)ClavePrimaria:AE2(D:domD,E:domE,aE1:domA)ClavePrimaria:DClaveAlternativa:aE1ClaveAjena:aE1→E1Card(E1,R)=(1,1)Card(E2,R)=(1,1)R(A:domA,B:domB,C:domC,D:domD,E:domE)ClavePrimaria:AClaveAlternativa:DSinembargo,elmodelorelacionalnoescapazderepresentartodaslasrestriccionesdecardinalidad,comopuedanser,entreotras,lassiguientes12:Card(E1,R)=(0,n)Card(E2,R)=(1,n)Card(E1,R)=(1,n)Card(E2,R)=(0,1)Card(E1,R)=(2,n)Card(E2,R)=(0,3)12Noesexactamentecierto,loqueocurreesqueciertasrepresentacionesquepretendanresolverestasrestriccionesdecardinalidadintroducenredundanciaofacilitanlainconsistenciadelabasededatos.
LacorrectainterpretacióndeestaafirmaciónsedaeneltemadeTeoríadelaNormalización.
BD12006-200754Uncasoparticularderestriccióndecardinalidadeselsiguiente:E1(A:domA,B:domB,C:domC)ClavePrimaria:AE2(aE1:domA,D:domD,E:domE)ClavePrimaria:(aE1,D)ClaveAjena:aE1→E1Eselcaso,porejemplo,decallesquepertenecenadistintaslocalidades.
LaAvda.
delaConstitución,contaldenominación,seencuentraenvariaspoblaciones,peronoeslamismaavenidaladeEldaqueladeMonóvar:aúnllamándoseigual,sondosobjetosdiferentesfísicamente.
Elproblemaestáenqueelnombredelacallenoesclavecandidata,ydebeapoyarseenelnombredelapoblaciónparadistinguirsedelasotrascallesdenuestrabasededatos.
Ahoraéstassedenominan,respectivamente,y13.
Teniendoestoencuenta,pesealoquepudierapensarseporladeclaracióndelaclaveprimariadeE2,lascardinalidadesdeambosobjetosenlaagregaciónquelosasociason:Card(E1,R)=(0,n)Card(E2,R)=(1,1)Segúnelejemplo,E1secorresponderíaconlapoblaciónyE2conlacalle.
Comosepuedever,esfácildistinguirestetipodeagregaciónporladefinicióndeunaclaveprimariaque,enparteynototalmente,esalmismotiempoclaveajenahaciaotrarelación.
Cuandounaclaveprimariaesenteramenteunaclaveajenaestamosanteunageneralización,comosedesarrollaacontinuación.
generalizaciónypropiedadesdecoberturaLageneralizaciónserepresenta,enelmodelorelacional,mediantelautilizacióndeunaclaveajenaquees,almismotiempo,claveprimariadelarelación.
VEHCULO(matrícula:domMat,marca:domMarca,modelo:domMod)Claveprimaria:matrículaCOCHE(mat:domMat,puertas:domPp)ClavePrimaria:matClaveAjena:mat→VEHCULOMOTO(mat:domMat,refrigeración:domRfr)ClavePrimaria:matClaveAjena:mat→VEHCULOEnelmodelorelacionalnopodemosrepresentarlaspropiedadesdecoberturadelageneralización.
Enrealidadseríamáspropiodecirqueúnicamentepodemosreflejargeneralizacionesparcialesysolapadas,13Claramente,setratadeunejemplo;nohemoscomprobadoquetalavenidaseencuentreendichaspoblaciones.
modelorelacional55puestoquenoexisteningúnmétodoparalasotrascombinacionesdecaracterísticas.
III5.
operadoresLatabla,orelaciónensuequivalentematemático,eslaestructurabásicadelModeloRelacional.
Parapodercrearymanipulartablasnecesitamosunlenguajededefinicióndedatos(LDD)yunlenguajedemanipulacióndedatos(LMD).
ConelLDD,apartededescribirlastablas,tambiénsepuedendefinirvistas,esquemasexternos,autorizaciones,restriccionesdeintegridad,etc.
Porotrolado,sobrelainformaciónalmacenadaenlastablasquerremosresolverundeterminadorequerimiento,estoes,formularunapreguntaanuestraBDdelaqueobtendremosunarespuesta(comopuedaser"cuálessonlosvendedoresdeAlicante",o"cuáleselpreciodesuministroparalapiezaXofertadoporcadavendedor").
Anivelformal,sobreelModeloRelacionalexistentrespropuestasdeLMD,enformadelenguajesdeespecificación,basadoscadaunoenunadeterminadanotación.
TodasfuerondesarrolladasporCodd:-lgebraRelacional.
-CálculoRelacionaldeTuplas.
-CálculoRelacionaldeDominios.
Elálgebraesunlenguajeconoperadoresexplícitosy,mediantesusexpresiones,serepresentalaformadeconstruirnuevasrelaciones.
Elcálculoempleafórmulaslógicasqueseevalúanaciertoofalso,ysonladefinicióndelarelaciónentérminosdeotras,quécondicionescumpleoquécaracterísticasdebetenerlainformacióndentrodelarelaciónresultado.
Sepuededecirqueelálgebraexpresalaformaderesolverelproblema,mientrasqueelcálculodefinecuáleselproblemaaresolver.
Porejemplo:ALUMNO[exp,nombre]SEMATRICULA[cod,exp]Esteejemplodelálgebrautilizalosoperadoresproyección([]),yconcatenaciónnatural()sobrelasrelacionesALUMNOySEMATRICULA,yobtendríalainformacióndelosalumnosylasasignaturasenlasquesehamatriculadoporlaevaluacióndeizquierdaaderechadelosoperadores,teniendoencuentalasreglasdeprecedenciadelosmismos.
Sonexpresionesalestilodelasutilizadascomúnmenteenloscálculosmatemáticos.
{xexp,xnombre,xcod|ALUMNO(exp:xexp,nombre:xnombre)∧SEMATRICULA(cod:xcod,exp:xexp)}BD12006-200756Laanterioresunaexpresiónconelmismoresultadoqueladeálgebra.
Esunafórmulaencálculorelacionaldedominiosquedevuelvetodosaquellosvaloresdeexpediente,nombredealumnoycódigodeasignaturaquehacenciertalafórmula.
Lasfórmulassebasanenelcálculodepredicadosdeprimerorden.
Comohemosdicho,sonlenguajesdeespecificación,frentealosdenominadosnavegacionales,porqueespecificanlainformaciónarecuperarenvezdeobtenerregistrosporsuposicióndentrodelaestructuradedatos.
Ellgebraexpresalosrequerimientosmediantelaaplicacióndirectadeciertosoperadoresdefinidosatalfinsobrelasrelaciones.
LosdemásutilizanunanotaciónlógicabasadaenelCálculodePredicadosdePrimerOrden,dondelasconsultassonfórmulaslógicasqueseevalúanaciertoofalso;lastuplascontenidasenlarelación(tabla)resultadodeunaconsulta,sustituidasenlafórmulaunaauna,sonlasquehacenqueseevalúeéstaacierto.
Estoslenguajessoncerrados,enelsentidodequeelresultadodeaplicarunoperadoraunaomástablasyaexistentesennuestraBDseráunanuevatablaquepodremosconsultaroutilizarparaunanuevaoperación.
Lostreslenguajestienenidénticacapacidadexpresiva;unrequerimientoescritoenunodeellossiempresepuedetraduciracualquieradelosotrosdoslenguajes,ysonobjetodetratamientoenprofundidadentemasposteriores.
Lacompletitudrelacionaleslamedidadelo"relacionalmenteadecuado"queesunlenguaje.
SedicequeunLMDescompletorelacionalmentesitiene,almenos,lamismacapacidadexpresivaqueelálgebrarelacional,sipuededefinircualquierrelaciónresultadodelálgebra(sieselenguajepuede"hacer"lasmismascosas,independientementedequeofrezcaotrascapacidades).
SQLcumpleestapropiedad.
Porcontra,lostreslenguajesmencionadosnosoncomputacionalmentecompletos(nopuedencalculartodaslasfuncionescomputables)puestoquenoposeen,entreotras,funcionesdeagregaciónquecalculensumas,medias,etc.
III6.
otrascaracterísticasvistasEnunSGBDrelacionalsediferenciasegúnlatemporalidaddelastablas.
DenominamostablasbaseaaquellasqueformanelesquemadenuestraBD.
Sonlasquedefinimosenesquemalógico14como14VeremosenotrotemaqueunadelaspartesdelaarquitecturadeunSistemadeGestióndeBasedeDatoseselesquemalógico,oloqueeslomismo,ladefinicióncompletadelastablasqueconstituyenlasdistintasBasesdeDatosagestionar.
modelorelacional57representacióndelosobjetosdenuestrosistemadeinformación.
Sedicequesonrelacionesconnombre.
Lastablasderivadassonrelacionesconosinnombre,definidasapartirdetablasbaseuotrasrelacionesderivadas:tablastemporales,cursores,etc.
Lasvistassontablasderivadasconnombrequesirvenparamantenerunaconsultaqueserealizafrecuentemente.
Supongamos,porejemplo,queunainformacióndefrecuenteusoeslalistadevendedoresdelaprovinciadeAlicante;ladefinicióndeestavista,enSQL,sería:CREATEVIEWprovaliASSELECTnumvend,nomvend,nombrecomerFROMvendedorWHEREprovincia="ALICANTE"Téngaseencuentaquelavistanoesunacopiadeunapartedelabasededatossinouna"ventana"ounfiltroqueseaplicaalamismacadavezqueseaccedealavista.
Enestesentidoesunarelaciónmás,ysepuedeoperarconella(siemprequesetenganlospermisosadecuados)coninserciones,borrados,etc.
Sepuedevercomounatablavirtualquetrabajasobrelastablasbase.
Lasventajasdelautilizacióndevistas,entreotras,seenumeranacontinuación:Proporcionanindependencialógica,yaquemodificacionesdelesquemalógicotalescomoaadiratributos,aadirnuevastablasoreestructurarelordendelascolumnasnolesafectan.
PermitequedistintosusuariosveanlamismainformacióndeformasdiferentesSonfiltrosquelimitanlacantidaddeinformaciónamanejarasóloaquellaquesenecesitarealmente.
Losdatosquenoseincluyenenlavistanosepuedenalterary,portanto,lasvistassonunmediodepreservarlaseguridaddelosdatos.
optimizacióndeconsultasYahemosdichoquelosLMDrelacionalessondeespecificaciónynoprocedurales.
Estoimplicaqueúnicamenteledecimosalsistemaquéinformaciónnecesitamosynocómoconseguirla.
Bajounlenguajedeprogramaciónclásico,podríamosafinarnuestrosalgoritmoshastaobtenerelmáseficientealahoraderecuperarlosdatos.
EnunSGBDrelacionallatareadebuscarelmétodomáseficientedeconsultacorreacargodeloptimizador.
Enlosotrosmodelosclásicos(jerárquicoyred)elusuarioeraelencargadodedefinirlanavegaciónatravésdelosregistrosdefinidoscomoestructuradedatos(enrealidadelprogramadeaplicaciónescritoenCOBOLuotrolenguajesimilar).
Enelmodelorelacionalesanavegaciónesautomáticaytransparenteparaelusuario.
Eloptimizadordeconsultaseselencargadodeplanificarlanavegaciónautomáticaatravésdelosdatosalmacenadosfísicamente.
Noolvidemosque,aunqueelusuario"ve"tablasúnicamente,losdatos,anivelinterno,tienenunaformatotalmentedistintayengeneralBD12006-200758desconocidaparaelusuariodelaBD.
ElSGBDdebeexplorareldispositivodealmacenamientohastaencontrarlainformaciónrequeriday,además,delaformamáseficienteposible.
Enestesentido,eloptimizadorhadedecidirqueestrategiasiguepararesolverlaconsulta,quesubconsultasrealizarprimero,queherramientasdelsistema(comopuedanserlosíndices)utilizar,etc.
Parataldecisiónhadetenerencuentalossiguientescondicionantes:quétablasestáninvolucradasenlaconsultaquétamaotienenquéíndiceshaydefinidosparaellas(enprincipiotodastendránclaveprimariaqueseimplementamedianteuníndice)cómoestádispuestalainformaciónfísicamentequéoperadoresseutilizanenlaconsultainformaciónestadísticaalmacenadaporelpropiosistemadiccionariodedatosUnSGBDimplementaeldiccionariodedatosmedianteloqueseconocecomocatálogodelaBD.
Eslametainformación(informaciónsobrelosdatosalmacenados)dondesedescribenlosdistintosesquemasdelaBD(lógico,externos,interno)ylascorrespondenciasentreellos.
Almacenadescriptoresdelosobjetosdeinterésparaelsistema:tablas,columnasysutipodedatos,índices,restriccionesdeclave,clavesajenas,estrategiasparaesasclavesajenas,permisos,vistas,…AbsolutamentetodoloreferentealaorganizacióndelaBDestáalmacenadoenelcatálogo.
Eloptimizador,porejemplo,seríaundelos"usuarios"habitualesdeldiccionariodedatos.
Unadelascaracterísticasmásimportantesdelcatálogoesqueestáalmacenadoenformadetablas,detalformaquesuaccesoesidénticoaldecualquiertablabasedenuestroesquemalógico.
III7.
conclusionesElmodelorelacionaleselmodelodedatosdeunagranpartedelosSGBDactuales.
Suestructurabásicaeslarelación,conceptomatemáticobasadoenlateoríadeconjuntosque,adaptadoconvenientementealmediofísicoenelquesevaautilizar,elordenador,recibeelnombredetabla.
Conlatablavamosasercapacesderepresentarlosconceptos,objetos,etc.
queserelacionanentresíparaconformarundeterminadosistemadeinformación.
Estatablasedefineenfuncióndesuscolumnas(atributosdelaclasedeobjetosrepresentada),dondecadamodelorelacional59unadeellasperteneceotomavaloresdeundominio(tipodedatos)concreto.
Laformadeconstruirodefinirunatablapasaportresmecanismosdeabstraccióngeneralesatodoslosmodelosdedatos:laclasificación,laagregaciónylageneralización.
Comonobastaconreflejarlosobjetosensí,sinoquenecesitamosvercomointeractuanunosconotros,debemosespecificarlasrestriccionessemánticasquelesafectan,tantoaellosmismoscomoclasesdeobjetoscomoasurelaciónconotrasclasesdeobjetos.
Entrelasrestriccionessemánticassoportadasporelmodeloestánlasdedominio,deidentificaciónylasdecorrespondenciaentreclasesdeobjetos,queincluyenlasdecardinalidad,dependenciadeidentificadorypropiedadesdecoberturadelageneralización.
Lasherramientasqueproporcionaelmodeloparaexpresarestasrestriccionessemánticassonlasclavescandidatas(primariayalternativas),clavesajenas,yatributosdevalornonulo.
Específicamentesobreclavesajenas,elSGBDdebeconocerlasestrategiasquedebenaplicarseenborradosyactualizacionesparamantenerlaintegridadreferencialdelaBD.
Losoperadoresquepermitencrearymanejarunabasededatossedefinenenloslenguajesdedefiniciónymanipulacióndedatosadecuados(queseveránmásadelante)cuyoreflejocomercialeselestándarSQL.
Porúltimo,comocaracterísticaspropiasdelosSGBDrelacionalessedescribenbrevementelasvistasyeloptimizadordeconsultas.
Lasprimerassirvenparadefinir"tablasvirtuales"queayudanalaseguridaddelsistemayelsegundoesunodelosprincipalesfactoresdeléxitodelmodeloporsutransparenciaparaelusuario.
BIBLIOGRAFA[CELMA2002][DATE2001]61IVLGEBRARELACIONALCoddpropusotreslenguajesdeespecificaciónparaelmodelorelacionalcomobaseteóricadecualquierlenguajequequisieracumplirconlosrequisitosformalesdelmodelo.
Estoslenguajesnopuedenserexplotadoscomercialmente,almenostalycomolosdefinióCodd,porqueadolecendefaltadeoperadores:carecendeoperadoresaritméticossimples(sumas,restas,etc.
),odemanipulacióndecadenasdecaracteres,porponerdosejemplos"escandalosos".
Elpropósitodeestoslenguajesnoeseldedefinirymanejarbasesdedatosrelaciones,tansóloconstituyenunadeclaracióndelosmínimosrequeridosparacualquierlenguajedemanipulacióndedatosquesequieraetiquetarasímismocomo"relacional".
Enotraspalabras,cualquierlenguajedemanipulaciónydefinicióndedatosenbasesdedatosrelacionaleshadeposeerlapotenciasuficientecomopara"hacer",comomínimo,loquepueden"hacer"loslenguajesdeCodd.
Elprimerodeellos,almenosporelordenenelquesevanaintroducirenestaasignatura,eselálgebrarelacional.
Recibeestenombreprecisamenteporsucarácteralgebraico:incluyeunconjuntodeoperadores(ocho,concretamente)cuyosoperandossonrelacionesyelresultadodelaoperaciónesotrarelación,delmismomodoquecuandosumamosdosenterosobtenemosotronúmeroentero.
Enprimerlugarsedefiniránunaseriedeconceptosnecesariosparadefinirlosoperadoresdelálgebrarelacionalypara,finalmente,trabajarconellos.
Acontinuaciónsedescribirán,unoporuno,losochooperadorespropuestosporCodd:Unión∪SeleccióndondeIntersección∩Proyección[]DiferenciaConcatenaciónNatural∞ProductoCartesiano*División÷62IV1.
Conceptosprevios.
Aldescribirlaspropiedadesdecadaoperadorsevanautilizarunaseriedetérminosquedebemosdefinirpreviamente.
Enprimerlugarsepresentaráunaadaptacióndelconceptoderelaciónmatemáticaenlaquesevuelveahacerusodelaordenacióndelascomponentesdeunatupla.
Elresto,sonexpresionesoreformulacionesdeconceptosyapresentesenladefinicióndelmodelo.
Losconceptosadefinirson:RelaciónEsquemaderelaciónNombresCualificadosdeAtributoAliasdeunarelaciónRelaciónNominadaRelaciónDerivadaRelacionesCompatiblesOperaciónconmutativaOperaciónasociativarelaciónElARhaceusodelordendelascomponentesdelastuplasparadefiniroperadoresypropiedadesdelosoperadores.
Enrealidad,setrataderetomarladefiniciónoriginaldelarelaciónmatemáticacomoelsubconjuntodeunproductocartesianodendominios,detalformaquelastuplasresultadodeeseproductocumplíanycumplenqueLastuplassonlistasdevalores(conjuntoordenado)talqueeli-ésimovalorperteneceali-ésimodominio.
Vamosacombinarladefiniciónanteriordetuplaconlaadaptaciónqueensumomentointrodujimosalarelaciónmatemáticaparaadecuarlaalobjetivofinalqueesunabasededatos.
Utilizaremosalmismotiempolosnombresdeatributosyelordendelascomponentesenunatupla:Elconjuntodenombresdeatributosesunconjuntoordenado.
Lastuplassonlistasdevalores(conjuntoordenado)talqueeli-ésimovalorperteneceali-ésimodominioasociadoali-ésimonombredeatributo.
Apartirdeahora,losoperadorespuedenutilizartantoelnombresimbólicodeunatributocomosuordendentrodelatupla.
álgebrarelacional63esquemaderelaciónEsladescripciónformaldelarelaciónconsusatributosydominiosasociados.
Enrealidadseaplicaúnicamentealasrelacionesnominadas,aquellasdescritasenelesquemalógicorelacional.
R(A1:D1,A2:D2,.
.
.
,An:Dn)donde:ReselnombredelarelaciónAieselnombredelatributoDieselnombredeldominioasociadoaAinombrescualificadosdeatributoEs,pordecirloasí,elnombrecompletodeunatributo,porejemploR.
Ai,elatributoAidelarelaciónR.
Suusoevitalaambigüedaddedosatributosendostablasdistintasconelmismonombre.
Engeneral,nosreferimosalosatributosporsunombresinespecificarlarelaciónalaquepertenecen.
Noobstante,eshabitualqueendistintasrelaciones,ysobretodoenlasrelacionesderivadas(losresultadosdeoperarconrelacionesnominadas),nospodamosencontrarnombresdeatributocoincidentesenrelacionesdistintas.
Laformadediferenciarunosdeotrosesutilizarlosnombrescualificados:"alumno.
nombre","asignatura.
nombre".
Endefinitiva,sepuedenutilizarindistintamente,siempreycuandonoseproduzcanambigüedades,lasdosformasyaconocidasdereferirseaunatributo:nombrecualificado:R.
Ainombrenocualificado:AialiasdeunarelaciónNombrealternativoparaunarelación.
DadaunarelaciónRsedefineunaliasmedianteladeclaración:definiraliasSparaREntonceslarelaciónpuedereferenciarsetantoporRcomoporS,ylosnombrescualificadosdeatributosR.
AioS.
Ai.
relaciónnominadaEstodarelacióndefinidaenelesquemalógicorelacional.
Enotraspalabras,lasqueconstituyennuestrabasededatos.
relaciónderivadaEsaquellaqueseobtienecomoresultadodeunaexpresióndellgebraRelacional.
BD12006-200764Unarelaciónderivadanotienenombrenialias.
Asípues,losnombresdelosatributosdeéstaseobtendránapartirdelosnombrescualificadosdeatributosdelasrelacionesoperando,ysiexisteambigüedadseutilizaránlosalias.
Lasreglasquerigenenlosoperadoresparalaasignacióndenombresalosatributosderelacionesderivadasseveránconcadaunodeellos.
relacionescompatiblesDosrelacionessoncompatiblessielgradodeambaseselmismoylosdominiosasociadosalosi-ésimosatributosdecadaunasoniguales.
R(A1:D1,A2:D2,.
.
.
,An:Dn)S(B1:E1,B2:E2,.
.
.
,Bm:Em)RySsoncompatiblessiysólosi:1)n=m2)iDi=Ei(1≤i≤n)Dichodeotraforma,elnúmerodeatributoshadeserelmismoenambasrelacionesy,además,losdominioshandeserlosmismosparaatributosdelamismaposición.
operaciónconmutativaUnoperaciónesconmutativa15sisecumplequeAB=BAoperaciónasociativaUnaoperaciónesasociativasisecumpleque(AB)C=A(BC)operadoresLosoperadoresdellgebraRelacional(bajoelpuntodevistadeCodd)sedividenendosgrupos:delateoríadeconjuntosrelacionalesUNININTERSECCINDIFERENCIAPRODUCTOCARTESIANOSELECCINPROYECCINDIVISINCONCATENACINNATURAL15Enladescripcióndelosoperadores,algunossedicequecumplenlapropiedadconmutativa,refiriéndonosexclusivamentealconjuntodetuplasdelarelaciónderivada,ynoalconjuntodeatributosdedicharelaciónresultado,cuyosnombrescualificadosdependendelordendelasrelacionesoperando.
álgebrarelacional65ComoelresultadodeunaexpresiónenlgebraRelacionalesotrarelación,éstapuedeparticiparcomooperandoasuvez,permitiendolaconstruccióndeexpresionesanidadas.
RS=D1D1O=D2RSO=D2Laúnicaregladeprecedenciaentreoperadoreseslautilizacióndeparéntesis,encualquiercasolasexpresionesseevalúandeizquierdaaderechadetalformaqueelresultadodeunaoperacióneseloperandodelasiguienteoperaciónasuderecha:RS=D1OD1=D2O(RS)=D2Otraclasificaciónsebasaenlapropiadefinicióndelosoperadores:Sonoperadoresbásicos(oprimitivas)launión,diferencia,productocartesiano,selecciónyproyección,yoperadoresderivadoslaintersección,ladivisiónylaconcatenaciónnaturalyasedefinenapartirdelacombinacióndevariosoperadoresbásicos.
Dichodeotraforma,loscincooperadoresbásicosdefinenlapotenciaexpresivadellenguaje,conellossepuedenrealizartodaslasoperacionesquepermiteelálgebrarelacional,mientrasquelostresderivadossepuedenvercomo"atajos"o"resúmenes"devariasoperacionesbásicasreunidasenunúnicooperador.
IV2.
definicióninformaldelosoperadoresEnprimerlugar,sepretendedarunavisióndecómooperanyqueresultadoobtienenlosoperadoresantesmencionados.
Posteriormente,sedaráladefiniciónformaldetodoselloscomoreferenciadellenguaje.
Cuandotrabajamosconunabasededatosrelacional,sidemanipulacióndedatosestamoshablando,larecuperacióndeinformacióndesdelastablasesunprocesohabitualynecesario.
Enálgebrarelacional,siqueremosrecuperarelcontenidocompletodeunarelación,porejemplotodoslosalumnosalmacenadosenmibasededatos,unavezidentificadalatabladelaqueextraerlosdatos,latablaalumno,laevaluacióndelnombredelarelaciónnosdevuelvetodassusfilas:Alumnoalumnonombredirección234LUCAc/A,3321JUANc/C,33221LUISAc/E,333select*fromalumnoBD12006-200766SiaunintérpretedeARteóricoleordenamossimplemente"alumno",elresultadoeslatablade3filasanterior.
Porrazonesdeclaridadlosejemplosincluyenlaoperación,elesquemadelarelaciónresultadoylasfilasobtenidas,segúnsedetallaenelgráficosiguiente.
Apartirdeahora,losejemplosmuestranelcontenidodelastablasutilizadasyelresultadodecadaunodelosoperadores.
TambiénsedaránlasexpresionescorrespondientesenSQLcomoayudaparalacomprensióndecadaoperación.
selecciónEnmuchasocasionessólonosinteresanalgunosindividuosdeunarelación,aquellosqueposeenunasdeterminadascaracterísticas:"clientesdelaprovinciadeAlicante","artículosquecuestanmasde500euros".
Eloperadorselección("dondecondición")recuperatuplasdeunarelaciónquecumplenunadeterminadacondición.
Alumnoalumnonombredirección577YNIFERc/C,33234LUCAc/A,3321JUANc/C,33221LUISAc/E,333Alumnodondedirección='c/C,33'alumnonombredirección577YNIFERc/C,33321JUANc/C,33select*fromalumnowheredirección='c/C,33'proyecciónSilaselecciónrecuperafilas,laproyección([columna(s)])recuperaatributos.
Alumnoalumnonombredirección577YNIFERc/C,33operaciónquesedeseaevaluarAlumnoalumnonombredirección234LUCAc/A,3321JUANc/C,33221LUISAc/E,333esquemadelatablaresultadodeevaluardichaoperaciónfilasobtenidasenlaoperaciónálgebrarelacional67234LUCAc/A,3321JUANc/C,33221LUISAc/E,333Alumno[alumno,nombre]alumnonombre577YNIFER234LUCA321JUAN221LUISAselectalumno,nombrefromalumnoLaselecciónmepermiterecuperaraquellosindividuosquemeinteresanylaproyeccióneliminaaquellosdatosdelosindividuosquenonecesito.
Comoyasehadicho,sepuedenrealizarvariasoperacionesconsecutivas,comosemuestraacontinuación:Alumnodondedirección='c/C,33'[alumno,nombre]alumnonombre577YNIFER321JUANselectalumno,nombrefromalumnowheredirección='c/C,33'Laproyecciónpodríaeliminarlaolascolumnasdefinidascomoclavecandidataypodríadarlugaraduplicadosentrelasfilas(omásbiennuestrapercepcióndelarelaciónnospuedeinducirapensarquesepuedanmostrarfilasiguales).
Comoelresultadodeestaoperaciónestambiénunatabla,éstaestásujetaalasmismasrestriccionesdelmodeloquecualquierotra.
SepuedepensarqueelARrealizalaproyecciónendospasos:laproyeccióncomotalyunaeliminacióndeduplicados,siesqueseproducen.
Siproyectáramossobrelacolumnadirección,latablaalumnocontienedosfilasconlosmismosvalores.
Sinembargo,elresultadodetaloperacióneselsiguiente:Alumno[dirección]direcciónc/C,33c/A,3c/E,333selectdirección16fromalumno16Enrealidad,eshabitualquelosSGBDrelacionalesysuimplementacióndeSQL,anteexpresionescomoestadevuelvanfilasduplicadas.
Elmodificadordistinctrealizaesesegundopasoalquehemoshechoreferenciaenelálgebrarelacional.
Apartirdeahora,aunquenoaparezcaenlosejemplos,seentenderáquetodaslasórdenesselectincluyenestemodificador:"selectdistinctdirecciónfromalumnowheredirección='c/C,33'"BD12006-200768Obviamente,estoesaplicableacualquieroperaciónquehagamospuestoqueelresultadosiemprevaaserunatabladerivada.
uniónLaunióndedosrelacionesdacomoresultadootrarelaciónquecontienelastuplasdelasdos.
Comoenunarelaciónnoexistentuplasduplicadas(porserunconjunto,porestardefinidaporunproductocartesiano),seríamásexactodescribirlaunióndedosrelacionesAyBcomootrarelaciónCquecontienelastuplasdeAquenoestánenB,lastuplasdeBquenoestánenA,ylastuplasqueestánenAyBalavez.
Alumnoalumnonombredirección234LUCAc/A,3321JUANc/C,33221LUISAc/E,333Profesorprofesornombredirección522JOSc/F,32778EVAc/F,51221LUISAc/E,333Alumno∪Profesoralumnonombredirección234LUCAc/A,3321JUANc/C,33221LUISAc/E,333522JOSc/F,32778EVAc/F,51select*fromalumnounionselect*fromprofesorLauniónsólosepuederealizarsiAyBsoncompatiblesy,evidentemente,esconmutativayasociativa(verlasdefinicionesanteriores)álgebrarelacional69intersecciónLainterseccióndedosrelacionesdacomoresultadootrarelaciónquecontienelastuplascomunesalasdosprimeras.
Alumnoalumnonombredirección234LUCAc/A,3321JUANc/C,33221LUISAc/E,333Profesorprofesornombredirección522JOSc/F,32778EVAc/F,51221LUISAc/E,333Alumno∩Profesoralumnonombredirección221LUISAc/E,333select*fromalumnointersectselect*fromprofesorAligualquelaunión,laintersecciónsólosepuederealizarsiAyBsoncompatiblesyesconmutativayasociativa.
diferenciaLadiferenciadedosrelacionessedefinecomoaquellastuplasqueestánenlaprimeraperonoenlasegunda.
Nótesequeesteoperadoryanoesconmutativo,importaelordendelosoperandos.
BD12006-200770Alumnoalumnonombredirección234LUCAc/A,3321JUANc/C,33221LUISAc/E,333Profesorprofesornombredirección522JOSc/F,32778EVAc/F,51221LUISAc/E,333Alumno-Profesoralumnonombredirección234LUCAc/A,3321JUANc/C,33select*fromalumnominusselect*fromprofesorLadiferenciasólosepuederealizarsiAyBsoncompatibles.
productocartesianoEsteoperadorseutilizaparagenerartodaslasposiblescombinacionesdelastuplasdeunarelacióncontodasycadaunadelastuplasdeotrarelación;seobtienentodaslascombinacionesposiblesdefilasentredostablas.
Alumnoalumnonombredirección234LUCAc/A,3321JUANc/C,33221LUISAc/E,333Profesorprofesornombredirección522JOSc/F,32778EVAc/F,51221LUISAc/E,333álgebrarelacional71Alumno*Profesoralumnonombredirecciónprofesornombredirección234LUCAc/A,3522JOSc/F,32234LUCAc/A,3778EVAc/F,51234LUCAc/A,3221LUISAc/E,333321JUANc/C,33522JOSc/F,32321JUANc/C,33778EVAc/F,51321JUANc/C,33221LUISAc/E,333221LUISAc/E,333522JOSc/F,32221LUISAc/E,333778EVAc/F,51221LUISAc/E,333221LUISAc/E,333select*fromalumno,profesorconcatenaciónnaturalEsteoperadorseutilizaparacombinarinformacióndedostablasquecompartenunatributocomún.
Enestecasoquedarámásclarounejemploenelquelabasededatosreflejeunarelaciónentre,porejemplo,profesoresydepartamentosalosqueestánadscritos.
Larelaciónentrelosdosserepresentaporunacolumnaenlatablaprofesorqueindicaelcódigodedepartamentoenelquetrabaja.
Laconcatenaciónnaturalutilizalosatributosquetienenelmismonombrey,porsupuesto,estándefinidossobreelmismodominio.
ProfesorDepartamentoprofesornombredireccióncodcoddepartamento522JOSc/F,32LSILSILENGUAJES778EVAc/F,51LSICCIACIENCIAS221LUISAc/E,333FIFIFILOLOGAProfesor∞Departamentoprofesornombredireccióncoddepartamento522JOSc/F,32LSILENGUAJES778EVAc/F,51LSILENGUAJES221LUISAc/E,333FIFILOLOGAselectp.
*,d.
departamentofromprofesorp,departamentodwherep.
cod=d.
cod17Sinoexisten2filas,unaencadatablaconesevaloridénticoquelasune,elresultadodelaconcatenaciónesvacío(nodevuelveningunatupla).
Ennuestroejemploseríaelcasodequeningúnprofesortrabajaraenningúndepartamento(silacolumnaProfesor.
codalmacenaranulosparatodaslasfilasenundeterminadoestadodelabasededatos).
Elproblemasepresentacuandomásdeunacolumnacompartetantonombrecomodominio:eloperadorintentaráunirlasfilasquecompartenlosmismosvaloresentodosesosatributos.
Cambiandounpocoelejemploanterior,17Eloperadorconcatenaciónnaturalllevaimplícitalacondicióndelacláusulawhere.
Enrealidad,estaexpresiónenSQLesladescomposiciónenprimitivasdelaconcatenaciónnaturalqueseverámásadelante:unproductocartesianomásunaselecciónyunaproyección.
BD12006-200772podemospensarqueelesquemadeDepartamentotienecomonombredelacolumnadedescripciónnombreenvezdedepartamento.
Laconcatenaciónnaturalsólodevolveráaquellosprofesoresydepartamentosquecumplanqueelprofesortrabajaenélyqueambostienenelmismonombre.
ProfesorDepartamentoprofesornombredireccióncodcodnombre522LENGUAJESc/F,32LSILSILENGUAJES778EVAc/F,51LSICCIACIENCIAS221LUISAc/E,333FIFIFILOLOGAProfesor∞Departamentoprofesornombredireccióncod522LENGUAJESc/F,32LSIselectp.
*,d.
departamentofromprofesorp,departamentodwherep.
cod=d.
codandp.
nombre=d.
nombreCuandonosedeseaestecomportamiento,siqueremosquelaunióndefilasserealiceúnicamenteporlascolumnasetiquetadascomocod,estamosobligadosautilizarunacombinacióndeotrosoperadores.
Dehecho,laconcatenaciónnaturalesunodelosoperadoresderivados,ysepuedeexpresarenfuncióndelosoperadoresbásicosselección,proyecciónyproductocartesiano.
divisiónEsteoperadoreseldeaplicaciónmenoshabitual,seutilizaparaconsultasdeltipo"alumnosmatriculadosentodaslasasignaturas".
Es,además,eloperadorconmásrestriccionesalahoradeconstruirunaexpresiónenAR.
Eldividendodebetenermásatributosqueeldivisor,dividendoydivisorhandecompartirunoovariosatributos,éstoshandeserlosúltimosdeldividendoylosúnicosdeldivisoryestarenelmismoorden.
Losatributosnocomunessonlainformaciónqueseobtienedeladivisión.
Enlapráctica,seanecesarioono,sesueleutilizarlaproyecciónparaasegurarquesecumplentodasestasreglas.
Ennuestroejemplo,"alumnosmatriculadosentodaslasasignaturas",usamoslatablamatriculadoqueeslaquerepresentaquéalumnosestánmatriculadosenquéasignaturas.
Todaslaasignaturasson,evidentemente,lasasignaturasalmacenadasenlatablaasignatura18:elatributocomúnaambasrelacioneses"asignatura",ylainformaciónquequeremosobteneres"alumno"(quedespuéssepuedeconcatenarconlatablaAlumnoparaobtenersu"nombre"y"dirección").
18Enrealidad,debemosidentificarese"todos"alquéserefiere,aquétablayaquédatos,puedenosertrivial:"alumnosmatriculadosentodaslasasignaturasdemenosde6créditos",porejemplo.
álgebrarelacional73AlumnoAsignaturaalumnonombredirecciónasignaturanombre234LUCAc/A,3BD1Bases1321JUANc/C,33BD2Bases2221LUISAc/E,333FP2Prog2Matriculadoalumnoasignatura234BD1234BD2234FP2321BD1321FP2Matriculado[alumno,asignatura]%(Asignatura[asignatura])selectalumnofrommatriculadomwherenotexists(select*fromasignaturaawherenotexists(select*frommatriculadom2wherem2.
alumno=m.
alumnoandm2.
asignatura=a.
asignatura))19Larazóndequeladivisióntengaunasreglasdecomposicióntanestrictasestáenqueésteesotrodelosoperadoresderivados,yaquesepuederealizarlamismaoperaciónconunacombinacióndediferenciasyproyecciones.
IV2.
1.
elproblemadelosnombresdelosatributosenlasrelacionesderivadasCuandooperamosenARdedostablasobtenemosunaterceratablaresultado.
Estatablacumpletodaslasrestriccionesdelmodelorelacionaly,portanto,tieneunesquemaderelaciónqueesgeneradoautomáticamente.
Dichodeotraforma,lasrelacionesderivadastambiéntienennombreparasusatributosperoestosnombresseasignandirectamentedelosoperandosysegúneloperadorutilizadoyelordendetalesoperandos.
Porejemplo,launión,intersecciónydiferenciadancomoresultadounatablaquetienelosmismosnombresdecolumnaquelaprimeratablaoperando.
Alumno(alumno,nombre,dirección)Profesor(profesor,nombre,dirección)Alumno∪ProfesorT(Alumno.
alumno,Alumno.
nombre,Alumno.
dirección)19Laexpresión"seleccionaraquellosalumnosqueestánmatriculadosentodaslasasignaturas"sepuederesolverenSQLsicambiamos"unpoco"elenunciado:"seleccionaraquellosalumnosquecumplenquenoexisteningunaasignaturaenlaquenoesténmatriculados"alumno234BD12006-200774Peroparalaconcatenaciónnaturallosnombresseasignandediferenteforma:todoslosnombresdeatributodelaprimerarelaciónmáslosno"comunes"delasegunda.
Profesor(profesor,nombre,dirección,cod)Departamento(cod,descripción)Profesor∞DepartamentoT(Profesor.
profesor,Profesor.
nombre,Profesor.
dirección,Profesor.
cod,Departamento.
descripción)Elproductocartesianoproducetablascontodoslosatributosdelasdosrelacionesoperando,perorespetandoelordenenquesehaoperado:Alumno(alumno,nombre,dirección)Profesor(profesor,nombre,dirección)Alumno*ProfesorT(Alumno.
alumno,Alumno.
nombre,Alumno.
dirección,Profesor.
profesor,Profesor.
nombre,Profesor.
dirección)Ladivisiónproduceunatablaconlosatributosnocomunesdelaprimerarelación:Matriculado[alumno,asignatura]%(Asignatura[asignatura])T(Matriculado.
alumno)Finalmente,laselecciónylaproyección,alseroperadoresconunúnicooperando,latablaresultadotienetodos(siesunaselección)oalgunos(siesunaproyección)delosatributosdelarelaciónoperando.
Alumnodondedirección='c/C,33'T(Alumno.
alumno,Alumno.
nombre,Alumno.
dirección)Alumno[dirección]T(Alumno.
dirección)EsfundamentaltenerclarocualessonlosatributosqueresultandecadaoperaciónyaquelasexpresionesdelARsonunasecuenciadeoperacionescuyoresultadoeseloperandodelasiguiente.
Laevaluacióndelasexpresionesserealizadeizquierdaaderechasalvosiseutilizanparéntesisquealteranelordendeevaluación.
Lassiguientesexpresionessoncorrectas:Alumno*Profesor[Alumno.
nombre]Matriculado[alumno,asignatura]%(Asignatura[asignatura])Alumnodondedirección='c/C,33'[alumno,nombre]Perolasmostradasacontinuaciónsonincorrectas:Alumno*Profesor[nombre]haydoscolumnas"nombre"enlarelaciónderivada.
Matriculado[alumno,asignatura]%Asignatura[asignatura]álgebrarelacional75alevaluardeizquierdaaderechalaaplicacióndelosoperadoresseríaproyección,divisióny,finalmente,proyección.
LosatributosdeldivisorseríantodoslosdeAsignatura,ynosonconsistentesconlasrestriccionesdeloperador.
Antesdedividir,sedeberíaproyectarsobreAsignatura.
Alumno[alumno,nombre]dondedirección='c/C,33'siproyectamosantesdeseleccionarestamoseliminandoprecisamentelacolumnadirecciónqueeslaqueutilizalaselecciónenlacondicióndefiltro.
IV2.
2.
operacionesprimitivas.
Lasúnicasoperacionesconsideradascomoprimitivassonlaselección,proyección,unión,productocartesiano,ydiferencia.
Así,concatenaciónnatural,intersecciónydivisiónsepuedenexpresarenfuncióndelasprimitivasmencionadasantes:R∩S=R-(R-S)R∞S=((R*S)DONDER.
B1=S.
B1y.
.
.
yR.
Bm=S.
Bm)[R.
A1,.
.
.
,R.
An,R.
B1,.
.
.
,R.
Bm,S.
C1,.
.
.
,S.
CP]dondelosBisonlosatributoscomunesalasdosrelaciones,losAilosnocomunesdeRylosCilosnocomunesdeS.
R÷S=R[B]-((R[B]*S)-R)[B]dondeBeselconjuntodeatributosnocomunesdeR.
IV2.
3.
usodelaliasdeunarelaciónSepuededefinirunaliasparaunarelaciónencualquierocasiónperosuusoestámásjustificadoporoperacionescomolasiguienteMatriculado*MatriculadoUnproductodeunatablaporsimismaesavecesnecesarioparaciertasconsultasdeconteosimple("alumnosquesehanmatriculadodealmenos2asignaturas").
Elproblemaresideenqueelesquemadelarelaciónderivadasería:T(Matriculado.
alumno,Matriculado.
asignatura,Matriculado.
alumno,Matriculado.
asignatura)Evidentemente,enunatablanopuedenexistirdoscolumnasdistintasconelmismonombre(aunquesíendostablasdistintas).
LasoluciónconsisteenutilizarunoodosaliasparalarelaciónMatriculado:definiraliasMparaMatriculadoMatriculado*MT(Matriculado.
alumno,Matriculado.
asignatura,BD12006-200776M.
alumno,M.
asignatura)IV3.
ResumendelosoperadoresdellgebraRelacionalSupongamosqueRySsondosrelaciones.
selecciónSeleccionaaquellastuplasquecumplenunadeterminadacondiciónlógica.
Losnombresdelosatributosdelarelaciónderivadasonlosmismosquelosdelarelaciónoperando.
proyecciónEliminalosatributosnoespecificados.
LosnombresdeatributosonlosdelalistadeparámetrosproductocartesianoEslacombinacióndetodasycadaunadelastuplasdelaprimerarelacióncontodasycadaunadelasdelasegunda.
Esasociativoyconmutativo,sinotenemosencuentaelnombreyelordendelosatributos.
Losnombresdeatributoson,enesteorden,todoslosdeRytodoslosdeS.
concatenaciónnaturalSecombinanaquellastuplasdeRyScuyosvalorescoincidenparaungrupodeatributoscomunes.
Poratributoscomunesentendemosaquellosquetienenelmismonombreyestándefinidosenelmismodominio.
Esasociativoyconmutativo,sinotenemosencuentaelnombreyelordendelosatributos.
Losnombresdeatributoson,enesteorden,todoslosdeRytodoslosnocomunesdeS.
diferenciaTodaslastuplasqueestánenRperonoenS.
RyShandesercompatibles.
LosnombresdeatributosontodoslosdeR.
uniónTodaslastuplasqueestánenRoenS(oenambas).
RyShandesercompatibles.
LosnombresdeatributosontodoslosdeR.
intersecciónTodaslastuplasqueestánenRyenSalavez.
RyShandesercompatibles.
LosnombresdeatributosontodoslosdeR.
álgebrarelacional77divisiónSonlastuplasdeRqueestáncombinadasqueestáncombinadascontodaslasdeS.
EnestecasosedaquelosatributosdeSseencuentrantambiénenRperoordenadosdeunamaneraespecial:a)elordendelosatributoscomunesesigualenRyenS,yademás,b)enRsonlosúltimos(si"leemos"elesquemadeRdeizquierdaaderecha)LosnombresdeatributosontodoslosnocomunesdeRIV4.
ejemplosElesquemaquesemuestraacontinuacióneselquesevaautilizarpararesolvertodaslasconsultasqueseplanteanamododeejemplo.
Seespecificanlosdominiosasociadosacadaatributopuestoquelascomparacionesentreatributossólosepuedenrealizarsisusdominiossonidénticos.
ASIGNATURAS(cod_asg:dCod,nombre:dNom,curso:dCur,t:dHora,p:dHora,l:dHora)ALUMNOS(exp:dExp,nombre:dNom,dir:dDir,ciudad:dCiudad,estudios:dEstudios)NOTAS(exp:dExp,cod_asg:dCod,nota:dNota)20asignaturasalumnoscod_asgnombrecursoexpnombreestudiosBDbasesdedatos31pepecouEINestructuras22anacouAFOanálisis23luisafpFPprogramación14juancou5pedrocou6pilarcounotasexpcod_asgnota1BD71EIN51FP51AFO62FP52EIN63FP120Nótesequenosehadefinidoningunaclavecandidataniningunaclaveajena.
ElAR,nohaceusodelasdefinicionesdeclavecandidata,claveajenaovalornonulo.
LosoperadoresdeARsebasanencomparacionesdevaloresy,portanto,lainformaciónnecesariaysuficienteeslamostradaenesteesquema.
Poreso,clavesajenas,sisedefinen,yclavescandidatas,definidasobligatoriamente,sonaquímeramenteunainformaciónútilalahoradeescribirunaexpresiónconcreta.
Encondicionesnormaleselesquemadebasededatosseráconformealmodelorelacional,yesquemasdeestetipo,incompletosyerróneossegúnelmodelorelacional,nosevolveránaproponer.
BD12006-2007781)Nombredelosalumnosmatriculadosentodaslasasignaturasde2.
Puestoqueesunrequerimientodeltipo"unosquehacenalgocontodoslosotros",esconbastanteprobabilidadunadivisión.
Nuestroprimerproblemaesdecidirquiénhacededividendoyquiéndedivisor:dividendo:"alumnosquesehanmatriculadode.
.
.
"divisor:"asignaturasdesegundo"Así,lastablasautilizarson:dividendo:NOTASdivisor:ASIGNATURASdondecurso=2Unavezidentificadoslosdatosconlosquevamosatrabajar,debemos"arreglar"lasexpresionesparaquecumplanlasrestriccionesdeladivisión:-dividendoydivisorhandeteneratributoscomunes,esdecir,conelmismonombreydominioasociado-esosatributoshandeserlosúnicosdeldivisor,y-debenestarenelmismoordenendividendoydivisor,y-debenserlosúltimosdeldividendoDeestaformalosatributosnocomunesdeldividendovanaconformarlatabladerivadadelaoperación.
dividendo:NOTAS[exp,cod_asg]divisor:ASIGNATURASdondecurso=2[cod_asg]Sólofaltaunirlasdosexpresionesconeloperadordedivisión.
ComonosehaestablecidoningúnordendeprecedenciaentrelosoperadoresdelAR,lasexpresionesseevalúandeizquierdaaderechaexceptosiseutilizanlosparéntesis,ennuestrocasopara"adelantar"laproyeccióndeldivisoryasegurarlaconsistenciadeladivisión.
NOTAS[exp,cod_asg]÷(ASIGNATURASdondecurso=2[cod_asg])expcod_asg÷cod_asg=NOTAS.
exp1BDEIN11EINAFO1FP1AFO2FP2EIN3FPElresultadosontodoslosnúmerosdeexpedientedeaquellosalumnosmatriculadosentodosegundo.
Siseconcatenaconalumnospodemossaberelnombredeesosalumnos.
álgebrarelacional79NOTAS[exp,cod_asg]÷(ASIGNATURASdondecurso=2[cod_asg])∞ALUMNOS[nombre]2)Nombredelosalumnosquesólosehayanmatriculadodeasignaturasde1.
Lasconsultasqueserefierenaunsubconjuntodatosexclusivamentesuelenexpresarsemediantelapalabra"sólo"o"solamente".
Estoquieredecirquenobastasimplementeconqueunacondiciónsecumplaparaesesubconjuntosinoquesedebecumplirúnicamenteparaél.
Ennuestrocaso,noeslomismorecuperarlos"alumnosquesehanmatriculadodeasignaturasdeprimero"quelos"alumnosquesehanmatriculadoúnicamentedeasignaturasdeprimero".
Enelprimercasoseincluyenlosalumnosque,apartedeteneralgunaasignaturadeprimero,tambiénpuedentenerasignaturasdeotroscursos.
Lasiguienteexpresiónobtieneelnúmerodeexpedienteyelnombredeesosalumnos:ALUMNOS[exp,nombre]∞NOTAS∞(ASIGNATURASdondecurso=1)[cod_asg])Enlaexpresiónanteriorsehatenidocuidadodeproyectarprimeroelresultadodelaselecciónsobreasignaturasparaevitarquelaconcatenaciónseproduzcatambiénpornombredealumnoydeasignatura(recuperaríamosalumnosquesellamaranigualquealgunaasignaturadeprimercurso)CómoobtenerlosalumnosquesólosehanmatriculadodealgunaasignaturadeprimeroDebemospensarenconjuntosycambiarunpocolaconsulta,loquequeremosobtenersonalumnosquenosehanmatriculadodeotrasasignaturas:"alumnosquesehanmatriculadodealgunaasignaturamenoslosalumnosquesehanmatriculadodeasignaturasquenosondeprimero".
alumnosmatriculadosdealgunaasignaturaNOTAS[exp]alumnosmatriculadosdealgunaasignaturaquenoesdeprimeroASIGNATURASdondecurso≠1∞NOTAS[exp]Asíconstruidoslosdosconjuntossólofaltahacerlaresta,nuevamenteutilizandolosparéntesisparaasegurarquelasdossubexpresionesgeneranrelacionescompatibles:NOTAS[exp]–(ASIGNATURASdondecurso≠1∞NOTAS[exp])ComonospedíanelnombredelosalumnosquecumplíanestacondiciónconcatenamosconalumnoparaobtenerlosnombresyyatenemoslaexpresióncompletaNOTAS[exp]–(ASIGNATURASdondecurso≠1∞NOTAS[exp])∞alumnos[nombre]BD12006-200780NótesequehemosutilizadolatablaNOTASynoALUMNOSparalaresta.
Lasiguienteexpresióndaríacomoresultado"alumnosquesehanmatriculadosólodeasignaturasdeprimeroodeningunaasignatura":ALUMNOS[exp]–(ASIGNATURASdondecurso≠1∞NOTAS[exp])3)Númerodeexpedienteynombredelosalumnosquehanaprobadotodoprimeroyestánmatriculadosenalgunadetercero.
Aquíel"truco"consisteendividirlaconsultaenvariasconsultasmássencillas:"alumnosquehanaprobadotodoprimero"y"alumnosmatriculadosenalgunadetercero".
Unavezquehayamosresueltoestassubconsultassólotenemosquerealizarlaintersecciónparacumplirconlaconjuncióndecondiciones.
AlumnosmatriculadosenalgunaasignaturadetercercursoASIGNATURASdondecurso=3∞NOTAS[exp]AlumnosquehanaprobadotodoprimeroEstamosanteunadivisiónenlaqueeldividendoson"losalumnosquehanaprobado.
.
.
"yeldivisor".
.
.
todaslasasignaturasdeprimero"NOTASdondenota≥5[exp,cod_asg]÷(ASIGNATURASdondecurso=1[cod_asg])Comolasrelacionesderivadasdelasdosexpresionesanterioressoncompatiblespodemoscombinarlasconeloperadorintersecciónyconcatenar,finalmente,conalumnoparaobtenerelnombre(poniendoespecialcuidadoconlosparéntesis):ASIGNATURASdondecurso=3∞NOTAS[exp]∩(NOTASdondenota≥5[exp,cod_asg]÷(ASIGNATURASdondecurso=1[cod_asg]))∞ALUMNOS[exp,nombre]4)Nombredelosalumnosquesólohanaprobadounaasignatura.
EnARsepuedenhacercuentassencillas(seríamáscorrectodecirque"contar"enARresultatrabajoso)utilizandoelproductocartesianoyelordendelosatributosdelarelaciónderivada.
SupongamosquehallamoselproductocartesianodeNOTASporsimismadefiniraliasN1paraNOTASdefiniraliasN2paraNOTAS21N1*N221Conunúnicoaliasessuficienteparadiferenciarlosnombresdeatributodecadaunodelosoperandosperosehahechoasíporclaridad.
álgebrarelacional81Elproductoobtienetodoslosposiblesparesdenotascomosemuestraenlatablaqueacompaaaestaconsulta.
Detodoslosparesnosinteresanaquellosqueserefierenalmismoalumnoperoaasignaturasdistintas.
N1*N2donde(N1.
exp=N2.
expyN1.
cod_asigN2.
cod_asig)Tengamosclaroquelatablaresultadocontienefilasquecontienendosnúmerosdeexpedienteiguales,doscódigosdeasignaturadiferentes.
Yasólonosfaltapreguntarsihaaprobadolasdosparaconocercualessonlosalumnosquehanaprobadomásdeunaasignatura:N1*N2donde(N1.
exp=N2.
expyN1.
cod_asigN2.
cod_asigyN1.
nota>=5yN2.
nota>=5)[N1.
exp]Siestosalumnoslosrestamosdelosquehanaprobadoalgunaasignaturatendremosaquellosalumnosquesólohanaprobadounaúnicaasignatura:NOTASdondenota>=5[exp]-(N1*N2donde(N1.
exp=N2.
expyN1.
cod_asigN2.
cod_asigyN1.
nota>=5yN2.
nota>=5)[N1.
exp])Concatenandoconlatablaalumnosobtenemoselnombredeesosalumnosylaexpresióncompletasería:definiraliasN1paraNOTASdefiniraliasN2paraNOTASNOTASdondenota>=5[exp]-(N1*N2donde(N1.
exp=N2.
expyN1.
cod_asigN2.
cod_asigyN1.
nota>=5yN2.
nota>=5)[N1.
exp])∞Alumnos[nombre]Conlosdatosdelejemploqueestamosmanejandolatablaresultadoseríavacíapuestoquenohayalumnosquecumplanlacondición(haberaprobadoalgoysólounaasignatura)BD12006-200782productocartesianodeNOTASporsimismayfilasdondeestálainformacióndelosalumnosquehanaprobadomásdeunaasignatura;proyectandoporN1.
exp(oporN2.
exp)obtenemosesosalumnos.
N1.
expN1.
cod_asgN1.
notaN2.
expN2.
cod_asgN2.
nota1BD71BD71BD71EIN51BD71FP51BD71AFO61BD72FP51BD72EIN61BD73FP11EIN51BD71EIN51EIN51EIN51FP51EIN51AFO61EIN52FP51EIN52EIN61EIN53FP11FP51BD71FP51EIN51FP51FP51FP51AFO61FP52FP51FP52EIN61FP53FP11AFO61BD71AFO61EIN51AFO61FP51AFO61AFO61AFO62FP51AFO62EIN61AFO63FP12FP51BD72FP51EIN52FP51FP52FP51AFO62FP52FP52FP52EIN62FP53FP12EIN61BD72EIN61EIN52EIN61FP52EIN61AFO62EIN62FP52EIN62EIN62EIN63FP13FP11BD73FP11EIN53FP11FP53FP11AFO63FP12FP53FP12EIN63FP13FP1álgebrarelacional83Algunosconsejos.
Lassiguientesafirmacionesnotienenelcarácterdeverdadesabsolutassinoquesonguíasque,enfuncióndelrequerimientoaresolver,puedenservirpara"intuir"lasoluciónfinal.
Laconcatenaciónseusaparaobtenerunaocurrenciaquecumpleunacondiciónalgunavez,oparaobtenerdatosrelacionados.
Ladiferenciaseutilizaenenunciadosdeltipo".
.
.
sólo.
.
.
",oparaeliminarocurrenciasquenocumplenunacondición.
Ladivisiónenenunciadosdeltipo".
.
.
todos.
.
.
"Laintersecciónenenunciadoscondoscondicionescomplejassobreunmismoconcepto:".
.
.
c()yc(paracondicionessencillassuelesersuficienteconunaselección)Launión:".
.
.
c()oc().
.
.
"Elproductocartesianoencomparacionesdetuplasdeunarelaciónconotrastuplasdelamismarelaciónparaobtener"primeros"o"últimos".
Tambiéncuandolaconcatenaciónnaturalnosepuederealizarporquehaymásatributoscomunesdelosdeseadosoportenerdiferentesnombres.
IV5.
ReferenciaAcontinuaciónsedetallanlasdefinicionesformalesdelosoperadoresantesdescritosysuspropiedades.
SeanR(A1:D1,A2:D2,.
.
.
,An:Dn)yS(B1:E1,B2:E2,.
.
.
,Bm:Em)dosesquemasderelación.
productocartesianooperacióndefiniciónatributosdelarelaciónderivadaR*SR*S={t|t=rsyr∈Rs∈S}R.
A1,R.
A2,.
.
.
,R.
An,S.
B1,S.
B2,.
.
,S.
BmproyecciónoperacióndefiniciónatributosdelarelaciónderivadaR[B]SeaB={B1=Ao,B2=Ap,.
.
.
,Bk=Aq}unalistadenombresdeatributosdeRR[B]={t|t=yr∈RquecumplequeviesigualalvalordeBienr,i=1,2,.
.
.
k}R.
Ao,R.
Ap,.
.
.
,R.
AqBD12006-200784selecciónoperacióndefiniciónatributosdelarelaciónderivadaRDONDEf(t)Seaf(t)esunaexpresiónlógicasobrealgunootodoslosatributosdeRRDONDEf(t)={t|t∈R,f(t)=cierto}R.
A1,R.
A2,.
.
.
,R.
Anconstruccióndef(t)Seaαunoperadordecomparación:≥,=,≠.
ConectivaslógicasY,O,NOFórmulasbienformadas(FBF):AαaesunaFBFdondei(A=R.
Aiya∈Di)AαBesunaFBFdondei(A=R.
Aiyj(B=S.
BjyDi=Ej)SifygsonFBFentoncesfYgyfOgtambiénloson.
SifesunaFBFentoncestambiénloson(f)yNOf.
NingunafórmulaquenoseconstruyasegúnlasreglasanterioresesunaFBF.
Evaluacióndef(t)Dadat∈R,f(t)esciertaparaesatuplasialsustituirenfcadanombredeatributoporsucorrespondientevalorent,fseevalúaacierto.
Ordendeprecedenciadelosoperadores:()NOY,OdiferenciaoperacióndefiniciónatributosdelarelaciónderivadaR-SR-S={t|t∈RytS}R.
A1,R.
A2,.
.
.
,R.
Análgebrarelacional85concatenaciónnaturaloperacióndefiniciónatributosdelarelaciónderivadapropiedadesR∞SSeanC={j|j(Aj=BjyDj=Ej}f(t)=ciertosij∈C(Aj:vj=Bj:vj)R∞S=RxSDONDEf(t)[A1,.
.
,An,Bn+1,.
.
,Bn+k]}j=n+1,.
.
,n+kjCR.
A1,R.
A2,.
.
.
,R.
An,{S.
Bk}kCconmutativa,asociativa22uniónoperacióndefiniciónatributosdelarelaciónderivadapropiedadesR∪SR∪S={t|t∈Rot∈S}R.
A1,R.
A2,.
.
.
,R.
Anconmutativa,asociativaintersecciónoperacióndefiniciónatributosdelarelaciónderivadapropiedadesR∩SR∩S={t|t∈Ryt∈S}=R-(R-S)R.
A1,R.
A2,.
.
.
,R.
Anconmutativa,asociativadivisiónoperacióndefiniciónatributosdelarelaciónderivadaR÷SSeanC={j|j(Aj=BjyDj=Ej}A={Ai:Di|iC}R÷S=R[A]-((R[A]*S)-R)[A]R.
A1,R.
A2,.
.
,R.
Aki=1,2,.
.
,kiCBIBLIOGRAFA[ELMASRI&NAVATHE2001][CELMA1997][DATE2000]22SiemprequesedicequeunaoperaciónenAResasociativaoconmutativaseentiendequenosestamosrefiriendoalastuplasdelatabladerivadayaquenilosnombresdeatributonisuordendentrodelastuplassonlosmismossegúnseaelordendelosoperandos.
87VINTRODUCCINALDISEODEBASESDEDATOSRELACIONALESLateoríadelanormalizaciónvaperdiendopesoconelpasodelosaoscomoherramientadediseodebasesdedatosrelacionalesenfavordemodelosdedatosmásricosensurepresentación,comopuedaserelEntidad-RelacióndeChenqueveremosentemasposteriores.
Aúnasí,losconceptosquesevanadesarrollaraquísontotalmenteválidosdesdeelpuntodevistadecomprobarlocorrectoqueesunesquemadebasededatosrelacional,enelsentidodequenoseproduzcanredundanciasinnecesariasentrelosdatosaalmacenar.
Porotraparte,ayudaráalamejorcomprensióndelModeloRelacionaly,engeneral,ajustificarlaestructuraciónentablas(relacionesensudenominaciónformal)interrelacionadasmedianteclavesajenasdelossistemasdeinformaciónamecanizarmediantetécnicasdebasesdedatos.
88V1.
IntroducciónCuandotrabajamosconunabasededatosrelacional,losesquemasdelasdistintasrelacionesquelaconstituyennosindicanque"cadadatotienesulugar".
Pero,quéocurresisemodificanestasestructuraslógicas.
Muchasvecesestanobvioqueundatodebedealmacenarseenunadelasrelacionesynoenotraquesenosescapalarespuestaaporquéesasí.
Lateoríadelanormalizaciónesenesenciaunaexpresiónformaldeideassencillasconunaaplicaciónmuyprácticaeneláreadeldiseodebasesdedatos,yaqueconducenaunacorrectaeleccióndelesquemadelabasededatos.
Yaqueeldiseodelabasededatoseseldiseodelosesquemasquelacomponen,debemosrecordarqueloquenosinteresasonlaspropiedadesdelosdatosquesiempresecumplenynolasquesecumplenporcasualidadenuninstantedetiempo.
Elpropósitodelesquemaescapturaraquellaspropiedadesquesiempresonverdaderas,esdecirnosvamosaocupardelacabeceraoesquemadelarelaciónindependientementedelcuerpoovaloresvariablesconeltiempo.
Elpuntofundamentalesquealgunasrelacionespuedenpresentaraspectosindeseablesylateoríadelanormalizaciónnospermiteidentificaresoscasosynosmuestralaformadeconvertiresasrelacionesaunaformamásdeseable.
Paraello,lateoríadelanormalizacióntienecomofundamentoelconceptodeformasnormales.
Sedicequeunarelaciónestáenunadeterminadaformanormalsisatisfaceunciertoconjuntoderestricciones.
Cuantasmásrestriccionessatisface"másdeseable"eslaformadelarelación.
Lasformasnormalesquesehandefinidosemuestranenelgráficoanteriorjuntoconelnombredequien(oquienes)lashandefinido.
Comodaidealailustración,cadaconjuntoderelacionesnormalizadasenunadeterminadaforma,ademásdelassuyaspropias,cumpleconlasrestriccionesimpuestasporlaformanormalanterior.
Enotraspalabras,laquintaformanormalesmásrestrictivaquelacuarta,lacuartaqueladeBoyce-Codd,yasísucesivamente.
Sedebeaclararqueformalmentecuandosehabladerelacionesnormalizadasnosestamosrefiriendoarelacionesqueestánenprimeraformanormal(1FN),esdecir,lostérminos"normalizada"y"1FN"significanexactamentelomismo.
Ademásdeverladefinicióndelasdistintasformasnormalesseintroducelaideadeunprocedimientodenormalizaciónadicional,conelqueunaUniversodelasRelaciones(normalizadasynonormalizadas)Relaciones1FN(normalizadas)-CoddRelaciones2FN-CoddRelaciones3FN-CoddRelacionesBCFN-BoyceyCoddRelaciones4FN-FaginRelaciones5FN-FaginintroducciónaldiseodeBDR89relaciónenunaciertaformanormal,porejemploen2FN,sepuedeconvertirenunconjuntoderelacionesenunaformamásdeseable,3FN,yasísucesivamente.
Esdecir,esteprocedimientoeslareducciónsucesivadeunconjuntodadoderelacionesaunaformamásdeseable.
Esimportantedestacarqueesteprocedimientoesreversible,siempreesposibletomarlasalidadelprocedimientoyconvertirlaenlaentrada,loquesignificaquenosepierdeinformaciónduranteelprocesodenormalizaciónadicional.
LastresformasnormalesoriginalesdeCoddylaformanormaldeBoyce/Coddseasientanenelconceptodedependenciafuncional.
Sedaráprimerounadefiniciónesteconceptoparapoderdefinirposteriormentecuandounarelaciónestáenunaciertaformanormal.
EjemplopropuestoElejemploquesevaaseguirparaaclarartodaslasdefinicionestratadeformamuyreducidadeunaempresaquetieneunaseriedeempleados,delosqueseconocesuN.
I.
F.
,sunombre,sudirección,unteléfonodecontactoysuaodenacimiento.
Estaempresatieneunaseriedeproyectosidentificadosunívocamenteporuncódigoydelosqueseconocesunombre,supresupuesto,sufechadeinicio,sufechadefinalización,laciudaddondesedesarrollayelgradodeidoneidaddelproyecto,éstetienequeverconlafacilidaddedesplazamientodesdelaciudaddondeseencuentralasededelaempresahastalaciudaddondesedesarrollaelproyectoydependenosólodeloskilómetrossinotambiéndelosmediosdecomunicaciónqueexistanentreellossegúnunestudiohechoporlapropiaempresa.
Alosempleadoslospuedendestinaratrabajarendistintosproyectosduranteunperíododetiempoestablecidopudiendoiralternandosutrabajoendistintosproyectos.
Sirealizamoseldiseológicopartiendodelesquemaconceptualadecuado,elesquemadelabasededatosqueobtendremos,prescindiendodelosdominiosasociadosalosatributos,eselquesemuestraacontinuación:EMPLEADO(N.
I.
F.
,nombre,dirección,fecha-nacimiento)Claveprimaria:N.
I.
F.
CIUDAD(ciudad,idóneo)Claveprimaria:ciudadPROYECTO(código,nombre,presupuesto,inicio,finalización,ciudad)Claveprimaria:códigoClaveajena:ciudad→CIUDADTRABAJAR(N.
I.
F.
,código,desde,hasta)Claveprimaria:(N.
I.
F.
,código,desde)Claveajena:N.
I.
F.
→EMPLEADOClaveajena:código→PROYECTOPero,escompletamentecorrectalaformaenquepensamosalmacenarlainformaciónHaycosasquetenemosmuyclaroque"estánensusitio"porqueparece"natural".
Porejemplo,parecelógicoquesi,además,queremosalmacenarelteléfonopersonaldecadaempleado,estedatodebeestarenlatablaEMPLEADO.
Supongamosqueno,queelteléfonodelempleadoloincluimosenlatablaTRABAJAR.
BD12006-200790TRABAJAR(N.
I.
F.
,teléfono,código,desde,hasta)Claveprimaria:(N.
I.
F.
,código,desde)Claveajena:N.
I.
F.
→EMPLEADOClaveajena:código→PROYECTOUnaposibleocurrenciadelatablaTRABAJARsería:N.
I.
F.
TELFONOCDIGODESDEHASTA22446688A5632224A11110/10/9220/12/9222446688A5632224A11209/01/9312/03/9322446688A5632224A11220/03/9314/03/9322446688A5632224A11615/08/9324/11/9311116666B5211111A11209/01/9320/05/9311116666B5211111A11407/07/9327/10/93Comovemos,elteléfonodecontactodeunempleandosevaarepetirtantasvecescomoproyectosestéasignado.
Estaredundanciapuedeprovocarinformacióninconsistentesinosemanejanconcuidadolasposiblesactualizacionesdelteléfonodecontactodeunempleado.
EsteproblemasurgeporquedetodaslascolumnasdelatablaTRABAJARelteléfonodecontactodeunempleadolopodemosconocersabiendosuN.
I.
F.
Sinembargo,lafechaenlaquecomienzaatrabajarenunproyectonodependesólodesuN.
I.
F.
sinoquenecesitamosconocertambiénelcódigodelproyectoalquenosreferimos.
Engeneral,laredundanciaintroducidaporunmaldiseodelasrelacionesprovocaloqueseconocecomoanomalíasdeactualización,esdecir,problemasconlastresoperacionesbásicas:inserción,borradoymodificación.
INSERCINParaalmacenarelteléfonodeunempleadodebemosasignarlo,obligatoriamenteaunproyecto(recordemosquelaclaveprimariaincluyeelcódigodelempleado).
N.
I.
F.
TELFONOCDIGODESDEHASTA22446688A965632224A11110/10/9220/12/9222446688A965632224A11209/01/9312/03/9322446688A965632224A11220/03/9314/03/9322446688A965632224A11615/08/9324/11/9311116666B965211111A11209/01/9320/05/9311116666B965211111A11407/07/9327/10/9321555777C965227820Además,puedeque,paraunmismoempleado,tengamosvariosteléfonosdistintos,cuandodeberíaserúnicoparacadauno.
N.
I.
F.
TELFONOCDIGODESDEHASTA22446688A965632224A11110/10/9220/12/9222446688A965632224A11209/01/9312/03/9322446688A965632224A11220/03/9314/03/9322446688A965632224A11615/08/9324/11/9311116666B965211111A11209/01/9320/05/9311116666B965211111A11407/07/9327/10/9311116666B965212222A11110/10/9220/12/92introducciónaldiseodeBDR91BORRADOPodríaeliminarseinformacióninnecesariamente.
Siunempleadotrabajabaenunúnicoproyectoyesarelaciónhaterminado,lológicoeseliminarlatuplaquerepresentalarelaciónentreambos.
Sinembargo,entrelainformaciónaborrardelabasededatosestáelteléfonodelempleado,datoéstequeperderíamosinnecesariamente.
N.
I.
F.
TELFONOCDIGODESDEHASTA22446688A965632224A11110/10/9220/12/9222446688A965632224A11209/01/9312/03/9322446688A965632224A11220/03/9314/03/9322446688A965632224A11615/08/9324/11/9311116666B965211111A11209/01/9320/05/93MODIFICACINProcesocostosocomputacionalmenteyposibilidaddeintroducirinconsistenciasenlabasededatos.
LaredundanciadeinformaciónquepresentalarelaciónTRABAJAR,hacequesiunempleadocambiadeteléfonotengamosquemodificarestedatoentodaslastuplasdeeseempleado.
TodoestonoocurriríasielteléfonohubierasidodefinidocomounatributomásdelarelaciónEMPLEADOenvezdeenTRABAJAR.
Portanto,parecequenoesadecuadomantenertodalainformaciónenlamismatabla.
Losproblemassurgenporqueciertosatributosnodependendirectaocompletamentedelasclavescandidatas.
Lanormalizaciónesunprocesoporelcualsemodificalaestructuradelabasededatosbuscandolaeliminacióndelaredundanciainnecesaria,aobtenerunconjuntodetablasconunaestructuramásdeseable.
Vamosadefinirloqueseentiendepor"dependencia".
23V2.
dependenciafuncionalDadaunarelaciónR,elatributoYdeRdependefuncionalmentedelatributoXdeR-ensímbolos,R.
X→R.
Yyselee"R.
XdeterminafuncionalmenteaR.
Y"-siysólosi,23Enrealidad,todosonconsideracionesdediseodeunabasededatos,másomenoscercanasalarealidadpero,finalmente,decisionesdeldiseador.
stebuscaelconjuntoderelacionesentrelosdatosmásapropiadoparaelusofinaldeesabasededatos.
Sinserhabitual,porcaracterísticaspropiasyexcepcionalesdelsistemadeinformaciónarepresentar,podríallegaradecidirsequeelteléfonoesúnicoparacadadirección.
BD12006-200792comomucho,unsolovalorYenRestáasociadoacadavalorXenR(encualquiermomentodado).
LosatributosXeYpuedensercompuestos.
PorejemploenlarelaciónEMPLEADO,losatributosnombre,dirección,teléfonodecontactoyfechadenacimientodependenfuncionalmentedelatributoN.
I.
F.
,porquedadounvalorespecíficodeN.
I.
F.
,existesólounvalorcorrespondientedenombre,dirección,teléfonoyfechadenacimiento.
Ensímbolos:EMPLEADO.
NIF→EMPLEADO.
NOMBREEMPLEADO.
NIF→EMPLEADO.
DIRECCINEMPLEADO.
NIF→EMPLEADO.
TELFONOEMPLEADO.
NIF→EMPLEADO.
FECHAo,deformamásconcisa:EMPLEADO.
NIF→EMPLEADO.
(NOMBRE,DIRECCION,TELEFONO,FECHA)Sinembargo,dadaunadirecciónnoocurrequesólohayaunempleadoconesadirección,puedequemásdeunempleadovivaenlamismacasa24.
EMPLEADO.
DIRECCION→EMPLEADO.
NIFPordecirlodeotraforma:DadaunarelaciónR,elatributoYdependefuncionalmentedelatributoXdeR,siysólosi,siemprequedostuplasdeRconcuerdenensuvalordeX,debenporfuerzaconcordarensuvalordeY.
Deformagráfica,lasdependenciasfuncionalesserepresentancomoarcosdirigidoscuyoinicioeselatributo(oatributos)delquedependeelatributoalqueapunta.
Así,ycomoyasehadichoantesdeNIFdependenfuncionalmentetantoNOMBRE,DIRECCIN,TELFONO,comoFECHA,comoseobservaenelsiguientediagramadedependenciasfuncionales:Nótesequetodasestasdependenciasfuncionalesestándentrodelesquemadebasededatosqueestamosmanejandocomoejemplo,aúncuandolosatributosseencuentrenrepartidosentrevariastablasrelacionadasconlas24Nuevamentehayquetenerencuentaquelasdependenciasfuncionaleslasdecideeldiseadordelabasededatos:enelsistemadeinformaciónqueestamosmanejandonoexistenrestriccionesdeltipo"sólohayunempleado,comomucho,porcadadirección",osimilares.
Peroenotrosistemadeinformaciónsípodríasernecesariorepresentarestasrestricciones.
NOMBREDIRECCINTELFONOFECHADESDEHASTAPRESUPUESTOINICIONOMBRECIUDADIDNEOFINNIFCDIGOintroducciónaldiseodeBDR93correspondientesclavesajenas.
Másadelante,conlasformasnormales,sejustificaráporquéesesteelesquemaynootro.
DEPENDENCIAFUNCIONALCOMPLETASedicequeelatributoYdelarelaciónResporcompletodependientefuncionalmentedelatributoXdelarelaciónRsidependefuncionalmentedeXynodependefuncionalmentedeningúnsubconjuntopropiodeX.
Enelsiguientediagrama,CdependedeformacompletadeA,peronode(A,B).
Dsídependedeformacompletade(A,B).
DEPENDENCIAFUNCIONALTRANSITIVASeanX,Y,yZatributosdelarelaciónR.
SiZdependefuncionalmentedeY,eYdependefuncionalmentedeX,sedicequeelatributoZdependefuncionalmentedelatributoXdeformatransitiva.
Aunquenoserepresente,existeotroarcoentreAyCpuestoqueesaes,precisamente,lapropiedaddetransitividad.
Enocasionesapareceráexplícitamentecomoenelsiguiente,peroambosdiagramassonabsolutamenteequivalentes:V3.
formasnormalesLasquevamosadesarrollaraquísonlasprimerasformasnormalesquedefinióCodd.
Posteriormentesevioqueeraninsuficientesparatrataralgunoscasosespeciales,básicamenteaquellosquemanejabanvariasclavescandidatas.
DehecholasdefinicionesquesedanacontinuaciónhablandeClavePrimariaynodeClaveCandidata.
Porotraparte,paralamayoríadelasrelacionesquesedescribenenunabasededatos,suelesersuficientenormalizarhastaterceraformanormal(3FN)paraconseguirundiseocorrectodelaBD.
ABCDABCABCBD12006-200794V3.
1.
primeraformanormalNosotrospartimosdelaideadequeporlaestructuradelastablascadatuplaúnicamenteadmiteunvalorparacadaunodelosatributos.
Estoesloqueseexpresaenladefinicióndeprimeraformanormal.
Unarelaciónestáenprimeraformanormal(1FN)siysólositodoslosdominiossimplessubyacentescontienensólovaloresatómicos.
V3.
2.
segundaformanormalUnarelaciónestáensegundaformanormal(2FN)siysólosiestáen1FNytodoslosatributosnoclavedependenporcompletodecualquierclavecandidata.
25Estediagramarepresentaunarelaciónconlasiguientedefinición:R(A,B,C,D,E,F)CP(A,B)Laeleccióndelaclaveprimariaesevidente:elúnicoconjuntodeatributosdelquedependenfuncionalmentetodoslosdemáses(A,B).
Sihubiéramoselegido(A)sólopodríamos"llegar"aEyaF,con(B)aninguno,y(A,B,C),porejemplo,nopuedeserclavecandidataporque(A,B)yaloes.
EneldiagramadedependenciasfuncionalesanteriorpodemosobservarcomolosatributosCyDdependenfuncionalmentedeformacompletadelaclaveprimaria(A,B).
PeroEyFsólodependendeA,porloquedecimosqueestarelaciónnoseencuentraen2FN.
Elprocesoparapasardeunarelaciónenunadeterminadaformanormalaunconjuntoderelacionesenunaformanormalmásdeseable,procedimientodenormalización,tienecomooperadordedescomposiciónlaproyección(elderecomposicióneslaconcatenaciónnatural).
Elprimerpasodelprocedimientodenormalizaciónestransformarunarelaciónquesóloestáen1FNavariasen2FN(algunasestaránademásenterceraomás).
Estohacequetengamosquesacarproyeccionesparaeliminarlasdependenciasfuncionalesnocompletasdelaclaveprimaria(siunarelaciónestáen1FNperonoestáen2FNsuclaveprimariaescompuesta).
DadaunarelaciónRen1FN:R(A,B,C,D,E,F)Claveprimaria:(A,B)25Alhablardeatributosnoclaveonoprimosdeunarelaciónsehacereferenciaalosquenopertenecenaningunadelasclavescandidatasdelarelación.
CEDFBARintroducciónaldiseodeBDR95YahemoscomentadoquesonEyFlosatributosquenodependenfuncionalmentedeformacompletadelaclaveprimaria(A,B);serecomiendasustituirRporsusdosproyeccionesR1yR2.
R1(A,E,F)Claveprimaria:AR2(A,B,C,D)Claveprimaria:(A,B)Claveajena:A→R1Ambasrelaciones,R1yR2partendeunamismarelaciónoriginal:R.
Esevidentequesi,antes,todalainformaciónestabaasociadaporperteneceraunaúnicarelación,alefectuarlaproyeccióndeatributos,lasrelacionesresultanteshanderelacionarseporalgunaclaveajena.
V3.
3.
terceraformanormalUnarelaciónestáenterceraformanormal(3FN)siysólosiestáen2FNytodoslosatributosnoclavedependendemaneranotransitivadecualquierclavecandidata.
Hablamosdedependenciatransitivacuandoocurre:A→B,B→Cy,portanto,A→CSiguiendoconelprocesodenormalizaciónveamoscualessonlospasosaseguirparadescomponerunarelaciónRquesóloestáen2FNenotrasrelacionesmásdeseablesen3FN.
Lasproyeccionesiránencaminadasaeliminarlasdependenciastransitivas.
R(A,B,C)Claveprimaria:AEnrealidad,laDFqueprovocalasanomalíasenlasactualizaciónesesR.
B→R.
C.
SerecomiendasustituirRporsusdosproyeccionesR1yR2:R1(B,C)Claveprimaria:BR2(A,B)Claveprimaria:AClaveajena:B→R1Estasdosrelacionesseencuentranen3FN.
CBARBD12006-200796V3.
4.
UnejemploVolvamosaldiagramadedependenciasfuncionalesdeempleadosyproyectos.
Enprimerlugardebemosdefinirlaprimerarelación:R(NIF,nombreE,dirección,fecha-nacimiento,código,nombreP,presupuesto,inicio,finalización,ciudad,idóneo,desde,hasta)26CP:(código,NIF,desde)TodaslasDFdeNIFytodaslasdeCDIGOsonDFnocompletas,loqueprovocaladefinicióndedosnuevastablas,yaqueRnoestáen2FN:R(NIF,código,desde,hasta)CP:(código,NIF,desde)CAj:(código)→PROYECTOCAj:(NIF)→EMPLEADOEMPLEADO(NIF,nombre,dirección,fecha-nacimiento)CP:(NIF)PROYECTO(código,nombre,presupuesto,inicio,finalización,ciudad,idóneo)CP:(código)LarelaciónR(quepodemosrenombrarcomoTRABAJAR)estáen2FNy3FNpuestoquelaúnicaDFquecontienees(código,NIF,desde)→hasta.
Noobstante,hayquecomprobarlasdosnuevastablas.
EMPLEADOtiene,también,unaúnicadependenciafuncional:NIF→(nombre,dirección,fecha-nacimiento),porlotantoestáen3FN,peroPROYECTOtiene:26Tenemosdosatributosllamados"nombre"porloque,enestaprimerarelación,losvamosadiferenciarcomo"nombreE"y"nombreP".
NOMBREDIRECCINTELFONOFECHADESDEHASTAPRESUPUESTOINICIONOMBRECIUDADIDNEOFINNIFCDIGOintroducciónaldiseodeBDR97Código→(nombre,presupuesto,inicio,finalización,ciudad,idóneo)Ciudad→idóneoPROYECTOnoestáen3FNydebemosproyectarunanuevatabla:CIUDAD(ciudad,idóneo)CP:(ciudad)PROYECTO(código,nombre,presupuesto,inicio,finalización,ciudad)CP:(código)CAj:(ciudad)→CIUDADAhorayaestáelesquemacompleto:EMPLEADO(NIF,nombre,dirección,fecha-nacimiento)CP:(NIF)CIUDAD(ciudad,idóneo)CP:(ciudad)PROYECTO(código,nombre,presupuesto,inicio,finalización,ciudad)CP:(código)CAj:(ciudad)→CIUDADTRABAJAR(NIF,código,desde,hasta)CP:(código,NIF,desde)CAj:(código)→PROYECTOCAj:(NIF)→EMPLEADOV4.
formanormaldeboyce-coddEstaformanormalsedefiniópararesolverlasanomalíasdeactualizaciónprovocadasporuncasomuyespecífico,quesedacuando:LarelacióntienevariasclavescandidatasLasclavescandidatasestánsolapadasenalgúnsubconjuntodeatributosdelasdos.
Sicualquieradeestasdoscondicionesnosecumpliese,normalizarhasta3FNseríasuficiente.
UnarelaciónestáenformanormaldeBoyce-Codd(FNBC)siysólositododeterminanteesunaclavecandidata.
Definimosdeterminantecomounconjuntodeatributosdelquedependefuncionalmenteporcompletoalgúnotroatributo.
Supongamoslasiguienterelaciónysusatributos,susclavescandidatasylasdependenciasfuncionalesobservadas:CBARBD12006-200798Losdeterminantesenestarelaciónson(A)y(B,C)puestoquedetodosellosdependefuncionalmentedeformacompletaunconjuntodeatributos.
Lasclavescandidatasson(A,B)y(B,C)yaquedeestosconjuntosdeatributosdependeelresto.
Poreso,RnoestáenFNBC.
Paranormalizaryconseguirquetododeterminanteseaclavecandidatadebemosproyectar(A)→(C),ladependenciaqueprovocaquelarelaciónnoestéenFNBC,aotrarelación,quedandoentonces:R1(A,B)Claveprimaria:(A,B)Claveajena:(A)→R2R2(A,C)Claveprimaria:(A)introducciónaldiseodeBDR99VILAPERSPECTIVALGICADELMODELORELACIONAL1.
INTRODUCCIN2.
CLCULODEPREDICADOSDEPRIMERORDEN3.
UNABASEDEDATOSCOMOUNAINTERPRETACINDEUNLPO4.
FRMULASSEGURAS5.
CLCULORELACIONALHemosvistoqueelálgebrarelacionalconsisteenlaespecificacióndeunasecuenciadeoperacionessobrelastablasdelabasededatosdetalformaqueobtenemosunanuevarelaciónresultado.
Manejamosunalistadeoperadoresdelosqueconocemos,básicamente,suresultado.
Porejemplo,ladiferenciadarácomoresultadotodaslasfilasdelprimeroperandoquenopertenezcantambiénalsegundo.
Olaselección,queobtienelastuplasquecumplenunadeterminadacondición.
Imaginemos,ahora,quevamosatrabajarconexpresionesque,dependiendodesusargumentos,seevalúanaciertoofalso,deltipoCLIENTE(x)enlaquesiunvalorestáactualmentealmacenadoenlatablaCLIENTE,sustituyendoxconesevalorelresultadodelaexpresiónesverdadero.
Imaginemos,también,queunmódulodeconsultasescapazdeprobartodoslosvaloresposiblesymostrarnosenpantallaaquellosquehacenciertalaexpresiónanterior:yatenemosunlistadodeclientes.
Aúnmás,podemospensarenotraexpresióntalcomoCLIENTE(x)yx.
ciudad='Alicante'.
Sisustituimostodoslosvaloresposiblesenx,losquepertenezcanalatablaysuatributociudadcontenga'Alicante'seránlosquehaganciertaestaexpresión.
Estamosdandoporsupuesto,claroestá,quexesunatupla.
Estamosexpresando,medianteunafórmulaquécaracterísticashadetenerlainformaciónesperada,"quéqueremosobtener".
Sólonecesitamosunasreglasparaescribirestasexpresiones,unasintaxisparacomunicarnosconesemódulodeconsultasimaginarioyloscriteriosporlosqueseobtendránvaloresdeciertoofalso.
Enestetemaveremosunanuevaformadedescribirunabasededatosusandoconceptosdelcálculodepredicadosdeprimerorden.
100VI1.
introducciónAdemásdelálgebrarelacional(AR),Codddesarrollódoslenguajesdeespecificacióndebasesdedatosrelacionalesbasadosenelcálculodepredicadosdeprimerorden(CPPO).
Estoslenguajessonelcálculorelacionalorientadoatuplasyelcálculorelacionalorientadoadominios.
ElARescómodoparanosotros,enciertamedida,puestoquelaformadeescribirconsultasseasemejaaescribirexpresionesaritméticas.
Además,susoperadoressepuedenalinear(másomenos)conlasprincipalescláusulasdelaordenselectdeSQL.
Puesbien,conloscálculosrelacionales,sedescribeelconjuntodeinformacióndeseadomediantefórmulaslógicasdeprimerorden.
Así,laconsultaseconvierteenalgoasícomo"quévaloresdelabasededatoshacenciertalafórmula"27.
Loquenecesitamosesunaguía(un"manual")decómoconstruirlasfórmulasycómoevaluarlas,cuandosonciertasycuandofalsas.
Nuevamente,Coddhaceusodeunateoríamatemáticayaexistente,elCPPO.
Siparaelálgebrarelacionalrealizóunaadaptacióndelmodelorelacionalalateoríadeconjuntos(ladefinicióndeciertosoperadores,básicamente),paraelcálculorelacionalestaadaptaciónconsisteenladefinicióndeunainterpretacióndeunlenguajedeprimerordenydelconceptodefórmulasegura.
Estetematratadelfundamentomatemáticoquehaydetrásdelcálculorelacionalorientadoatuplasydelorientadoadominios,eseconocimientoprevionecesarioparapoderescribirfórmulasysabercómoobtenersuresultado.
Dichodeotromodo,cómopodemosdescribirunabasededatosrelacionalentérminosdelCPPO.
Paraello,debemosdisponerdeunlenguajedeprimerordenydeunainterpretacióndeeselenguaje.
Ellenguajedeprimerordenloconstituyenlossímbolosqueseutilizanalescribirlasfórmulas,ylainterpretaciónlaasignacióndevaloresaesossímbolos,loquenospermitedefinircuandounafórmulaseevalúaaciertoofalso.
VI2.
cálculodepredicadosdeprimerordenElCPPO,yengenerallalógica,nospermitehacerdeduccionessobreununiversodediscurso.
Porello,esimprescindibledisponerdeunlenguajeprecisoquenospermitadescribiraquellosaspectosrelevantesdelarealidadobjetodeestudio.
Estelenguaje,quellamaremoslenguajedeprimerorden(LPO),constadeunossímbolosyunasreglasprecisasparacombinarlosenexpresionessintácticamentecorrectas,enfórmulas.
UnainterpretacióndeunLPO,defineelvalordeverdaddetalesfórmulas.
27Enrealidad,simplemente"quévaloreshacenciertalafórmula";aladaptarelmodelorelacionalalCPPOnosvamosaasegurardequelosdatosconlosquetrabajamossonlosdelaocurrenciadelabasededatos(severáenfórmulasseguras)organizaciónfísicadelasbasesdedatos101Podemosutilizarnuestroidiomaparailustrarestosdosconceptos.
Unafraseescritacontiene,opuedecontener,nombres,verbos,adjetivos,adverbios,artículos,pronombres,etc.
Algunaspalabrastienencargasemántica(significanalgo,sepuedenencontrarenundiccionario)yotrassonmodificadoresoconectores.
Porejemplo:"esteseordicetonterías"esunafrasecorrectamenteescritasegúnnuestragramática,peronoloes"diceseorestetonterías".
PensemosahoraenunciudadanodelaciudaddeTaipei:salvoque,poresascasualidades,aprendieraespaolenalgúnmomentodesuvida,nitansiquieralaprimerafrasetienesentidoparaél.
Necesitaconocerlaspalabrasy,tantoomásimportante,quésignifican.
Asimilemos,pues,elLPOalaspalabrasylasreglasparaconstruirfrases,ylainterpretaciónaundiccionarioquenosdicequésignificanesaspalabras(puedentenervariossignificados)yquésentidotienenenunafraseconcreta.
Porejemplo,aunquesegúnlasintaxisescorrectodecir"esteárboldicetonterías",lainterpretaciónnosdiríaquenotienesentido,quelosárbolesnohablan.
Nuestroobjetivofinalesvercomopodemosadaptarelmodelorelacionalyverlocomounainterpretacióndeunlenguajedeprimerorden.
Asípues,estamosobligadosaconocerqueesunLPOyqueesunainterpretación.
VI2.
1.
lenguajedeprimerordenUnlenguajedeprimerordenesunconjuntodesímbolos,unalfabeto,yunasreglasquenosdicenqueunassecuenciasdesímbolossoncorrectasyotrasno(unasestán"bienescritas"yotrasno).
Lossímbolospodemosdividirlosendostipos,aquellosalosqueselesasignaravaloryaquellosqueactúancomoconectoresomodificadores.
Comoveremosseguidamente,variables,constantes,predicadosyfuncionespertenecenalprimertipo,ycuantificadores,conectivaslógicas,ysímbolosdecomparaciónypuntuaciónalsegundo.
Laformadecombinarestossímboloscorrectamenteseconcretaenelconceptodefórmulabienformada,basadoenladefinicióndefórmulaatómica,yésteasuvezenladetérmino.
alfabetoUnlenguajedeprimerorden,L,vienedefinidoporunpar(A,F),dondeAesunalfabetodesímbolosyFelconjuntodetodaslasexpresionessintácticamentecorrectas(fórmulasbienformadas)quesepuedenconstruirutilizandolossímbolosdeA.
Comoyasehadicho,elalfabetoAcontienelassiguientesclasesdesímbolos:VariablesConstantesSímbolosdefunciónLadeclaracióndelacantidaddeargumentosdeunafunciónsehacemediantepuntosseparadosporcomas.
Porejemplo,f(representaaunafunciónde2parámetros.
SímbolosdepredicadoBD12006-2007102Aligualqueparalasfuncionessehadeindicarlacantidaddeargumentos.
Símbolosdecomparación:Símbolosdepuntuación:(),Conectivaslógicas:Negación,conjunción,disyuncióneimplicación.
Cuantificadores:(existencial),(universal)Feselconjuntodetodaslasexpresionesquesepuedenconstruircombinandolossímbolosanteriores.
Ladefinicióndefórmulabienformadaestableceestasreglasdecombinacióndesímbolospero,dadoqueestadefiniciónsebasaenellos,antesesnecesariointroducirlosconceptosdetérminoyfórmulaatómica.
términoUntérminosedefinerecursivamentecomosigue:Unsímbolodeconstanteesuntérmino.
Unsímbolodevariableesuntérmino.
Sifesunsímbolodefuncióndenargumentosyt1,t2,.
.
.
,tnsontérminos,entoncesf(t1,t2,.
.
.
,tn)esuntérmino.
Nadamásesuntérmino.
fórmulaatómicaSiPesunsímbolodepredicadodenargumentosyt1,t2,.
.
.
,tnsontérminos,entoncesP(t1,t2,.
.
.
,tn)esunafórmulaatómicaoátomo.
fórmulabienformadaUnafórmulabienformada(FBF)sedefinerecursivamenteaplicandolassiguientesreglas:UnafórmulaatómicaesunaFBF.
SiFyGsonFBF's,entoncestambiénloson:FF∧GF∨GF→GSixesunsímbolodevariableyFesunaFBF,entoncestambiénloson:xFxFSiFesunaFBF,entoncestambiénloes(F).
NadamásesunaFBF.
organizaciónfísicadelasbasesdedatos103Endefinitiva,unaFBFseconstruyeconectandofórmulasatómicasyestasúltimasmediantesímbolosdepredicadoytérminos.
Elobjetivodeestasdefinicionesesestablecerlasreglasde"escritura".
Porejemplo,xP(x)→Q(x)esunaFBF,perolassiguientesnoloson:xP(x)→Q(x)x→Q(x)(xP(x)→(x))Nótesequeenningúnmomentohemoshabladode"resultados",simplementeestamosaprendiendoa"escribir"perotodavíanosabemosloque"decimos"(paraestonecesitamoslainterpretación).
fórmulasabiertasycerradasEsteconceptonosserámuyútilcuando,finalmente,interroguemosalabasededatos.
Adelantándonosalpuntodondeseexponesuaplicación,digamosquelasfórmulasabiertassonlasqueobtienenunalistadevalores(unresultadoenpantalla,porentendernos),yvaloresdeciertoofalsolascerradas,conloquesepuedenutilizaréstasparaespecificarrestriccionesdeintegridaddeltipo"losclientesdeAlicantenopuedentenerdescuento".
Ladiferenciaentreunasyotrassebasaenlautilizacióndeloscuantificadoresexistencialyuniversal.
Cuandounavariableestáenelalcancedeuncuantificadorsedicequeesunaocurrenciadevariableligada,encontraposiciónconlaocurrenciadevariablelibre,noafectadaporcuantificadoralguno.
ElalcancedeuncuantificadoreslaFBFqueseencuentrainmediatamenteasuderecha.
EnlaexpresiónxP(x)→Q(x),laprimeraFBFaladerechadelcuantificadoresP(x),porloqueesteeselalcancedelcuantificadoruniversal,yQ(x)quedafueradeél.
Apartirdeahora,supongamosquexeysonsímbolosdevariableyqueP(.
),Q(.
),R(.
,.
)sonsímbolosdepredicado.
LassiguientesFBFilustraránlosconceptosdeformulasabiertasycerradas.
xP(x)→Q(x)Laprimeraocurrenciadelavariablex,laqueaparececomoargumentodelpredicadoP(.
),esligada,estoes,estábajoelalcancedelcuantificadoruniversal,perolasegundaocurrenciaeslibre.
Nótesequecuandounsímbolodevariableseutiliza,almismotiempo,enocurrenciaslibresyligadas,suevaluacióncuandosedefinalainterpretaciónseharácomosiutilizáramossímbolosdistintos.
Esdecir,quelafórmulapodríahaberseescritoigualmentecomoxP(x)→Q(y).
x(P(x)→Q(x))∨P(x)Enestafórmula,yporlaaccióndelosparéntesis,lasdosprimerasocurrenciasdexestánbajoelalcancedelcuantificador,ylainterpretaciónquesedefinalasconsiderarácomolamismavariable,mientrasquelatercerayúltimaeslibreyconsideradaunavariabledistinta.
Aligualqueantes,lafórmulax(P(x)→Q(x))∨P(y)seráequivalente.
BD12006-2007104x(R(x,y)∨P(x))Ahoratodaslasocurrenciasdexsonligadasmientrasqueladeyeslibre.
xy(R(x,y)∨P(x))Ahoratodaslasocurrenciasdevariablesonligadas.
Paraentendernos,sipudiéramossustituircadaFBFporunsímbolo,elalcancedelsegundocuantificadoresxyF,yelalcancedelprimeroesxF'.
Estaclasificacióndelasocurrenciasdeunavariablenospermitedistinguirentrefórmulascerradas,aquellasquenotienenocurrenciaslibresdevariable,yfórmulasabiertas,conalmenosunaocurrencialibredevariable.
Delosejemplosanteriores,lastresprimerasfórmulassonejemplosdefórmulaabierta,ylacuartadefórmulacerrada.
VI2.
2.
interpretaciónUnlenguajedeprimerordennospermiteefectuardeduccionessobreununiversodediscurso,siendoésteelconjuntodetodoslosvaloresposibles.
Sinembargo,aunquesabemosconstruirexpresiones,debemosdotaracadasímbolodellenguajedeun"contenido",establecerlosvaloresquedefinenlaevaluaciónaciertoofalsodelasfórmulas.
Enestesentidopretendemosque:lasconstantesdenotenobjetos(individuos)deeseuniversodediscurso.
lospredicadosdenotenpropiedadessobrelosobjetosdeluniversodediscurso.
lasfórmulasbienformadasseanenunciadososentenciassobreeluniverso.
Dichodeotraforma,dadounlenguajedeprimerordenL=(A,F),elobjetivoeslaasignaciónacadasímbolodelalfabetoAdeunvalordeluniversodediscursodeformaque,utilizandoestaasignacióncomobase,podamosdefinirelvalordeverdaddecualquierfórmuladedicholenguaje.
Paraellointroducimoselconceptodeinterpretación.
interpretaciónUnainterpretaciónIdeunlenguajedeprimerorden,L=(A,F),esunacuádrupla(D,K,H,E)donde:Desunconjuntonovacío,llamadodominiodeI,enelquelasvariablesdeAtomanvalores,yqueconstituyeeluniversodediscurso.
KesunaaplicaciónqueasignaacadasímbolodeconstanteunelementodeD.
organizaciónfísicadelasbasesdedatos105Hesunaaplicaciónqueasignaacadasímbolodefunciónn-ariaunafuncióndeDnenD.
Eesunaaplicaciónqueasignaacadasímbolodepredicadon-ariounarelaciónsobreDn(estarelaciónsedenominaextensióndelpredicado).
Parailustrarladefiniciónanterior,vamosasuponerqueDeselconjuntodelosnúmerosenteros.
Supongamos,también,queL=(A,F)estábiendefinido(tienesímbolosdeconstante,devariable,depredicado,etc.
).
Deformageneral,unaconstanteesunvalordeldominio.
Otracosaeselsímboloqueutilizamospararepresentarlo.
Ennuestravidacotidianautilizamosideasintangibles,manejamosobjetos,nosrelacionamosconpersonas,ycuandopretendemoscomunicaraotrosesosconceptosoreferirnosaesascosasoindividuosutilizamossímbolos,palabras,querepresentanaesasideas,objetosopersonas,justoloqueestamoshaciendonosotrosalescribirestetextoyalleerlo.
Todossabemos,hablandodelosenteros,loquesignificael"uno"oel"dos".
Parareferirnosaellosescribimos'1'y'2'.
Elnúmeroentero1esunconcepto,unaidea,queparapodersermanejadoeinterpretadodeigualformaportodos,estárepresentadoporunsímbolo(gráficoennuestrocaso)queeselcarácter'1'.
Luego,antesdepoderutilizarestoscaracteresenunaexpresiónaritméticacomo1+2,sehanasignadolosvaloresdeldominioalossímbolosdeconstante.
Loquepasaesquenosomosconscientesdeesaasignación,lahemosaprendidodesdepequeosenlaescuelayeslaquesemanejaentodoelmundoporquenecesitamoscomunicarnosyserentendidos.
Kdefineesaasignación.
Sisuponemosqueelconjuntodesímbolosdeconstanteestacompuestopor{1,2,3,4,.
.
.
},K(1)=1,K(2)=2,K(3)=3,.
.
.
,odeformageneral:K={(c,d),cesunsímbolodeconstante,desunentero}Esdecir,elargumentodeKesunsímboloyelresultadounvalordeldominio(cuandoescribimos'1'estamosrepresentandoalentero1).
Poresomismo,yaquelainterpretaciónladefinimosnosotros,tambiénpodíamoshaberestablecidoqueK(1)=2yK(2)=1.
Obviamente,siasífueranecesario,elconjuntodeconstantespodríaserotro,porejemplo{a,b,c},yKdefinidocomo{(a,1),(b,2),(c,3)}(arepresentaalentero1,bal2,ycal3).
HyErealizanlamismatareaparalossímbolosdefunciónydepredicado.
Sif(.
,.
)esunsímbolodefunciónpodríamosasignarleunafuncióndeD2enD,conunaexpresióngeneralcomoporejemplof(x,y)=x+y,odeformaexplícitacomof(1,1)=2,f(1,2)=3,f(2,1)=3,.
.
.
Laasignacióndeextensiónaunsímbolodepredicadoconsisteenestablecerlosvaloresquehacenciertoelpredicado(comoseverámásadelante),porejemploparaunpredicadodeunargumentoP(.
)elconjuntodevalores{1,3,5}oparaotrodedosargumentosQ(.
,.
)elconjunto{(1,1),(1,2),(2,2),(2,4)}.
Deestaforma,P(1)yQ(1,2)seevalúanacierto,mientrasqueP(5)yQ(3,3)afalso.
TambiénQ(f(1,1),2)seevalúaacierto.
VI2.
3.
evaluacióndefórmulasEnrealidad,nodebemosolvidarquenuestroobjetivofinaleshacerdeduccionesacercadeluniversodediscurso,yestoseconsigueevaluandoBD12006-2007106lasfórmulasqueseprecisen.
Esdecir,dadaunafórmula,éstaseráciertaofalsa,oinformarásobrequéelementosdeluniversodediscursolahacencierta.
Sinosadelantamosunavezmás,suaplicaciónabasesdedatosrelacionalesesclara:mediantefórmulasqueremossabersilosdatosalmacenadosenellacumplenunaciertacondiciónono,orecuperarunconjuntodeinformación.
Porevaluarfórmulasentendemosobtenerunarespuestasegúnlainterpretaciónquesehayadefinido.
Lasreglasdeevaluaciónsedistinguensegúneltipodefórmula,cerradaoabierta.
Cuandolafórmulaescerrada,elresultadoesciertoofalso,ycuandoesabierta,devuelveunalistadevalores.
Entodosloscasos,seasumeelordendeprecedenciadelosoperadoresquesemuestranenelsiguientecuadro,detalformaquefórmulasentreparéntesisseránevaluadasenprimerlugar,yfórmulasconconjunciones,disyuncionesoimplicacionesseránlasúltimasenevaluarse:(),∧,∨,→evaluacióndefórmulascerradasLaevaluacióndeunafórmulacerradaGenunainterpretacióndacomoresultadoelvalorciertoofalso,ysedefinecomosigue:SiGesunafórmulaatómica,G=P(t1,t2,.
.
.
,tn),y(a1,a2,.
.
.
,an)unatuplatalqueaisustituyeati,entoncesGseevalúaaciertosilatuplaestáenlaextensiónquelainterpretaciónasignaaP,yafalsoencasocontrario.
SiGcontienealgunaconectivalógica,seevalúadeacuerdoalassiguientetabla(FyHsonfórmulasbienformadas).
FHF∧HF∨HF→HFciertociertociertociertociertofalsofalsociertofalsociertociertociertociertofalsofalsociertofalsofalsofalsofalsofalsociertoSiG=xFentoncesGesciertasi,alsustituirlavariablexenFportodosloselementosdeldominio,Fesciertasiempre,yGesfalsaencualquierotrocaso.
SiG=xFentoncesGesciertasiFesciertaalmenosparaunelementodeldominioquesustituyalavariablexenF,yGesfalsaencualquierotrocaso.
evaluacióndefórmulasabiertasElresultadodeevaluarunafórmulaabiertaGconn(n>0)variableslibresenunainterpretación,esunarelaciónn-aria,RG,definidasobreeldominiodelainterpretaciónD.
Cadatupladeestarelaciónestalque,alsustituirlasvariableslibresporlascorrespondientescomponentesdelatupla,lafórmulacerradaqueresultaesciertaenlainterpretación.
SilarelaciónRGorganizaciónfísicadelasbasesdedatos107coincideconDnlafórmulaseevalúasimplementeacierto;siRGnocontieneningunatupla,entonceslafórmulaseevalúaafalso.
Resumiendo,conelLPOdefinimoslossímbolosylaformadelasfórmulasquelosutilizan,yconlainterpretaciónestablecemoslosvaloresquedefiniránelresultadodeesasfórmulas.
VI2.
4.
unejemploSeaAelalfabetodeunlenguajedeprimerorden:Variables={x,y}Constantes={a,b,c}Predicados={P(.
),Q(.
),R(SeaI(D,K,H,E)definidacomosigueD={1,2,3}K(a)=1,K(b)=2,K(c)=3E(P)={2},E(Q)={1,3},E(R)={(1,1),(1,2),(1,3)}F1Q(x)Estaesunafórmulaabiertaporloqueelprocesodeevaluaciónconsisteensustituirlavariablexportodosycadaunodelosvaloresdeldominioycomprobarsilafórmulacerradacorrespondienteesciertaofalsa,queeslomismoquedecirqueelresultadodeestafórmulasontodoslosvalorespertenecientesalaextensióndelpredicado.
ComoQ(1)yQ(3)seevalúanaciertoyQ(2)afalso,elresultadodelaformulaconsisteendostuplasdeunacomponente:Q(x)={1,3}F2Q(x)∧yR(x,y)Estaesotrafórmulaabiertaperosecombinanvariablesligadasylibres.
Porlaprecedenciadeoperadores,podemosresumirlafórmulacomoF∧G,porloqueambassubfórmulashandeserciertasparaquetodalafórmulalosea;losúnicosvaloresquehacenciertoQ(x)sonel1yel3.
Q(1)∧R(1,1)=ciertoQ(1)∧R(1,2)=ciertoQ(1)∧R(1,3)=ciertoCuandoxvale1,secumplequeenRhayunatuplaparatodosloselementosdeldominioenlaquelaprimeracomponentees1.
Luegoelvalor1haceciertalafórmulaQ(x)∧yR(x,y).
Q(3)∧R(3,1)=falsoPuestoqueelpar(3,1)nopertenecealaextensióndeR,yahemosencontradounvalordeyparaelquelafórmulaseBD12006-2007108hacefalsa,luegoyanosecumpleparatodovalordey,ytodalafórmulaseevalúaafalso.
ElresultadofinaldelafórmulaQ(x)∧yR(x,y)esunaúnicatupla:Q(x)∧yR(x,y)={1}G1x(P(x)→Q(x))Estafórmulaescerradayaquelasdosocurrenciasdelavariablexestánenelalcancedelcuantificadoruniversal,porloquelafórmulasedescribiríacomoquetodovalorqueestéenPnoloestáenQ.
Podemosdecirquevamosatrabajarconunaúnicavariable.
Así,debemoscomprobartodoslosvaloresdeldominio,ysiparatodoselloslafórmulaseevalúaacierto,esquelafórmulaescierta.
(P(1)→Q(1))=(falso→cierto)=(falso→falso)=cierto(P(2)→Q(2))=(cierto→falso)=(cierto→cierto)=cierto(P(3)→Q(3))=(falso→cierto)=(falso→falso)=ciertox(P(x)→Q(x))=ciertoG2x(P(x)→yR(x,y))Parax=1yx=3elantecedentedelaimplicaciónesfalsoporloque,valgaloquevalgayR(x,y),elresultadoescierto.
NoexisteningúnparenRcuyaprimeracomponentesea2,yR(2,y)esfalsoporloquelafórmulaP(2)→yR(2,y)seevalúaafalso.
Comonosecumpleparatodovalordex,lafórmulaseevalúaafalso:x(P(x)→yR(x,y))=falsoG3x(P(x)∨yR(x,y))Sepuedecomprobarqueparax=1,lafórmulaseevalúaacierto.
Sisecumpleparaunvaloryapodemosdecirqueelresultadoes:x(P(x)∨yR(x,y))=ciertoVI2.
5.
definicióndemodeloDadaunainterpretaciónIyunconjuntodefórmulasbienformadasT,sedicequeIesmodeloparaTsiysólositodaslasfórmulasdeTseevalúanaciertoenI.
Enelejemploanterior,siúnicamenteconsideramoslasfórmulascerradasG1,G2yG3lainterpretaciónnoesmodeloparaellasyaqueG2seevalúaafalso.
SinembargolainterpretaciónsíesmodeloparalasfórmulasG1yG3.
organizaciónfísicadelasbasesdedatos109VI3.
unabasededatosrelacionalcomounainterpretacióndeunlenguajedeprimerorden.
VI3.
1.
otroenfoquedelasbasesdedatosrelacionalesYadisponemosdelasherramientasnecesariasparaefectuarlaadaptacióndelmodelorelacionalalCPPO.
Laideacentralesprobarqueunabasededatospuedeserinterrogadamediantefórmulaslógicas,fórmulasbienformadas.
Loqueacontinuaciónsevaaexponeresotropuntodevista,otraformade"presentar"lasbasesdedatosrelacionales.
SiparaconstruiryevaluarunaFBFnecesitamosunainterpretaciónyunLPO,paratodoesquemadebasededatosrelacional(BDR)yparacadaestadodebasededatostenemosqueasegurarnosqueambos,interpretaciónylenguaje,estánbiendefinidos.
Dehecho,cuandotrabajamosconunaBDR,cadaoperaciónprovocaunnuevoestadodebasededatosmientrasquelaestructura,elesquemadebasededatospermaneceinalterado.
ElLPOsebasaráenelesquemaycadaestadoesunainterpretacióndistinta.
Porejemplo,supongamosunaBDRmuysimple,conunatabladedepartamentosyotradepersonasquetrabajanenesosdepartamentosdetalformaqueunempleadotrabajacomomáximoenundepartamentoyestospuedentenertantosempleadoscomonecesiten(relaciónunoamuchos).
Elesquemadebasededatos,entreotrascosas,definelosdominiosenlosquelosatributostomanvalores.
Supongamosquetodoslosatributossoncadenasde20caracteres.
Todaslascombinacionesdecaracteresencadenasde0a20elementossonsusceptiblesdeseralmacenadas.
steesnuestrouniversodediscurso,eldominio,ycadaunadeesascombinacionestendrásucorrespondientesímbolodeconstante.
Porotrolado,necesitamospredicadosparapoderdeterminarquévalores"están"yquévalores"noestán"enlaBD.
Sicadatabla,departamentoypersona,sedefinecomounpredicado,yadisponemosdelLPO,yapodemosescribirfórmulas.
ParatrabajarnormalmenteconlaBD,esasfórmulasdebendevolverunresultado,debenpoderevaluarse,necesitamosunainterpretacióndelLPO.
SielesquemadeBDesestático,lainformaciónalmacenadacambiaconstantementeconlasinserciones,borradosymodificaciones.
Portanto,unaconsultaquenosdaunresultadoenunestadodelaBD,podríadarnosotroenotraocurrencia.
Comohemosvisto,lainterpretacióneslaherramientaquerellenalossímbolosdelLPO,davaloralasconstantesyalossímbolosdepredicado.
Enelcasodelasconstantesessimplementeasegurarnosdequeexisteunacorrespondenciaentreelsímboloyelvalordeldominio.
Volviendoanuestrapequeabasededatoslasconstantesyaestándefinidasysonsiemprelasmismas.
Lospredicadossonlosquevanadefinir,realmente,laocurrenciadelabasededatos,losdatosqueestánalmacenadosencadainstanteenlastablas.
SiBD12006-2007110suponemosquecadaestadodelaBDdefineunainterpretación,yaestamosendisposicióndeevaluarcualquierfórmula.
Insistimosenque,simplemente,setratadeotroenfoquedeunabasededatosrelacional,loqueantesllamábamosrelación(tabla)ahorasellamapredicado,loqueanteserandominiosahoraesuniversodediscurso.
.
.
comosemuestraenlasequivalenciasquesemuestranacontinuación.
dominios:universodeldiscursovalordeundominio:constanterelación:predicadoextensióndelarelación:extensióndelpredicadoatributos:argumentosdepredicadoconsulta:FBFabiertarestriccióndeintegridad:FBFcerradaestadodebasededatos:interpretaciónAhora,envezdeutilizarelmodelorelacionalparadescribirlaBD,vamosusarunainterpretacióndeunLPO:Todoesquemadebasededatosrelacionaldefineunlenguajedeprimerordenycadaestadodebasededatosunainterpretación.
Resumiendo,siemprepodemosutilizarelCPPOparadescribireinterrogaraunabasededatosrelacional.
Seentiendequeencadaestadodebasededatosdisponemosde:universodeldiscursoSeaDlaunióndetodoslosdominiosqueaparecenenelesquemadeBD.
constantesPorcadaelementodeD,seintroduceunsímbolodeconstanteynadamásqueuno.
Parasimplificar,escogeremoscomosímbolosdeconstantelossímbolosquedenotanaloselementosdeD;acadasímboloseleasigna"su"elemento.
28predicadosPorcadaesquemaderelacióndenatributosenelesquemadelaBD,seintroduceunsímbolodepredicadodenargumentos.
Parasimplificar,escogeremoscomosímbolosdepredicadolosnombresdelasrelaciones.
Acadasímboloseleasignalaextensiónde"su"relación.
Enestealfabeto,porsimplicidad,noincluimoslossímbolosdefunción29.
Lossímbolosdevariablesseasumequeserántantoscomoseannecesarios,ylasconectivaslógicas,especialesyloscuantificadoressonlosmismosquelosdefinidosenelapartadoanterior.
Asímismo,lasFBF'sdeestelenguajeseconstruyenconlasmismasreglasquesehanpresentadoendichoapartado.
Puestoquedisponemosentodomomentodeesainterpretación,podemosconstruirfórmulaslógicasyevaluarlas.
Estasfórmulaspuedenserabiertaso28Esotravezladiscusióndellenguajedeprimerorden:desdeunpuntodevistaformal,unacosaeselsímbolo'1'yotracosaelentero1;unacosaeselsímbolo'Pepe'yotraelvalordeldominiodelascadenasde10caracteresPepe.
Tenemosconceptosysímbolosquerepresentanaesosconceptos.
Nosotros,puestoqueutilizamossímbolosparacomunicarnos,nosomosconscientesdeesaasignación,laasumimoseldíaenque"aprendimosahablar".
29Aunquesepodríanutilizarsifueranecesario.
Aligualquelasconstantes,sonenciertomodoestáticasyaquetendríanlamismadefiniciónentodoslosestadosdebasededatos(entodaslasinterpretaciones).
organizaciónfísicadelasbasesdedatos111cerradas.
Recordemosquelasrestriccionesdeintegridadsoncondicionesquesedeseandelosdatos,uncontroldesualmacenamiento.
Seentiendequeintegridadreferencialydeclavesonmantenidasporlossistemasdegestióndebasededatos.
Perotambiénpodemosdesearintroducirrestriccionesdeexistenciaqueelesquemanopuedereflejarcomo,porejemplo,quelosdepartamentoshandeteneralmenosunempleado.
CómopodemosestarsegurosdequenuestraBD,enunestadoconcreto,escorrecta,cumplecontodaslasrestriccionesdeintegridadAquíescuandorecuperamoselconceptodemodelo.
Silainterpretación(elestadodelaBD)esmodeloparaelconjuntodefórmulascerradasconlasqueexpresamosesasrestricciones,esquelosdatosestáncorrectamentealmacenados.
VI3.
2.
unejemploPartiendodelsiguienteesquema,vamosailustrarlaformalizaciónlógicadeunaBDR,estoes,ladescripcióndetodossusposiblesestados.
Apartirdeestadescripción,ydadalaocurrenciaconcreta,sepropondránfórmulasabiertasycerradas,asumiendoquelasprimerasrepresentanconsultasquehandedevolverunconjuntodetuplas,ylassegundasunconjuntoderestriccionesdeintegridad.
Esquemadelabasededatos:CONDUCTOR(número:cadena(2),aoNac:entero)ClavePrimaria:númeroVEHCULO(matrícula:cadena(9),marca:cadena(30),aoFab:entero)ClavePrimaria:matrículaCONDUCE(conductor:cadena(2),vehículo:cadena(9))ClavePrimaria:(conductor,vehículo)ClaveAjena:conductor→CONDUCTORClaveAjena:vehículo→VEHCULORestriccionesdeintegridad:R1:Losvehículossólopuedenserconducidosporconductores(integridadreferencialdelarelaciónCONDUCErespectoalarelaciónCONDUCTOR).
R2:Losconductoressóloconducenvehículos"(I.
R.
deCONDUCErespectodeVEHCULO)R3:TodovehículotienealmenosunconductorExtensióndelasrelaciones:CONDUCEconductorvehículoC1A-0000-AC2A-0000-AC1A-2222-CBC4A-3333-CNCONDUCTORVEHCULOnúmeroaoNacmatrículamarcaaoFabC11950A-0000-ASEAT1980C21950A-1111-BMSEAT1990C31972A-2222-CBVOLKSWAGEN1994C41970A-3333-CNAUDI1995BD12006-2007112Formalmente,unesquemabasededatosrelacionalysuocurrenciasedescriben,desdeelpuntodevistadelCPPO,como:SeaL=(A,F)eI(D,K,H,E),dondesímbolosdeconstante:C={a:aesunacadena(2)}∪{a:aesunacadena(9)}∪{a:aesunacadena(30)}∪{a:aesunentero}símbolosdepredicados:P={CONDUCTOR(VEHCULO(CONDUCE(dominiodelainterpretación:D={a:aesunacadena(2)}∪{a:aesunacadena(9)}∪{a:aesunacadena(30)}∪{a:aesunentero}Asignaciónalasconstantes:K:C→DtalqueK={(c,d):c∈Cyd∈Dyc=d}30Asignaciónalospredicados:E(CONDUCTOR)=Ext(CONDUCTOR)E(VEHCULO)=Ext(VEHCULO)E(CONDUCE)=Ext(CONDUCE)Sesuponequetodoposibleestadodebasededatossepuededescribirdeestaforma,porloqueentodomomentopodemosevaluarunafórmulaescritaenesteLPOenestainterpretación.
UnaBDasíformalizada,puedeinterrogarseconnaturalidadmediantefórmulasbienformadasdellenguajequetieneasociadodemaneraque,elresultadodeevaluaresasfórmulasenlainterpretaciónasociadaaesabasededatosproporcionalacontestaciónalapregunta.
Quéconductoreshannacidoen1950F1CONDUCTOR(x,1950)xC1C2QuévehículossonconducidosporelconductornúmeroC2F2CONDUCE('C2',y)yA-0000-AQuéconductoresnoconducenningúnvehículoF3y(CONDUCTOR(x,y)∧z(CONDUCE(x,z))xC330Puestoquecesunsímbolodeconstanteydesunvalordeldominio,laexpresiónc=dquieredecirque"cseescribeigualqued"organizaciónfísicadelasbasesdedatos113Porotraparte,comoyasehacomentado,lasrestriccionesdeintegridadrepresentanpropiedadessemánticasquedebencumplirseparaquelaocurrenciadelabasededatosseaválida.
Conlaformalizaciónquesehapresentado,estasrestriccionesdeintegridadpuedenexpresarsemedianteunconjuntodefórmulascerradasdemodoquelainterpretaciónasociadaalabasededatosdebesermodelodeeseconjuntodefórmulas.
"losvehículossólopuedenserconducidosporconductores"F4xy(CONDUCE(x,y)→zCONDUCTOR(x,z))seevalúaacierto"Losconductoressóloconducenvehículos"F5yx(CONDUCE(x,y)→ztVEHCULO(y,z,t))cierto"todovehículotienealmenosunconductor"F6xyz(VEHCULO(x,y,z)→tCONDUCTOR(t,x))falsoSisuponemosqueF4,F5yF6eselconjuntodefórmulasquerepresentanrestriccionesdelsistema,lainterpretaciónnoesmodeloparaesteconjuntodefórmulas,oloqueeslomismo,nuestraocurrenciadelesquemanoesconsistenteconlasrestriccionesexplícitasdelproblema:labasededatosnoescorrecta.
VI4.
fórmulassegurasComosehavistoenelapartadoanterior,enunabasededatosvistacomounainterpretacióndeunlenguajedeprimerorden,laspreguntasseexpresanmediantefórmulasabiertas,ylasrestriccionesdeintegridadseexpresanconfórmulascerradasdeeselenguaje.
Sinembargonuestrabasededatosesunsubconjuntodetodalainformaciónquesepuedellegaraalmacenar.
Supongamosquetenemosunatabladeclientes(conatributos"D.
N.
I.
"y"cuentabancaria"):esobvioquesólovoyaalmacenar"misclientes"no"todoslosposiblesclientes".
Supongamostambién,quetodos"misclientes"tienencuentabancaria(esunarestriccióndeintegridaddemibasededatos).
ElproblemaalconstruirfórmulasenCPPOesqueestamoshaciendodeduccionessobretodoeluniversodediscurso.
Luegonoeslomismodecirque"todosmisclientestienencuentabancaria"que"todoslosclientestienencuentabancaria".
Enestesegundocaso,cómopuedoasegurarlosinolo"conozco",noestáalmacenadoenmibasededatosEsmás,expresionescomoCLIENTE(x,y)soncorrectasytienenrespuesta:"clientesquenoestánenlatablaCLIENTE"o"clientesdesconocidos".
Peroclaro,clientesdesconocidosnosonesaspersonasqueaúnnosonmisclientes,sinotodaslasposiblescombinacionesde"D.
N.
I.
"y"cuentabancaria",tantosisecorrespondenapersonasrealescomosino.
NoolvidemosqueCLIENTEesunsubconjuntodelproductocartesianodelosdominiosdesusatributos:todoslosclientessontodaslastuplasdeeseproductocartesiano.
Apartedeque,enbasesdedatos,noparecequehayaningunajustificaciónparapreguntasdeestetipo(lainformaciónquemeinteresaeslaqueestáalmacenada;paraquénecesitoalosconductoresqueno"conozco"),enelBD12006-2007114peordeloscasos,ysiempreanivelteórico,losdominiossonpotencialmenteinfinitos.
Unapreguntaasí,ynoolvidemosquenuestraintenciónfinalestrabajarconunordenadoryunsistemadegestióndebasesdedatos,llevaríaatenerqueapagarlamáquinayaquenuncapararíademostrartodaslasinfinitastuplasdelarelación.
Portodoello,esnecesarioevitartalesexpresiones,restringiendoelconjuntodefórmulaspermitidoaunsubconjuntodeFformadoporaquellasfórmulasquesedenominanfórmulasseguras.
Podemosconcretarelobjetivodeusarsólofórmulassegurasparainterrogarabasesdedatosrelacionalesenquepretendemospreguntarúnicamentesobreinformaciónalmacenada,evitarexpresionesqueesténafectadasporlosdatosquenoestánenmibasededatos.
Antesdedefinirlapropiedaddeseguridaddeunafórmulaesnecesariointroducirelconceptodedominiodeunafórmula.
dominiodeunafórmulaDadaunafórmulaGquecontienelossímbolosdepredicadoP1,P2,.
.
.
,Pkylossímbolosdeconstantea1,a2,.
.
.
,an,entonceseldominiodeG,Dom(G),eselsiguienteconjunto:Dom(G)={K(a1),K(a2),.
.
.
,K(an)}∪Ext(P1)∪Ext(P2)∪Ext(Pk)Eldominiodeunafórmula,dichoenotraspalabras,eselconjuntodevaloresque"maneja"lafórmula,lasextensionesdelospredicadosylasconstantesutilizadosenlafórmula.
Yaquelasrelacionesasociadasacadasímbolodepredicadosonconjuntosfinitos,tambiénDom(G)loes.
fórmulaseguraUnafórmulaGessegurasi,independientementedelainterpretaciónqueseestéconsiderando,satisfacelassiguientestresreglas:SiGtienenvariableslibres(x1,x2,.
.
.
,xn)y(a1,a2,.
.
.
,an)esunatuplatalquealsustituircadaxiporailafórmulaqueresultaescierta,entoncesai∈Dom(G).
ParacadasubfórmuladeGdelaformaxF,siaesunvalortalquealsustituirxporaenFlafórmulasehacecierta,entoncesa∈Dom(F).
ParacadasubfórmuladeGdelaformaxF,siaesunvalortalquealsustituirxporaenFlafórmulasehacefalsa31,entoncesa∈Dom(F).
Intuitivamente,unafórmulaessegurasisuevaluacióndependesólodelasextensionesdelasrelacionesasociadasalossímbolosdepredicadoqueenellaaparecen(ydelasconstantesutilizadas).
Paraentendernos,debemosasegurarnosdequelosvaloresquehacenciertaslasfórmulasabiertasylascerradasporcuantificadoresexistenciales,ylosquehacenfalsaslascerradasporcuantificadoresuniversales,pertenecenalabasealabasede31PorquéparaelcuantificadoruniversalsólomiramoslosvaloresquehacenfalsalafórmulaxFesigualaxForganizaciónfísicadelasbasesdedatos115datos.
Deunamaneraunpocomenosformal,paraqueunafórmulaGseaseguradebecumplirseque:Losvaloresdevariableslibresquenopertenecenaldominiodelafórmulanohacenciertalafórmula.
Losvaloresdevariablesligadasporcuantificadoresexistencialesquenopertenecenaldominiodelafórmulanohacenciertalasubfórmula(elalcancedelcuantificador).
Losvaloresdevariablesligadasporcuantificadoresuniversalesquenopertenecenaldominiodelafórmulanohacenfalsalasubfórmula(elalcancedelcuantificador).
Porejemplo,CLIENTE(x,y)esunafórmulasegurapuestoquesólonosvaadevolvervaloresalmacenadosenlatablaCLIENTE,peroCLIENTE(x,y)precisamentesehaceciertaparaaquellosvaloresquenoestánenlatabla,esunafórmulanosegura.
Fórmulassegurasynosegurasesunaclasificaciónenfórmulasaplicablesabasesdedatosrelacionalesyfórmulasquenosedebenutilizar.
Ladefinicióndefórmulaseguraesindependientedelainterpretaciónqueseutilice.
Esevidentequeunaconsultaqueesseguraenunestadodeunabasededatos,cuandocambieeseestado(cuandoinsertamosdatosnuevos,cuandoeliminamos,cuandomodificamos)debeseguirsiendosegura.
Comoveremosacontinuación,sabremosqueunafórmulaesseguraonosinnecesidaddeutilizarvaloresconcretos,unafórmulasiessegura,siempreloserá,seacualseaelcontenidodemibasededatos.
G1x(P(x)→Q(x,y))EsG1unafórmulaseguraLaformadeprocederpasaporverificartodasycadaunadelasvariables,teniendoencuentaquesiparaunadeellasllegamosalaconclusióndequelafórmulanoessegura,nohacefaltacontinuarconelrestodelasvariables.
Paracadavariableprimerohemosdeestablecerlafórmulaquevamosexaminar,ydependiendodesieslibre,ligadaporuncuantificadorexistencialoligadaporununiversal,comprobarquecumpleconladefinicióndefórmulasegura.
Enestecasohaydosvariables,xey:Empecemosporlavariabley.
Alserlibre,lafórmulaaevaluarestodaG1.
Losvaloresdeyquedebemoscomprobarsonlosquehacenciertalafórmula,todovalordeyquehagaciertalafórmuladebeperteneceraldominio.
G1sehaceciertacuandosonciertosP(x)yQ(x,y)ocuandoP(x)esfalso32.
SisuponemosquelaextensióndeP(.
)notienetuplas(representaríaaunatablavacía),lafórmulaG1seráciertavalgaloquevalgaQ(x,y).
Concretamente,seríaciertaparavaloresdeyquenopertenecenaldominiodelafórmula,porloquelafórmulanoessegura33.
Yanoharíafaltacomprobarlavariablex.
32Véaselatabladeverdaddeloperadorimplicación.
33Nótesequeladefinicióndefórmulaseguraesmuyrestrictiva:estafórmulasólodaproblemascuandolaextensióndeP(.
)estávacía,esdecir,paraciertosestadosdelabasededatosnoBD12006-2007116Enrealidad,loquequeremosconstataresquelosvaloresquenopertenecenaldominiodelafórmulanolahacencierta.
Simplificando,yporentendernos,losvaloresnoalmacenadosennuestrabasededatosnodeberíanaparecerenelresultadodelaconsulta.
G2x(Q(x,y)→P(x))LafórmulanoessegurayaquecualquiervalordeyquenopertenezcaasudominiohacefalsoQ(x,y),ylafórmulaseríaciertaparatodox(dedentrodeydefueradeldominio).
G3xy(CONDUCTOR(x,y)→zCONDUCE(x,z))variablex:ligadaporuncuantificadoruniversal.
LafórmulaaevaluarestodaG3.
CualquiervalordexquenopertenezcaaldominiodelafórmulahacefalsoCONDUCTOR(x,y)yportantoG3cierta.
Cómoestosvaloresnolahacenfalsa,lafórmulapuedesersegura.
variabley:ladiscusióneslamismaqueparalavariablex.
variablez:ligadaporuncuantificadorexistencial.
LafórmulaaevaluarestodazCONDUCE(x,z).
CualquiervalordezquenopertenezcaaldominiodelafórmulahacefalsozCONDUCE(x,z).
Comolosvaloresde"fuera"deldominionolahacencierta,lafórmulapuedesersegura.
Lastresvariablesdelafórmulacumplenlasreglasrespectivas;porlotanto,lafórmulaessegura.
G4xy(CONDUCTOR(x,y)∧zCONDUCE(x,z))variablex:ligadaporuncuantificadoruniversal.
LafórmulaaevaluarestodaG4.
CualquiervalordexquenopertenezcaaldominiodelafórmulahacefalsoCONDUCTOR(x,y)yportantoG3falsa.
Lafórmulanoessegura.
devolveríavalores"incorrectos":podríamosdecirqueutilizandofórmulasseguras"nosestamoscurandoensalud".
organizaciónfísicadelasbasesdedatos117G5yCONDUCTOR(x,y)∧zCONDUCE(x,z)Estafórmulaabiertanosdevolveríaaquellosconductoresquenoconducenningúnvehículo.
variablex:eslavariablelibre.
LafórmulaaevaluarestodaG5.
CualquiervalordexquenopertenezcaaldominiodelafórmulahacefalsoCONDUCTOR(x,y)yportantoG4falsa.
Cómoestosvaloresnolahacencierta,lafórmulapuedesersegura.
variabley:ligadaporuncuantificadorexistencial.
LafórmulaaevaluaresyCONDUCTOR(x,y).
CualquiervalordeyquenopertenezcaaldominiodelafórmulahacefalsoCONDUCTOR(x,y).
Comolosvaloresquenopertenecenaldominionolahacencierta,lafórmulapuedesersegura.
variablez:ligadaporuncuantificadorexistencial.
LafórmulaaevaluareszCONDUCE(x,z).
NótesequelanegaciónnoestádentrodelalcancedelcuantificadorCualquiervalordezquenopertenezcaaldominiodelafórmulahacefalsoCONDUCE(x,z).
Comolosvaloresquenopertenecenaldominionolahacencierta,lafórmulapuedesersegura.
Lafórmulaessegurapuestoqueningunavariableincumpleladefinición.
VI5.
cálculorelacionalAhorasabemosqueunabasededatosrelacionalsepuededescribirutilizandoelCPPO.
Esoquieredecir,también,quelapodemosconsultarusandofórmulaslógicas.
Noobstante,ellenguajeylainterpretaciónantesdescritospueden"refinarse"yhacerlosunpocomásútilparalaaplicacióndeseada,paralasbasesdedatosrelacionales.
Sedefinierondoslenguajesdecálculorelacional:orientadoatuplasyorientadoadominios.
Ladiferenciafundamentalentreambosresideeneltipodevariablesquemanejan.
Enelprimerolasvariablessedenominanvariables-tupla,ycomosunombreindicavanadesignartuplasderelaciones.
Enelsegundolenguajelasvariablessedenominanvariables-dominio,yvanatomarvaloresdelosdominiosasociadosalosatributosdelasrelaciones.
Comoyasehadicho,losdoslenguajesestánbasadosenelCálculodePredicadosdePrimerOrden,porloqueutilizaremoslasdefinicionesdeltemaanteriorylasadaptaremosalosnuevostiposdevariables,sinprofundizarmásendichasdefiniciones.
BD12006-2007118VI5.
1.
cálculorelacionalorientadoatuplasEsnecesariorealizarunasligerasmodificacionesalasdefinicionesintroducidaseneltemaanterior,paratenerencuentaelhechodequelasvariablesdeestelenguajesonvariables-tuplay,comoyasehadicho,designantuplasderelación.
Loprimeroesdefinircualeseldominiodeunavariabledeestelenguaje.
Anteriormenteestonohasidonecesarioporquehabíamossupuestounalógicahomogéneay,portanto,estedominiocoincidíaconelconjuntodeconstantesdellenguaje.
Laformaderealizarestaasignaciónesdeclararlavariable.
Cadavariable-tuplaestádefinidasobreunaintensióndeunarelaciónR.
Porejemplo:R(a1:dom1,a2:dom2,.
.
.
,an:domn)Ladeclaracióndelavariable-tuplaseríadelaforma:x:RAsí,declarandolasvariablessobrerelacionesseespecificadondevanatomarsusvalores.
Ennuestroejemplo,lavariablextomarávaloresenelproductocartesianodetodoslosdominiosdeR,dom1*dom2*.
.
.
*domn.
Aclaradoestepunto,pasemosavercualesvanaserlosdiferentesobjetosdeestelenguaje.
Paraempezar,lossímbolosdeestelenguajeseránlosmismosquelosvistoseneltemaanterior,conlaúnicadiferenciadequelasvariablesahorasonvariables-tupla.
Laconstruccióndefórmulasbienformadasprecisa,pues,delosconceptosdetérminoyfórmulaatómica.
términoDecimosquesontérminoscualquieradelasdosexpresionessiguientes:símbolosdeconstantes.
A,dondesesunavariable-tuplayAeselnombredeunatributodelarelaciónsobrelaquesedeclarólavariablefórmulaatómicaDefinimosformulaatómicaoátomocomocualquierexpresióndeltipo:R(s),dondeReselnombredeunarelaciónyseselnombredeunavariable-tuplaquesedeclarósobrelarelaciónRosobreotrarelacióncompatibleconR.
t1t2,dondet1yt2sondostérminosyesunoperadordecomparaciónorganizaciónfísicadelasbasesdedatos119fórmulasabiertasEnelcasodelasfórmulasabiertasaadimosunapequeamodificacióndetalformaquepodemosindicarquéatributosdelasvariableslibressonlosquenosinteresaobtener.
Esdecir,podemosnonecesitarlastuplascompletas,sinosóloalgunosdesusatributos,yloespecificamosasí:{t1,t2,.
.
.
,tn|F}Dondecadatiesuntérmino,yFunaFBFenlaquelasúnicasvariableslibressonlasqueaparecenenlosti.
ejemplos"Matrículaymarcadelosvehículos"x:VEHCULO{x.
matricula,x.
marca|VEHCULO(x)}"Matrículaymarcadelosvehículosde2003"x:VEHCULO{x.
matricula,x.
marca|VEHCULO(x)∧x.
aoFab=2003}"Matrículaymarcadelosvehículosde2003ynúmerodelosconductoresquelosconducen"x:VEHCULOy:CONDUCE{x.
matricula,x.
marca,y.
conductor|VEHCULO(x)∧x.
aoFab=2003∧CONDUCE(y)∧y.
vehículo=x.
matrícula}"Númerodelosconductoresqueconducenvehículosde2003"x:VEHCULOy:CONDUCE{y.
conductor|CONDUCE(y)∧x(VEHCULO(x)∧y.
vehículo=x.
matrícula∧x.
aoFab=2003)}"Aodenacimientodelosconductoresqueconducenvehículosde2003"x:VEHCULOy:CONDUCEz:CONDUCTOR{z.
aoNac|CONDUCTOR(z)∧y(CONDUCE(y)∧z.
número=y.
conductor∧x(VEHCULO(x)∧y.
vehículo=x.
matrícula∧x.
aoFab=2003))}Odeunaformamásconcisa:x:VEHCULOy:CONDUCEz:CONDUCTOR{z.
aoNac|CONDUCTOR(z)∧yx(CONDUCE(y)∧VEHCULO(x)∧z.
número=y.
conductor∧y.
vehículo=x.
matrícula∧x.
aoFab=2003)}"Todoslosconductoresconducenalmenosunvehículo"BD12006-2007120y:CONDUCEz:CONDUCTORz(CONDUCTOR(z)→y(CONDUCE(y)∧z.
número=y.
conductor))VI5.
2.
cálculorelacionalorientadoadominiosLasexpresionesdelcálculorelacionalorientadoadominiosseconstruyensiguiendounosprincipiosanálogosalcálculorelacionalbasadoenvariables-tupla.
Existen,sinembargo,unpequeonúmerodediferencias,siendolaprincipalprecisamenteelconceptodevariable.
Lasvariablesdeestelenguajesedenominanvariables-dominio,ytomanvaloresdelosdominiosasociadosalosatributosdelasrelaciones.
Análogamente,lavariable-dominiovaatomarvaloreseneldominioasociadoaalgunodelosatributosdeunarelación.
Porejemplo:x:domkDeestaformalavariablextomarávaloreseneldominiodomk.
Aclaradoestepunto,veamoslasadaptacionesdelCPPOnecesariasparadefinirellenguaje.
fórmulaatómicaSonfórmulasatómicasoátomoslasexpresionesdelaforma:R(a1:t1,a2:t2,.
.
.
,an:tn),dondeResunarelacióndegradoigualanosuperior,a1,a2,.
.
.
,ansonatributosdeRyt1,t2,.
.
.
,tnsontérminos.
Lostérminoshandeperteneceralosdominiosasociadosalosatributosdelarelaciónt1t2,dondet1yt2sondostérminosyesunoperadordecomparaciónAligualqueenelcálculorelacionalorientadoatuplas,aadimosunapequeamodificaciónenlasfórmulasabiertasindicandoquévariablessonlibres:{x1,x2,.
.
.
,xk|F}LasúnicasocurrenciasdevariablelibresqueapareceránenFsonx1,x2,.
.
.
,xk;elrestodeocurrenciasseránligadas.
Laevaluacióndeestaexpresióndarácomoresultadounarelaciónk-aria,demaneraquealsustituircadaunadelasvariableslibresporlosvaloresdelosatributosdeunadelastuplasdeestarelación,dacomoresultadounafórmulacerradaqueseevalúaacierto.
organizaciónfísicadelasbasesdedatos121ejemplos"Matrículaymarcadelosvehículos"x:cadena(9)y:cadena(30){x,y|VEHCULO(matrícula:x,marca:y)}"Matrículaymarcadelosvehículosde2003"x:cadena(9)y:cadena(30){x,y|VEHCULO(matrícula:x,marca:y,aoFab:2003)}"Matrículaymarcadelosvehículosde2003ynúmerodelosconductoresquelosconducen"x:cadena(9)y:cadena(30)z:cadena(2){x,y,z|VEHCULO(matrícula:x,marca:y,aoFab:2003)∧CONDUCE(conductor:z,vehículo:x)}"Númerodelosconductoresqueconducenvehículosde2003"x:cadena(9)y:cadena(30)z:cadena(2){z|x(CONDUCE(conductor:z,vehículo:x)∧VEHCULO(matrícula:x,aoFab:2003))}"Aodenacimientodelosconductoresqueconducenvehículosde2003"x:cadena(9)y:cadena(30)z:cadena(2)t:entero{t|z(CONDUCTOR(número:z,aoNac:t)∧x(CONDUCE(conductor:z,vehículo:x)∧VEHCULO(matrícula:x,aoFab:2003)))}"Todoslosconductoresconducenalmenosunvehículo"x:cadena(9)z:cadena(2)z(CONDUCTOR(número:z)→xCONDUCE(conductor:z,vehículo:x))BIBLIOGRAFA[DATE2000]J.
D.
UllmanPrinciplesofDatabaseSystemsComputerSciencePress,1982M.
JesúsCastel,FaraónLlorensLógicadePrimerOrdenDelobel,C.
;Adiba,M.
RelationalDatabaseSystems.
BD12006-2007122ElsevierScienciePublishersB.
V.
,1985.
Hamilton,A.
G.
LógicaparaMatemáticosEd.
Paraninfo,1981.
M.
L.
Brodie,J.
L.
MylopoulosyJ.
W.
Schmidt(eds),TowardsaLogicalReconstructionofRelationalDatabaseTheory.
"OnConceptualModelling"Ed.
Springer-Verlag,1984.
123VIIORGANIZACINFSICADELASBASESDEDATOS1.
INTRODUCCIN2.
CONCEPTOSBSICOS3.
FICHEROS4.
IMPLEMENTACIONDEBASESDEDATOSRELACIONALESLasbasesdedatos,independientementedelmodelodedatosquesehayausadoparasudiseo,sealmacenanfísicamentecomoficherosderegistros,loscualessealmacenannormalmenteendiscosmagnéticos.
Duranteestetemapresentaremoscómoseorganizalabasededatosensuespaciodealmacenamiento,ycuálessonlastécnicasqueseusanparaaccederaestosdatosdelaformamáseficazyrápidaposible.
125VII1.
introducciónLacoleccióndedatosqueconstituyeunabasededatosdebeestaralmacenadaenunmediodealmacenamientodelordenador.
Deestamanera,elSGBDserácapazderecuperar,actualizaryprocesardichosdatossiemprequeseanecesario.
Losmediosdealmacenamientoenunordenadorformanunajerarquíallamadajerarquíadealmacenamientoojerarquíadememoriaquecontienedoscategoríasprincipales:elalmacenamientoprimario:queincluyelamemoriaprincipalylamemoriacaché,mediosdealmacenamientomuyrápidosaunqueconcapacidadlimitada.
elalmacenamientosecundario:queincluyediscosmagnéticos,discosópticos,cintas,etc.
,todosellosmediosdealmacenamientodegrandescapacidades,aunqueconunaccesomuchomáslento.
Sibienelniveldealmacenamientoprimariosecaracterizaporsermáscaroyrápidoqueelsecundario,podemosdecirquedentrodecadaunodeestosniveleshaysubnivelesatendiendotambiénaestoscriteriosdecosteyvelocidad.
Así,enelniveldealmacenamientoprimariodestacamoslossubniveles:memoriacaché:eslacapamáscaradelajerarquíaysetratadeunamemoriaRAMestática,usadaporlaCPUparaaumentarlavelocidaddeejecucióndelasmáquinas.
Volátil.
memoriaDRAM(RAMdinámica)omemoriaprincipal:usadaporlaCPUparamantenerlosprogramasylosdatos.
MáslentaquelaRAMestáticaaunquemásbarata.
Volátil.
memoriaflash:memorianovolátilsituadaenelúltimosubnivel,dentrodelnivelprimario.
Enelniveldealmacenamientosecundariosedestaca:losdiscosmagnéticos:siendolosmásrápidosdeestenivel.
losdiscosCD-ROM(CompactDiskReadOnlyMemory)ysuversiónreescribibleCD-RW:basadosentecnologíaópticaconlecturaláser.
lascintas:enelnivelmásbarato.
Encualquiercaso,tantoelniveldealmacenamientoprimariocomoelsecundarioseusanparaalmacenarbasesdedatos.
Lamemoriaprincipal,siemprequetengacapacidadsuficiente,puedeserusadaparaalbergardatos(opartedeellos),manteniendosiempreunacopiaderespaldoenmemoriasecundariaparaevitarlosproblemasquepodríaocasionarlavolatilidaddelaprimera.
Sinembargo,enlagranmayoríadelasocasiones,eltamaodelabasededatosimpidesualmacenamientoenunamemoriaprimaria,ysemantieneenalmacenamientosecundarioutilizandolamemoriaprimariaparacargaríndicesqueaumentanlavelocidaddeaccesoalosdatos.
Dentrodelajerarquíadelalmacenamientosecundario,elprincipalsoporteusadohastaelmomentoparaelalmacenamientodelasbasesdedatoseseldiscomagnético,yaunquepuedequeenelfuturolosCD-ROM,DVDyotrastecnologíasusurpenelespacioqueactualmenteocupaeldiscomagnético,porelmomentonoscentraremosenesteúltimocomolaprincipalfuentedeBD12006-2007126almacenamientoparabasesdedatos.
Asíenestetemanoscentraremosenelestudioycomprensióndelaspropiedadesycaracterísticasdelosdiscosmagnéticosylaformaenquesepuedenorganizarlosficherosdedatoseneldiscoconelfindeobtenerbasesdedatosconunrendimientoadecuado.
Lastécnicasusadasparaelalmacenamientodegrandescantidadesdeinformaciónendiscodebenserconocidastantoporlosdiseadorescomoporlosadministradoresdebasesdedatos,asícomo,evidentementeporlosdiseadoreseimplementadoresdelSGBD.
VII2.
conceptosbásicosParacomenzarconelestudiodelastécnicasusadasenelalmacenamientodedatosenlosdiscosmagnéticos,esnecesariorecordaralgunasdelascaracterísticasprincipalesquetienenestosmedios.
Comenzaremosporrepasarelhardwaredelosdiscos.
ELDISCOMAGNTICOEldiscomagnéticosirveparaalmacenargrandescantidadesdedatos.
Aunqueoriginalmenteseconstruíandeunasolacara,coneltiemposeconstruyerondiscosdedoscaras,capacesdealbergarinformaciónenlasdossuperficies,einclusoformandopaquetesdediscosdondelosdatosseorganizanenvariassuperficies.
Lainformaciónalmacenadaenundiscoseencuentraencírculosconcéntricosdepequeaanchuraquesedenominapistayquevaríandediámetroconformesealejanoseacercanalejedeldisco.
Enlospaquetesdediscos,todaslaspistasdecadadiscoquetienenelmismodiámetroseorganizanformandouncilindro.
Elconceptodecilindroesimportanteparaelalmacenamientodeunabasededatos,yaquelosdatosqueseencuentranenmismocilindrosepuedenleerconmayorrapidezquesiseencuentranenvarioscilindros,debidoaquelascabezaslectorasdeldiscosoncapacesdeleersimultáneamentelosdatosdetodaslaspistasdeunmismocilindro.
Puestoqueunpistapuedecontenergrancantidaddeinformación,éstasepuedeorganizarasuvezenunidadesmenoresllamadassectores.
Finalmente,enlafasedeformateodeldisco,elsistemaoperativorealizaladivisióndelapistaenunidadesdeigualtamaollamadasbloquesdediscoopáginas.
Elmecanismohardwarequeseencargadeescribiroleerlosbloqueseslacabezadelectura/escrituradeldiscoquesemanejagraciasaunbrazomecánico.
Estaestructurajuntoconeldisco,yelmotordeldisco,formanlaunidaddedisco.
Además,elcontroladordedisco(situadogeneralmenteenlaunidaddedisco)controlayhacedeinterfazentreéstayelordenador.
ElcontroladoraceptainstruccionesdeE/Sdealtonivelyrealizalasaccionesoportunasparacolocarelbrazoydarlaordendelecturaoescritura.
Unavezconocidaladireccióndelbloquealaquesedeseaacceder,elcontroladordedisconecesitauntiempo(entre8y14mseg)paracolocarlacabezasobrelapistacorrecta.
Estetiemposeconocecomotiempodebúsqueda.
Unavezsituadalacabezasobrelapista,esnecesarioqueeldiscogirehastasituareliniciodelbloquebajolacabezagenerándoseotroretardollamadoretadorotacionalolatencia.
Porúltimodeberátranscurriruntiempoadicionalparalatrasferenciadelosdatos,conocidocomotiempodetransferenciadeorganizaciónfísicadelasbasesdedatos127bloque.
Paramejorarlaeficienciaenlatransferenciadebloques,sesuelentransferirvariosbloquesconsecutivosdelamismapista,einclusodelmismocilindro.
Figura1.
PartesprincipalesdeldiscomagnéticoResumiendo,eltiemponecesarioparalocalizarytransferirunbloqueeslasumade:tiempodebúsqueda+latencia+tiempodetransferenciadebloqueEstetiemposuelevariarentre12y60msegdependiendodelfabricante.
Esportantocruciallaeleccióndeunbuendiscodurocomounodelosfactoresdeéxitoenlaimplantacióndeunabasededatos.
TECNOLOGARAIDPeseaquelatecnologíaeneldesarrollodedispositivosdealmacenamientosecundario(especialmentediscosduros)haevolucionadoespectacularmente,lasprestacionesquesepuedenalcanzarconunaúnicaunidaddediscoresultaninsuficientesparaelalmacenamientoeficientedegrandescantidadesdedatos.
EsporestemotivoporelquesehadesarrolladolatecnologíaconocidaconelnombredeRAID(RedundantArrayofInexpensiveDisk).
LaideaoriginaldeRAIDfueladeigualarlosrendimientosdelosdiscosalosdelosprocesadoresymemoriasprincipales.
MientraslacapacidaddelaRAMsecuadruplicacadadosotresaos,lostiemposdeaccesoadiscoapenasmejoranun10%alao,ylostiemposdetransferenciamenosdeun20%.
ComosoluciónRAIDplanteacrearunarraydepequeosdiscosindependientesqueactúancomounúnicodiscológicodealtorendimiento.
Además,seutilizaunaestrategiadealmacenamientoconocidacomodatastriping(franjeodedatos)quesebasaenelparalelismo.
Segúnestatécnicaunmismoficherosedistribuyeentrevariosdiscosparaquesulecturacompletaserealicesimultáneamentedesdetodoslosdiscos.
ElaccesoenparaleloatodoslosdiscosesmuchomásrápidoqueunaccesosecuencialaBD12006-2007128unodeellos.
Deahíquelaslecturasyescriturasdelosdatosresultenmuchomásrápidas.
Figura2.
DatastripingenRAIDRAIDtienecomoobjetivoprincipalmejorarelrendimientodelosdiscosmagnéticos,aunquesinolvidarunaspectofundamentalqueeslafiabilidad.
Paraunarraydendiscos,laposibilidaddefalloesnvecesmayorqueparaunúnicodisco.
Elmantenimientodeunaúnicacopiadelosdatosenestetipodeestructuraconllevaríaunaimportantísimapérdidadefiabilidad.
Lasoluciónesintroducirredundanciadedatos.
Unatécnicaquepermitelaredundanciaesloqueseconocecomomirroringoshadowing,tambiénconocidoenespaolcomoespejo.
Segúnestatécnica,losdatosseescribenfísicamenteendosdiscosdiferentesdeformaredundante.
Alleerlosdatos,éstosserecuperandeldiscoquetengamenoscargadepeticiones,oqueseamásrápido.
Siundiscofalla,seusaelotrohastaqueserepareelprimero.
ORGANIZACINYNIVELESRAIDHaydiferentesorganizacionesRAIDatendiendoalaformadehacerelfranjeodelosdatosyalaformadeaccederalosdatosredundantes.
Estasorganizacionessejerarquizanen7niveles:desdeRAIDnivel0hastaRAIDnivel6.
RAID0notieneredundanciadedatos.
DetodaslasorganizacionesRAID,éstatieneelmejorrendimientoenescriturayaquenotienequeduplicarmodificaciones.
Sinembargo,elrendimientoenlecturaesmenor.
RAID1yaplantealaredundanciadedatosmediantediscosespejo.
ElrendimientoenlecturaesmayorqueenRAID0debidoaquelapeticióndelecturaseaplicaaldiscoqueseamásrápidoencadamomento.
RAID2optimizaelalmacenamientodeinformaciónredundantealalmacenarloscódigosdedeteccióndeerror(bitsdeparidad)unaúnicavez(nounaparacadacopiacomoocurreenRAID1)comunes.
Deestamanera,unejemploconcretode4discos,sólonecesitaría3discosespejo(enlugardelos4quenecesitaRAID1).
RAID3aRAID6optimizanRAID2condiferentesestrategiasparadeteccióndeerroresqueminimizanelnúmerodediscosnecesariosaumentandoelrendimientodelsistemasinperderfiabilidad.
Comoconclusiónparaesteapartadopodríamosconcluirqueeldiscomagnéticoesunadelasfuentesdealmacenamientosecundariomásextendidasparaelalmacenamientodebasesdedatos.
Sinembargo,laorganizaciónfísicadelasbasesdedatos129evolucióntecnológicadeldiscomagnéticonohasidotanespectacularcomolohasidolaevolucióntecnológicadelamemoriaRAModelosprocesadores.
Porestemotivohasidonecesariolaintroduccióndetécnicasdealmacenamientoredundantequehanconseguidomejorarlosrendimientosdeestosdispositivos.
Enconcreto,laorganizaciónRAIDesunadelasmásextendidasenlosservidoresquetienencomoprincipalmisiónelalmacenamientodegrandesbasesdedatos.
Unavezsentadoslosfundamentosdel"hardware"queseusaparalaimplementacióndelasbasesdedatos,introduciremosalgunosconceptossobrecómosealmacenafísicamenteunfichero.
VII3.
ficherosElficheroeslaorganizaciónbásicadealmacenamientoendisco,yportantoeslaorganizaciónempleadaparalaimplementacióndeunabasededatos.
Paraintroducirelconceptodeficheroesnecesariointroducirpreviamenteelconceptoderegistro.
VII3.
1.
registroUnregistroesunacoleccióndevaloresoelementosdedatosrelacionadosdondecadavalorestáformadoporunoomásbytesycorrespondeaundeterminadocampodelregistro.
Porreglageneral,cadaregistrorepresentaaunaentidad,ycadavalordecampoeneseregistrorepresentaaunatributodeesaentidad.
Lalistadenombresasociadosacadacampoylostiposdedatosquesealmacenanenellosconstituyenloquesellamaelformatodelregistro.
Actualmentelasbasesdedatostambiénincluyengrandesobjetosquenopuedenserestructuradosencamposcomoimágenes,secuenciasdevideo,secuenciasdeaudio,oinclusotextolibre.
EstosobjetosseconocencomoBLOB(BinaryLargeOBjects)yporlogeneralsealmacenanapartedesuregistro,enunáreadebloquesdedisco,yseincluyeunpunterodesdeelregistroalBLOB.
VII3.
2.
ficheroUnficherosedefinecomounasecuenciaderegistros.
Sitodoslosregistrosdeunficherotienenlamismalongitudselesconocecomoregistrosdelongitudfija.
Sinembargo,sicadaregistrotieneunalongituddiferentehablaremosderegistrosdelongitudvariable.
Estonosproporcionadiferentesorganizacionesparaelalmacenamientodelosregistros:a)almacenamientoderegistrosdelongitudfija:elregistrotieneunalongitudconocidaycadacampoocupaunaposiciónconocidadentrodelregistro.
ParaaccederaalgunodeellosúnicamenteesBD12006-2007130necesarioconocersuposicióndeinicioydefindelcampoenelregistro.
110152033CampoPosicióninicioPosiciónfinNOMBRE19CDIGO1014DEPARTAMENTO1519DIRECCIN2033b)almacenamientoderegistrosdelongitudvariableformadosporcamposdelongitudfijaycamposdelongitudvariable:seutilizancaracteresespecialesparadelimitarelfinaldeuncampodelongitudvariable,yseusanlaslongitudesconocidasdeloscamposdelongitudfijaparaconocersuslímites.
1nn+6n+10CampoPosicióninicioPosiciónfinNOMBRE1n-1CarácterfinJNnCDIGOn+1n+5DEPARTAMENTOn+6n+10DIRECCINn+11m-1CarácterfinJMmc)almacenamientoderegistrosdelongitudvariableformadosporcamposdelongitudvariableyalgunosdeellosopcionales:Laexistenciadecamposoptativosobligaaalmacenarjuntoconcadacampoelnombredelcampo.
Asíseintroducentrestiposdecaracteresespecialesseparadores:separadordelnombredelcampo,indicadordefindecampoeindicadordefinderegistro.
CarácterseparadordenombredecampoCarácterindicadorfindecampoCarácterindicadorfinderegistroLosficherosconstituyenlaunidadbásicaenelalmacenamientofísicodelasbasesdedatos.
Anivelpráctico,podemosconsiderarquecadatabladeunesquemalógicodefinidasobreelmodelorelacionalseconvertiráenunfichero(oconjuntodeficheros)queserámanejadoporelsistemaoperativodesdeelSGBD.
ALBERTOALB01ADMONMAYOR,24-3DALBERTOALB01ADMONMAYOR,24-3DnombreBERTOdireMAYOR,24-3DALcioncorganizaciónfísicadelasbasesdedatos131VII3.
3.
operacionesconficherosLasoperacionesqueserealizanconlosficherossepuedenclasificarenoperacionesderecuperaciónyoperacionesdeactualización,encargadasdeleerydeescribirdatosrespectivamente.
Encualquieradelosdoscasosesnecesariorealizarunaselecciónpreviadelregistroconelquesequieretrabajarmedianteunacondicióndeselecciónofiltroqueespecificaloscriteriosquedebesatisfacerelregistrooregistrosconlosquesevaaoperar.
Quienseencargadeaccederfísicamentealosficheros,yportanto,quienejecutalasoperacionesderecuperaciónyactualizacióndeficheroseselsistemaoperativo.
Sinembargo,lacondicióndebúsquedadebeestablecersedesdefueradelsistemaoperativo.
Cuandosetrabajaconunabasededatos,elencargadodeestableceresacondicióndeseleccióneselpropioSGBD.
Unacondicióndeselecciónsimplepuedeserunacomparacióndeigualdaddeunvalorparauncampo,porejemplo,dni='22233334'.
Sinembargo,enbasesdedatosesfrecuenterealizarseleccionesconmúltiplescondiciones(yaconocemoslacomplejidadselectivaquepuedellegaratenerunasentenciaSELECTdeSQL).
Enestecaso,elSGBDdebedescomponerlaselecciónensusmúltiplescondicionesparaaccederalregistroadecuado.
Porejemplo,siunusuariosolicita"empresasdeMurciaquetienenmásdetresempleados",supreguntalatraduciráaunaconsultaSQLcomo:SELECT*FROMempresasWHEREciudad='murcia'ANDempleados>3EstaconsultaseintroduceenelSGBD.
Sinembargo,elsistemaoperativonopodráinterpretarSQL.
Porestemotivo,elSGBDtendráquetraducirestaaconsultaunaoperaciónderecuperaciónquedeberáobtenerelregistro(oregistros)quecumplalasdossiguientescondicionesdeselección:a)campociudaddelficheroempresas='murcia'b)campoempleadosdelficheroempresas>3Cuandohayvariosregistrosquesatisfacenlacondicióndeselección,inicialmenteelsistemaoperativoúnicamenteledevuelvealSGBDelprimerregistroquecumpleconesaselección,aunqueleproporcionaunpunteroalsiguienteparaqueelSGBDpuedairrecorriendolacadenaderegistrosseleccionada.
Pararealizarestabúsqueda,lamayoríadelosSGBDdisponendelassiguientesinstruccionesimplementadasatravésdelsistemaoperativo:Abrir:preparaunficheroparasulecturaoescritura.
Sisepuede,cargaenmemoriaprincipallosbloquesdeldiscoquecontienenalfichero,sinopuede(porfaltadememoria)cargaráunapartedelfichero(almenoslacabecera).
Ademássitúaelpunteroalprincipiodelficheroparainiciarlaoperación.
Volveralprincipio:poneelpunterodeunficheroabiertoenelprincipio.
Buscar:localizaelprimerregistroquesatisfaceunacondicióndebúsqueda,ytransfiereesebloquedediscoamemoriaprincipal(sinoestáya).
Leer:copiaelcontenidodelregistroenunavariabledelprograma.
Buscarsiguiente:buscaelsiguienteregistroquesatisfacelacondicióndebúsquedaespecificadaenlaúltimaoperaciónbuscarefectuada.
Cargaelbloqueenmemoria(sinolotieneya).
Eliminar:eliminaelregistroactualdelficheroyactualizaelficheroeneldisco.
Modificar:modificavaloresdealgunoscamposdelregistroyactualizaelficheroeneldisco.
BD12006-2007132Insertar:insertaunnuevoregistroenelficherolocalizandoelbloquedondesedebeinsertar,trasfiriéndoloamemoriaprincipal,insertándolo,yvolviendoaescribirelbloqueeneldisco.
Cerrar:finalizaelaccesoalficheroliberandolamemoriaprincipalocupadaporél.
VII3.
4.
organizacionesdeficherosusadasparabasesdedatosEnelalmacenamientodelosdatos,laorganizacióninternadelficherotienetambiénsuimportancia.
Laorganizacióndelosficherosdebefacilitarlalocalizacióndelosregistros,especialmenteenlasbúsquedasqueserealizansobredeterminadoscampos.
Porejemplo,sideseobuscarunclienteporsudni,elficheroquecontienealosclientesdelabasededatosdeberíaestarordenadofísicamenteporestevalorodefiniruníndicesobreestecampo.
Sinembargo,sisobreelmismoficherodeseobuscarlosclientesqueresidenenunamismaciudad,senecesitaríaagruparfísicamentelosdatosporelcampociudadparaobtenerunarespuestaeficiente.
Apriori,estaorganizaciónnoescompatibleconlaanterior,sinembargo,vamosaestudiaracontinuacióndiversostiposdeorganizaciónquepuedenserútilesparahacercompatiblesdichasorganizaciones.
Ficherosdemontículo(heap)Losficherosdemontículooheapconstituyeneltipomássimpledeorganización.
Losregistrossecolocanenelmismoordenenelqueseinsertan.
Estaorganizaciónsimplificaalgunasdelasoperacionesaunqueotrassehacenmáscomplejas.
VII3.
4.
1.
1.
InserciónCadaregistronuevoseinsertaalfinaldelficherodelasiguienteforma:a)seconsultaenlacabeceradelficheroladirecciónfísicadelúltimobloquedediscoparaesefichero,b)secopiaelbloqueamemoriaprincipal,c)seaadeelnuevoregistro,d)sereescribeelbloqueeneldisco,e)seactualizalacabeceradelficheroconladireccióndelúltimobloquededisco(sihacefalta).
Laoperaciónserealizadeformasencillayeficiente.
organizaciónfísicadelasbasesdedatos133VII3.
4.
1.
2.
BúsquedaPorelcontrario,enestetipodeorganizaciónlabúsquedadeundeterminadoregistrodeacuerdoaunacondicióndebúsquedaserealizacomprobandoregistroaregistro,loquesuponefísicamenteunalecturabloqueabloquedeldisco.
Enunficherodenbloques,serequiererealizarn/2comprobacionesportérminomedio.
VII3.
4.
1.
3.
BorradoParaeliminarunregistrohayque:a)buscarelbloquedediscodondeseencuentraelregistro,b)copiarelbloqueamemoriaprincipal,c)eliminarelregistro,d)rescribirelbloqueendisco.
Solamenteelprimerodelospasos(labúsqueda)yatienecomplejidadsuficienteparahacerlaoperaciónpocoeficiente.
Además,seránecesariopasarunprocesoperiódicodereorganizacióndelficheroyaqueloshuecosquequedanlibresporlaseliminacionesnuncaserellenanporloquesedesperdiciaespacio.
VII3.
4.
1.
4.
ActualizaciónLaactualizacióndeunregistroserealizasegúnlossiguientespasos:a)buscarelbloquedediscodondeseencuentraelregistro,b)copiarelbloqueamemoriaprincipal,c)modificarelregistro,d)rescribirelbloqueendisco.
Elprocesodenuevosecomplicaenelprimerpaso,perotambiéntieneunacomplicaciónaadidacuandoseusanregistrosdelongitudvariable.
Siunregistrosemodificaampliandosulongitudpuedequeyanotengaespaciosuficienteensubloqueparapoderalbergarlo.
Enesecaso,laoperacióndeactualizaciónseconvertiríaendosoperaciones:borradodelregistroantiguo+insercióndeunonuevoalfinaldelfichero.
VII3.
4.
1.
5.
LecturaLalecturadelficherosegúnundeterminadocriterio(porejemplo,porordenalfabéticodelnombre,oporordendedni)requierehacerunacopiadelficherosegúnesteorden,obien,sieltamaoesexcesivoutilizarficherosdeíndicesexternos.
BD12006-2007134Ficherosordenados(osecuenciales)Losficherosordenadossecaracterizanportenerunordenfísicosegúnlosvaloresdeunodesuscampos,llamadocampodeordenación.
Sielcampodeordenacióntieneademáspropiedadesdeidentificador(esdecir,siempretienevalorynoserepite)seconocecomoclavedeordenacióndelfichero.
Figura3.
FicherosecuencialLosficherosordenadosplanteanciertasventajassobrelosficherosdemontículo:a)lalecturaderegistrosenelordenfísicoalmacenadoesextraordinariamenteeficiente,b)losaccesosaregistrosenordenconsecutivonorequierecambiardebloqueenlamayoríadeloscasos,porloquenoseefectúanmuchosaccesosadisco,c)lascondicionesdebúsquedaqueafectanavaloresdeuncampoclavedeordenaciónsonmuyeficientescuandoseempleanorganizaciónfísicadelasbasesdedatos135estrategiasdebúsquedasbinarias.
Unabúsquedabinariaaccedenormalmentealog2(n)bloques,encuentreonoelregistroquebuscaentrenbloques.
Sinembargo,sigueplanteandoalgunasdesventajas.
Analicemosunaaunalasdiferentesoperaciones.
VII3.
4.
1.
6.
InserciónLainserciónesunaoperacióncostosayaquesedebeconservarelordenfísicodelosregistros.
Sedebe:a)encontrarlaposiciónparaelnuevoregistroenelficherosegúnelcampodeordenación,b)abrirespacioenelbloquecorrespondiente,desplazandoelrestodelosregistros.
Estaúltimafasedelaoperaciónesespecialmentedura,yaquesignificaquesetienequeleeryvolveraescribirunamediaden/2bloquesparaunficherodenbloques.
VII3.
4.
1.
7.
BúsquedaLabúsquedaporuncampodeordenaciónyasabemosqueesextremadamenteeficiente,sinembargolabúsquedaporcualquierotrotipodecamposeconvierteenunatareadebúsquedalinealcomoloeraenelficherodemontículo.
VII3.
4.
1.
8.
BorradoElborradoserealizaexactamenteigualqueenelficherodemontículo.
Siguesiendounaoperacióncostosa.
Laúnicadiferenciaestribaenquelabúsquedadelregistroaborrarserámáseficientesisebuscaporelcampodeordenación.
VII3.
4.
1.
9.
ActualizaciónLaactualizaciónserealizadelamismamaneraqueenlosficherosdemontículo.
Sólounpardediferencias:a)elprocesodebúsquedaesmáseficiente,b)siloquesehamodificadoeselvalordelcampodeordenación,entoncesseconvierteenunaoperacióndeborrado+insercióndelregistroensunuevaubicación,conlacomplejidadqueelloconlleva.
BD12006-2007136VII3.
4.
1.
10.
LecturaLalecturasecuencialdelficheroordenadoesmuyeficientesiemprequesesigaelcampodeordenación.
Encualquierotrocasoesigualquelalecturadeunficherodemontículo.
Ficherosdedireccionamientocalculado(hashing)Losficherosdedireccionamientocalculado,tambiénconocidoscomodispersosohashing,proporcionanunaccesomuyrápidoalosregistrosbajociertascondicionesdebúsqueda.
Lacondicióndebúsquedaserealizasobreunúnicocampodelregistroconocidocomocampodedireccionamientocalculado.
Estecampotambiénsellamaclavededireccionamientocalculado.
Elfuncionamientodeestaorganizaciónsebasaenestablecerunafunciónhllamadafuncióndedireccionamientocalculado,queunavezaplicadasobreelvalordelcampodedireccionamientocalculadodeunregistroproduciríaladireccióndelbloquedediscoenelquesealmacenaelregistro.
Unavezobtenidoelbloquesecopiaamemoriaprincipalyserealizalabúsquedadelregistrodentrodelbloque.
Unafuncióndedireccionamientocalculadomuycomúnparacamposdedireccionamientocalculadoconvalornuméricoes:h(K)=KmodMdondeKeselvalordelcampo,yMeselnúmerototaldebloquesdediscodondesealmacenanlosregistros.
Asíporejemplo,sisevanausar20bloques,yelcampodedireccionamientocalculadoDNItienevalor=21987239,lafunciónhdevuelveh(21987239)=21987239mod20=19Estoindicaríaqueelregistrocorrespondientealvalordedni21987239sealmacenaenelbloquenúmero19.
Apartirdeahíyasólorestaconocerladirecciónfísicadeesebloqueycopiarloamemoriaprincipal.
Figura4.
LocalizaciónfísicadelosbloquescalculadosendiscoLosficherosbasadoseneldireccionamientocalculadoplanteanmuchasventajasrespectoalosdemontículooalosordenados.
a)Lasbúsquedasserealizandemanerarápidaencualquieradeloscamposdebúsqueda.
organizaciónfísicadelasbasesdedatos137b)Losdatosseinsertaneneldiscodeformadispersa,locualpermitefácilmentelasoperacionesdeborrado,inserciónyactualización,sinnecesidaddereorganizarelfichero.
VII3.
5.
estructurasdeíndicesparaficherosEnelapartadoanteriorhemospodidocomprobarquehaydiferentesorganizacionesprimariasparaalmacenarlainformación:organizacióndemontículo(noordenada),organizaciónordenada,yorganizacióndedireccionamientocalculado(dispersaohashing).
Sinembargo,estasestructuraspuedennosersuficientesparalasnecesidadesdeunabasededatos.
Enmuchoscasosesnecesariohacerusodeunasestructurasdeaccesoauxiliaresllamadasíndicesqueseempleanparaaumentarlavelocidadderecuperaciónderegistrosbajociertascondicionesdebúsqueda.
Losíndicesproporcionancaminosalternativosparaaccederalosregistrossinqueseveaafectadalaposiciónfísicaquelosregistrosocupandentrodeldisco.
Loscamposdeunregistroqueseutilizanparaconstruiruníndicesedenominancamposdeindexación.
Cualquiercampodelregistropuedeseruncampodeindexación,yunmismoficheropuedeincluirmúltiplesíndices(esdecirmásdeuncampodeindexaciónporregistro).
Elfuncionamientodelíndiceeselsiguiente:cuandoseproduceunacondicióndebúsquedaqueafectaauncampodeindexación,enlugardeaccederdirectamentealficherodedatosparainiciarlabúsqueda(segúnlaorganizaciónpropiadelficherodedatos:montículo,ordenadaodireccionamientocalculado),seaccedepreviamenteaunfichero(llamadoíndiceoficherodeíndice)dondeseencuentranlosvaloresdelcampodeindexacióncorrespondienteordenadossegúnlaorganizaciónpropiadelficherodeíndice,juntoconunpunteroquesealafísicamentealbloquedediscoquealbergaaeseregistroenelficherodedatos.
Elaccesoalregistroyaesunatareatrivialsegúnhemosvisto.
Elusodeíndicespermite:a)realizarbúsquedaseficientesenficherosdedatosorganizadosenmontículo(siníndicesrecordemosquesetratabadeunalentabúsquedabloqueabloque)b)accederdeformaeficientemediantecondicionesdebúsquedaqueafectanacualquiercampoenunficheroordenado(recordemosqueestaorganizaciónsóloseaccedíadeformaeficientecuandolabúsquedaserealizabasobreelcampodeordenación,yésteeraúnicoparaundeterminadofichero).
c)accederdeformaeficientemediantecondicionesdebúsquedaqueafectanacualquiercampoenunficherocondireccionamientocalculado(ésteaccededeformaeficientecuandolabúsquedaserefierealcampodedireccionamientocalculado,perolasbúsquedasporotroscampossetienenquerealizarsecuencialmente).
Laimplementacióndelosficherosdeíndiceserealizamedianteorganizaciónordenada,omedianteelempleodeestructurasdedatosenárbol(árbolesbinarios)queoptimizanlasbúsquedas.
BD12006-2007138Figura5.
FuncionamientodelíndicesobreunficheroconorganizaciónordenadaVII4.
implementacióndebasesdedatosrelacionalesLasbasesdedatosrelacionales,comocualquierotrabasededatos,necesitaunaestructurafísicadealmacenamientobasadaenelusodeficheros.
Aunquelosficherosbasadosendireccionamientocalculadotienenunaccesomuypotente,suimplementaciónescomplejaynosiempreesrentablesucoste.
Paralaimplementacióndetablasquetienenmuchavolatibilidad,esdecir,quecrecenydecrecenrápidamente,puedeserespecialmenteaconsejableelusodeficherosdedireccionamientocalculado.
Sinembargo,paralastablasquetienenpocamovilidadpuedesersuficienteconficherosdemontículooficherosordenados.
Elapoyodeficherosdeíndicequepermitenlocalizarlosregistrosrápidamentesiguiendocualquiercondicióndebúsqueda,sehaceorganizaciónfísicadelasbasesdedatos139especialmentenecesariocuandoseimplementanlasbasesdedatosrelacionales.
PensemosquelainstrucciónSELECTdeSQLpermiterealizarbúsquedasqueafectanacualquiercolumnadelatabla,porloquesetraducefísicamenteencondicionesdebúsquedaqueafectanacualquiercampodelregistro.
Engeneral,elusodeunouotrotipodeorganizacióndeficherosdependedequeelSGBDpermitasuuso(notodoslosSGBDimplementanficherosdedireccionamientocalculado),ydelcriterioquetomeeladministradordelabasededatosacercadelaimplementaciónconcretadecadatabla.
Elusoonodeficherosdeíndicequemejorenlavelocidaddebúsquedaderegistrosquedatambiénajuiciodelpropioadministrador.
Parafacilitarlatareadeladministrador,elSGBDsuelemostrarestadísticasdeusoytiemposdeaccesoacadaunodelosficherosqueimplementanlabasededatos.
Conestosdatos,eladministradorseencargarádehacerlosajustescorrespondientes(operaciónconocidacomotunning)tomandolasoportunasdecisionesrespectoalaorganizacióndelosficheros.
BIBLIOGRAFA[ELMASRI2002]141VIIISISTEMASDEGESTINDEBASESDEDATOSPorlosproblemasqueplanteabanlosantiguossistemasdeinformaciónmecanizadosporordenadorbasadosenarchivoconvencional,seintentódesarrollarunnuevoenfoquealagestióndelosdatosquegarantizaralomáximoposiblelaindependenciadelasaplicacionesfrentealosdatos,laintegridadylaseguridaddelosmismos.
Aparecióelconceptodebasededatosyelsoftwarequelomanejaba:lossistemasdegestióndebasesdedatos.
SeveráenestetemacualeslaestructuradeunSGBDylafuncionalidadqueofrece,yquéloshaceunaopciónmuchomásapeteciblealahorademanejargrandesvolúmenesdedatos.
Engeneral,seofreceráunavisiónintroductoriadequéesunSGBD,cómofuncionayparaquésirve.
Lapartefinalaborda,superficialmente,losproblemasdeindependencia,integridadyseguridaddelosdatos.
Dadalacrecienteimportanciadelconcepto,seintroducelaarquitecturacliente-servidorcomounavisióndistintadelaccesoalosSGBD.
BD12006-2007142VIII1.
técnicasdebasededatosEnunprincipio,losproblemasdelossistemasbasadosenficheroconvencionalsesolventabanfácilmente,onisiquieraexistían,dadalapocaenvergaduradelossistemasdeinformaciónquesemecanizaban.
Pero,amedidaquelosavancesenuncampotaninestablecomoéstefueronaumentandolasprestacionesycapacidadesdelasherramientasdeprocesodedatos,losprogramassehacíanmásextensosycomplejos,manejabanunamuchomayorcantidaddedatos,ynecesitabanquecadavezmásusuarioscompartieranlosmismosdatos.
Loqueanteseraunmínimocontratiemposeconvirtióenuninterminablequebraderodecabeza:malaonulaplanificaciónylapobrezadelosmodelosdedatosutilizadosprovocaronquecadavezfueramásdifícilelmantenimiento,aunosmínimosnivelesderendimientoyfiabilidad,delasaplicacionesexistentes.
LastécnicasdeBasesdeDatossurgenalintentarsuperarlasituacióndescrita.
Elobjetivoprioritarioesunificartodalainformacióndelsistemaparaevitarredundancias,sinperderlasdistintasperspectivasquedelamismatienenlosusuarios.
Losdatosseorganizanysemantienenenunconjuntoestructuradoquenoestádiseadoparaunaaplicaciónconcreta,sinoquetiendeasatisfacerlasnecesidadesdeinformacióndetodalaorganización.
Esdecir,seseparaloqueeselsistemadeinformaciónensí,deloquesonlasaplicacionesquepretendenexplotarlosdatosalmacenadosenél.
Noobstante,laconsecucióndeesteobjetivocreanuevosproblemasyagravaotrosyaexistentes:independencia,concurrencia,privacidad,etc.
Enunsistemadebasesdedatospodemosidentificarsomeramentelossiguientescomponentes:DatosHardwareSoftware:programasdegestióndebasesdedatosydeaplicación,utilidades,etc.
Usuarios:programadoresdeaplicación,usuariosfinales,administradordelaBasedeDatos(DBA).
Entrelasherramientasdesoftwaredesarrolladasparacrearygestionarunabasededatos,sinduda,lamásimportanteeselSistemadeGestióndeBasesdeDatos(SGBD).
Este"programa"eselencargadodeponeradisposicióndelosdistintosusuarioslastécnicasdebasesdedatos.
Descripcióncentralizadadelosdatos:sitodosseencuentranenunmismolugaralqueaccedenlasaplicaciones,yanoesnecesarialareplicación.
Posibilidaddedefinirvistasparcialesdedichosdatosparalosdiferentesusuarios:estasvistasparcialesestaráncompuestasporlosdatosyrelacionesdeinterésparaunaaplicaciónointroducciónalmodeloEER143conjuntodeaplicacionesenconcreto.
PensemosqueunempleadodeContabilidadnotieneporquéconocerelestadocivildeotroempleadoperoestedatosilepuedeinteresaraotrodePersonal.
Porotraparte,losobjetivosdeunSGBDson:Independenciadedatos:losprogramasdeaplicacióndebenverseafectadoslomenosposibleporcambiosefectuadosendatosquenousan.
Integridaddelosdatos:lainformaciónalmacenadaenlaBDdebecumplirciertosrequisitosdecalidad;paraellohacefalta,enelmomentodeintroducirselosvaloresdelosdatos,queéstossealmacenendebidamente,yqueposteriormentenosedeterioren(ensímismos,ensusinterrelacionesyensuaccesibilidad).
Seguridaddelosdatos:alainformaciónalmacenadaenlaBDsólopuedenaccederlaspersonasautorizadasydelaformaautorizada.
PodemosdarunaprimeradefinicióndeBasedeDatos:"Coleccióndedatosestructuradossegúnunmodeloquereflejelasrelacionesyrestriccionesexistentesenelmundoreal.
Losdatoshandesercompartidospordiferentesusuariosyaplicaciones,ydebenmantenerseindependientesdeéstas;sudefiniciónydescripciónhandeserúnicas,estandoalmacenadasjuntoconlosmismos.
Lostratamientoshabrándeconservarlaintegridadyseguridaddelosdatos.
"Podemosdecir,deunamaneramuygeneral,quelabasededatoseselconjuntodeinformación,yelsistemadegestióndebasesdedatoselencargadodemantenerlasvirtudesqueseproponenenladefinición.
VIII2.
arquitecturadeunsistemadegestióndebasesdedatosUnSGBDnoes,nimásnimenos,queunprogramadeordenadorquemanejaBasesdeDatos.
Comotal,tieneunascaracterísticascomunesqueseencuentran,implementadasdeunaformaodeotra,entodoslosproductoscomercialesdisponiblesenelmercado.
Nuestrapretensiónesdarunavisióngeneraldeesascaracterísticassincentrarnosenproductoalguno.
ElhechofundamentalquejustificalautilizacióndeunSGBDesque,sianteslosprogramasllamabandirectamentealsistemaoperativoparamanejarsusficheros,ahoraeselSGDBeselencargadodefacilitarlosserviciosdeaccesodelasaplicacionesalosdatos.
BD12006-2007144LosprogramaspidenalSGBDciertosdatosdelaBDyéste,conlainformaciónyherramientasdequedispone,lasconvierteenoperacionesdeaccesoalosdistintosficherosdelaBD,operacionesquesonejecutadasporlosmétodosdeacceso;entendemosportaleselconjuntoderutinasdelSistemaOperativoquegestionanalnivelmáspróximoalhardwareelaccesoalosficheros.
Comoseobserva,elSGBDintroduceunnuevoniveldeindependenciaentrelosusuariosyelhardwarequenoexisteenunsistemaclásicoenelquelosprogramassecomunicandirectamenteconlosmétodosdeacceso.
UnodelosobjetivosdelasBDeslaindependenciadedatos.
ParaalcanzardichoobjetivosehanhechodistintaspropuestasparadefinirlaestructuraidealdeunSGBD.
ElgrupoANSI/SPARC34(1977)propusounaarquitecturaatresniveles,dondesedistinguentresesquemasdeBD:EsquemaConceptual(EC)EsquemaInterno(EI)EsquemasExternos(EE)ElECesladescripcióndelsistemadeinformación(objetoseinterrelaciones)conindependenciadelSGBDquesevayaautilizar;elEIesladescripcióndelECentérminosderepresentaciónfísica(laformadealmacenarloenelordenador),ylosEEsonlasvistasparciales(subconjuntosdelconjuntoglobaldeinformación)quetienenlosdistintosusuarios.
Sinembargo,seencontraronconquenodisponíandeunModeloConceptualgeneralyaccesibledesdecualquierSGBDquenospermitadefinirelesquemaconceptual.
Generalmente,losmodelosdedatossoportadosporlosSGBDcomercialessuelenserdemasiadopobres34AmericanNationalStandardInstitute/SystemPlaningAndRequerimentCommittee.
APLICACIONESSGBDSOBDESQUEMACONCEPTUALESQUEMAINTERNOdescripcionesparcialesdescripcióndedatosdelS.
I.
representaciónfísicausuariosobjetos/conceptosinterrelacionesrestriccionessemánticasregistrosmodosdeaccesotamaodelaspáginasindependencialógicaindependenciafísicaESQUEMASEXTERNOSintroducciónalmodeloEER145semánticamente35,porloqueseprefiererealizarladescripcióndelsistemadeinformaciónenalgúnmodelomásexpresivoparaluego"traducirlo"aunSGBDconcreto.
Laintenciónesdisponerdeunaprimeradescripciónlomáscompletaposibleeindependientedelasherramientasquesevayanautilizarparagestionarlo,inclusoconlaposibilidaddequenosevayaamecanizarmedianteunordenador.
PorestarazónmuchosautoresprefierendistinguirdosesquemasenlugardelECpropuestoporANSI/SPARC,loquelaconvierteenunaarquitecturaacuatroniveles:EsquemaConceptual:visióndesdeunpuntodevistaorganizativo,independientedelSGBDqueseutilice,einclusodelautilizaciónonodesistemasdebasesdedatos.
Enesteesquemasedescribelainformacióndelaorganización(objetosyrelaciones)desdeunpuntodevistanoinformático.
EsquemaLógico:visiónexpresadaentérminosdeunSGBDconcreto,omejordicho,deunmodelodedatossoportadoporunSGBD.
Enesteesquemalógicoserepresentanlasentidadesyrelacionesdeacuerdoalascaracterísticasdedichomodelo,sinentrartodavíaendetallesderepresentaciónfísica.
EsquemaInterno(oEsquemaFísico):descripcióndelarepresentaciónenlamemoriaexternadelordenadordelosdatosdelesquemalógico,susinterrelacionesylosinstrumentosparaaccederaellos.
EsquemasExternos:cadaunodeellosdescribelosdatosyrelacionesentreellosdeinterésparaunaaplicacióndada.
EstosesquemaspuedenversecomosubconjuntosdelModeloLógicodelaBD36.
35Porejemplo,enlaasignaturaBasesdeDatos2seutilizaelmodeloEntidad-RelaciónExtendidoparaelesquemaconceptualyelmodelorelacionalparaelesquemalógico.
36Porevitarunaposibleasociacióndeideasconalgoyavisto,lasvistastienenciertoparecidoconceptualconlosesquemasexternos,enelsentidodequemuestranunaporcióndelatotalidaddelsistemadeinformación,perounusuariodeundeterminadoesquemaexterno,dentrodesuvisiónlimitada,puedeutilizaronovistassobresusdatosparticulares.
Dehecho,unesquemaexterno,ensuequivalenterelacional,esunconjuntodevariasvistas.
BD12006-2007146UnbuenSGBDdebepermitir:QuesepuedandescribirlosdistintosesquemasdelaBD,yencadaunolosaspectosqueinteresendelosdatosysusinterrelaciones.
LoquefinalmentehemosllamadoEsquemaConceptualsedefineexteriormentealSGBDentérminosdeunciertomodelodedatos,realizándosemanualmentelatransformaciónentreelEsquemaConceptualyelLógico.
ExistendistintosmodelosparaeldiseodelECcomoelEntidad-Relación,RM/T,ModeloSemánticoGeneral,etc.
.
.
Quesepuedanestablecerlascorrespondenciasentrelosesquemas,esdecir,indicarquetaldatoorelaciónenunesquemasepuedetraducirasucorrespondienteenotro.
Enlasiguientetablatenemosunejemploilustrativodedosesquemasexternos,unoescritoenPL/IyelotroenCOBOL,queelSGBDhadesabertransformar,primeroalcorrespondienteesquemalógicoy,después,alinterno.
esquemasEXTERNOS(PL/I)DCL1EMPP,2#EMPCHAR(6),2SALFIXEDBIN(31);(COBOL)01EMPC.
02EMPNOPICX(6).
02DEPTNOPICX(4).
esquemaLGICOEMPLEADONMERO_EMPLEADOCARACTER(6)NMERO_DEPARTAMENTOCARACTER(4)SALARIONUMRICO(5)esquemaINTERNOSTORED_EMPLENGTH=20PREFIXTYPE=BYTE(6),OFFSET=0EMP#TYPE=BYTE(6),OFFSET=6,INDEX=EMPXDEPT#TYPE=BYTE(4),OFFSET=12PAYTYPE=FULLWORD,OFFSET=16Aislarlosesquemasdemaneraquenoseveanafectadosporcambiosefectuadosenotros.
AesterequisitoseleconoceEEEIELS.
I.
ind.
lógicaind.
físicaSGBDAPLICACINEC≡introducciónalmodeloEER147comoindependenciadedatos,ypodemosestablecerdostiposdistintossegúnafectenaunosesquemasuotros:IndependenciaLógica(entreesquemalógicoyesquemasexternos):losesquemasexternosylosprogramasdeaplicaciónquesebasanenellosnodebenverseafectadospormodificacionesdelELreferenteadatosorelacionesquenousan.
SiessuprimidoundatodelELnodeberánverseafectadoslosEEquenoloincluyanensudefinición;nilosprogramasdeaplicaciónquenolousen,independientementedequedichodatoaparezcaensuesquemaexternoasociado.
EncambiodeberánmodificarseaquellosEEenlosqueaparezcaeldatosuprimido,ycompiladosdenuevolosprogramasqueloutilicendirectamente.
IndependenciaFísica(entreesquemalógicoyesquemainterno):elELnodebeverseafectadoporcambiosenelEIreferenteamodosdeacceso,tamaodepáginas,etc.
.
.
ElSGBDdisponedeladefinicióndecadaunodeestosesquemasparasatisfacerlaspeticionesdelosprogramas.
SemuestraenestemomentounaposibleinteracciónentreelSGBD,elSistemaOperativoylosprogramasdeaplicaciónalahoradeatenderunapeticióndeaccesoalosdatos.
EJEMPLOElprogramadeaplicaciónAhaceunallamadaalSGBD.
ElSGBDobtieneelEEutilizadoporAyexaminaladescripcióndelosdatossolicitados.
ElSGBDobtieneelELyrealizalacorrespondientetransformaciónentreEEyEL.
ElSGBDexaminaladescripciónfísica(EI)delaBD.
ElSGBDemiteunaordenalSOindicandolosquedebeleer.
ElSOinteraccionaconelalmacénfísicoenelqueseencuentranlosdatos.
Losdatossetransfierendesdelamemoriaexternaalasmemoriasintermediasdelsistema.
ComparandoelELyelEEdelprogramaAelSGBDdeducelosdatospedidosporelprogramadeaplicación.
ElSGBDejecutatodaslastransformacionesnecesarias.
ElSGBDtransfierelosdatosdesdelasmemoriasintermediasaláreadetrabajodelprogramadeaplicación.
ElSGBDsuministraalprogramainformacióndeestadosobreelresultadodesupetición,incluyendocualquierposibleindicacióndeerror.
BD12006-2007148Elprogramadeaplicaciónpuedeahoraoperarconlosdatospedidosqueyaseencuentranensuáreadetrabajo.
Ademásdeestasoperaciones,elSGBDseocupadeloscontrolesdeprivacidadeintegridadquehayansidoprevistostantoenelesquemalógicocomoenelesquemaexterno.
Asimismorecogeinformaciónparalaposiblereconstruccióndelabasededatosencasodefallo.
Convienehacerunaaclaraciónenestepunto.
LamayoríadelosSGBDcomercialestrabajancomosiúnicamentetuvieranunesquema:ellógico.
Lapercepcióndelusuarioesquesólotienequedefinirlaestructuradelabasededatosenfuncióndelmodelodedatosquesoportaelprograma,siendototalmentetransparenteparaéllaorganizaciónqueutilizaanivelfísicodelosdatos.
nicamenteensistemasmuygrandes,eladministradordelabasededatoshadetomardecisionessobrecómosedebenguardarlosdatosenlossistemasdealmacenamientodelamáquina,generalmenteparaaumentarelrendimientodelsistema.
VIII3.
eladministradordelabdDentrodelaOrganización,elencargadodecontrolarlosaspectostécnicosdelsistemadeinformaciónmecanizadoeseladministradordelabasededatos(DBA).
Enresumen,eselencargadodedefinirlabasededatosdentrodelSGBDydeoptimizarsurendimiento,almismotiempoquedasoportealasnecesidadesespecíficasdecadausuario.
LasfuncionesdeunadministradordelaBDson:Definirelesquemalógico(suponiendolaarquitecturaacuatroniveles)Partiendoelesquemaconceptualquedescribeelsistemadeinformación,elDBAtransformarádichoesquemaenelesquemalógicoquemanejaráelSGBDautilizar.
Alrealizarestatransformación,tomarálasdecisionesoportunasbajocriteriosdeoptimizacióndelaeficienciadelsistemafinal.
Debe,SGBDestadoáreadetrabajoprogramaAEEprogAELEISObuffer12345678910introducciónalmodeloEER149asímismo,especificarlascorrespondenciasaestablecerentrelosesquemasconceptualylógico.
Definirelesquemainterno.
ElDBAdebedecidircuálserálaformaenquesealmacenaránfísicamentelosdatos,yestablecer,aligualqueantes,lasdebidascorrespondenciasentreesquemas.
Definirlosesquemasexternos.
Atendiendoalasnecesidadesdelosusuarios,elDBAdebeasegurarquetodalainformaciónnecesariaestádisponibleyaccesibleporaquellosquelaprecisan,ydebecrear(oasesorarensucreación)losesquemasexternosdecadaaplicaciónquedefiniránlaspartesdelsistemadeinformaciónalasqueaccederán.
Además,elDBAseráelencargadodesuministrarasesoramientotécnicoparaeldiseodeaplicaciones,formacióndeusuariosyprogramadores,etc.
Definirlasreglasdeintegridadyseguridad.
SeencargarádedefiniraquellasreglasdeintegridadqueactúansobrelosdatosylasoperacionesentérminosqueentiendaelSGBD.
Lospermisosotorgadosalosusuariossobrelosdatos,ylapolíticadetransferenciadepermisosentreelloses,también,responsabilidaddelDBA.
Especificarlosmecanismosderecuperaciónycopiasdeseguridad.
ElsistemadebasededatoseunelementocríticoenelfuncionamientodelaOrganización,yelDBAdebeespecificarlosprocedimientosadecuadosparalarealizacióndecopiasdeseguridadperiódicasyrecuperacióndedatosanteeventualesdaosenparteoentodoelsistemadeinformaciónalmacenado.
Verificarelrendimientodelsistemayatenderaloscambiosenlosrequerimientos.
Comopartemuyimportantedesusfunciones,elDBAdebevigilarqueelsistemadeinformaciónnosedegrade,porlacontinuamanipulaciónyactualizacióndesusdatos,hastaelpuntodeafectaralostiemposderespuestaolasobreocupacióndememoriasecundaria.
Seresponsabilizarádelasreorganizacionesnecesarias,acualquiernivel,quepermitanmanteneromejorarelrendimientodetodoelsistema,incluidolarenovacióndelhardwareyelsoftwaresifueranecesario.
VIII4.
componentesyfuncionesdeunSGBDYasehanmencionado,deunaformauotra,cualessonlasfuncionesdeunSGBD:Descripcióndelosdistintosesquemasdelabasededatos.
Manipulacióndelabasededatos:recuperaciónyactualizacióndelainformación.
BD12006-2007150Gestión:lenguajeshuésped,lenguajesconversacionales,utilidadesparaeladministradordelaBD,etc.
Dichodeotramanera,elSGBDdebedarsoportealossiguientesconceptos:DefinicióndedatosManipulacióndedatosSeguridadeIntegridaddelosdatosRecuperacióndedatosyconcurrenciaDiccionariodedatosRendimientoAfindecumplircondichasfuncioneselSGBDdebeproporcionarlasherramientasadecuadas:Lenguajesdedefinicióndeesquemas(DDL)ConellospodremosdefinirlosdistintosesquemasconlosquevaatrabajarelSGBD(excepto,seguramente,elEC).
Lenguajesdemanipulacióndedatos(DML)Conellospodremosinsertar,eliminar,modificaryconsultarlainformaciónalmacenadaenlabasededatos.
Decimosqueestoslenguajessonautosuficientessidisponendeuntraductorpropio,ydetipohuéspedsinodisponendeestructurasdecontrolcomoif-then-else,bucles,etc.
Enestosúltimos,lasinstruccionesdeaccesoalaBDdelSGBDdebenserintercaladasentrelasdeunprogramaescritoenalgúnlenguajedeprogramación.
Estasinstruccionessontraducidasporunprecompiladorquegeneraunprogramaenellenguajeanfitriónpuro(porejemplo:COBOL,C,etc.
);posteriormente,enelmontaje,seaadiránlasrutinasdelibreríaquepermitiránalprograma,finalmente,manejarlaBD.
Controlesdeseguridadeintegridaddelosdatos.
ElSGBDdebesupervisartodaslaspeticionesdeaccesoyrechazaraquellasqueviolenlasreglasdeintegridadyseguridaddefinidasparaelsistemadeinformaciónrepresentadoenlaBD.
SedebenestablecerlosmétodosdecontroldeaccesoconcurrentealaBD(variosusuariosqueintentanaccederalmismodatoenelmismoperíododetiempo)ylaformaderecuperarlaBDantecatástrofes(cortesdeluz,fallosdehardware,…),transaccionesnocompletadas,etc.
DiccionariodedatosInformaciónadicionalsobreladefinicióndedatos(datossobrelosdatos),tambiénconocidacomometadatos,quepuedeincluirlospropiosesquemasdeBD,referenciascruzadassobrequédatosutilizaquéprograma,reportsdecadausuario,terminalesconectadas,etc.
,yqueseutilizafundamentalmentecomodocumentacióndelanálisisydiseo.
EstainformaciónnolautilizaríaelusuariofinalyesmantenidabajolaresponsabilidaddeladministradordelaBD.
Utilidades.
MódulosdereestructuracióndelaBD,anivelfísico.
SonprogramasqueobtienencopiassecuencialesdelaBDylareorganizancambiandodetallesdecaminosdeacceso,tamaodelaspáginas,etc.
introducciónalmodeloEER151Módulosdeimpresión(generadoresdeinformes).
GeneradoresdePrototipos,conlosquepodersimularelfuncionamientodelaBDconocidosudiseo,generalmenteconlaintencióndeconsultaralosusuariosfinalessobrelacalidaddeldiseo;conprototipossucesivossepuedeirafinandolosrequerimientosdelsistemahastaobtenerunaversióndefinitivaquesepuedaoptimizareneficiencia.
Actualmente,lossistemasdegestiónseacompaandelenguajesdecuartageneración(4GL)ygeneradoresautomáticosdeaplicaciones.
Módulosparalaobtencióndeestadísticas.
Haciendousodetodoellocorrectamentepodremosalcanzarlosobjetivosperseguidosporlastécnicasdebasesdedatos:independencia,integridadyseguridaddedatos.
Profundizaremosunpocomásenestosconceptosacontinuación.
VIII5.
independencia,integridadyseguridadIndependenciadedatos.
Entendemosporindependenciadedatoselhechodequelosprogramasyesquemasnoseveanafectadosporcambiosendatosquenousan.
Enestepuntoesconvenienteaclarardosconceptosqueinfluyendecisivamenteenelgradodeindependencia:granularidaddelosesquemasexternosyligadura.
GranularidaddelosesquemasexternosEselgradodedetallededefinicióndelosesquemasexternosenfuncióndelesquemalógico.
Losmásusualesson:deregistrocompleto.
decampoderegistro.
Sedicequelagranularidadesmásfinaenelsegundocasoqueenelprimero,ycuantomásfinaseamayorgradodeindependenciadedatosconseguiremos.
Esevidentequesilagranularidadesfina,undeterminadoesquemaexternopuedeprecisardeladefinicióndeunúnicocampoy,portanto,modificacionesenelrestodecamposdelmismoregistronoleafectarán;silagranularidadesanivelderegistrocompleto,aúnsinBD12006-2007152utilizartodosloscampos,deberíaincluirladefinicióndelregistroyseríamodificadoencualquieralteracióndelmismoenelesquemalógico.
LigaduraSeentiendeporligaduraelmomentoenquesetransformanlosesquemasexternosusadosporlasaplicacionesentérminosdeesquemainterno.
UnadefinicióndedatodeunEE,enelmomentodelaligadura,setransformaenunalongitudyunaposicióndentrodeunregistro,términosenlosqueseexpresaelEI.
Noobstante,puestoquesehacenecesariaunaprimeratransformaciónentreEEyesquemalógico,ydeéstealEI,sediferenciaentreligaduralógicayligadurafísica.
Elmomentoenqueseproducelaligaduradesaparecelaindependenciadedatospuestoqueelesquemaexternoyahasidotraducidoalmásbajonivel.
Poreso,sielmomentodelaligaduraseproducecuandosecompilanlosprogramas,cualquieralteraciónenelesquemainternoprovocarálarecompilación,aunquetalmodificaciónsehayaproducidoenundatoquenousen.
Podemosdecir,porentendernos,quealrealizarlaligaduraenelmomentodelacompilación,losesquemasexternos"desaparecen",puestoqueencadaejecucióndelprogramaseparteyadelosdatosfísicosdealmacenamiento.
Si,porelcontrario,esencadaaccesoalabasededatoscuandoserealizalaligadura,cadavezserealizaráunanuevatraduccióndelesquemaexternoenesquemainterno.
Esoimplicaque,sielcambioenelELoEInoleafectadirectamente,nohabránecesidaddemodificarsucorrespondienteEE.
Noobstante,cuantomástardíasealaligadura(porejemplo,encadaacceso)laeficienciaserámenorpuestoquecontinuamenteestaremoshaciendousodelascorrespondenciasentreesquemas.
Seconsiderancuatromomentosenlosquepuedetenerlugarlaligadura,siendoelúltimoelmástardíoyelquegarantizaunamayorindependenciadedatos:enlacompilaciónenelmontaje(link)aliniciarselaejecucióndelprogramaencadaaccesoalaBD.
Laindependenciadedatos,resumiendo,esmayorcuantomásfinasealagranularidaddelosesquemasexternosycuantomástardíoelmomentodelaligadura.
LatendenciadelosSGBDactualesesapoyarseenlagranularidadaniveldecampoylaligaduraalcomienzodelaejecucióndelprograma.
introducciónalmodeloEER153integridaddedatosLaintegridaddedatosatiendealacalidaddelainformaciónalmacenadaenlossiguientesaspectos:losvaloresdelosdatoshandesercorrectos.
lasocurrenciasdelosdatos(losvaloresenuninstantedeterminado)handeestardebidamenteinterrelacionados.
nosedebenproducirinterferenciasenlaslecturasyescriturasconcurrentes,deltipodeactualizacionesincorrectas,bloqueosactivosomortales,etc.
Sedistinguendosaproximacionesaesteproblema:optimistaypesimista.
Laprimeradaporsupuestoquetalesproblemassepresentanmuydecuandoencuando,asíquelasoluciónmáseficienteessolucionarloscuandohanocurrido.
DichosproblemaspuedenvenirdedeteriorosdelaBDporcatástrofes,interrupcionesenprocesosdeactualización,actualizacionesindebidasporfallohumano,etc.
Dehecho,latácticaesllevarunregistro,másomenosactualizado,delosestadossucesivosdelabasededatosodelasúltimastransaccionesefectuadasparadevolveralabasededatosaunestadoanteriorquesesabíacorrecto,yvolveracomenzardesdeesepunto.
Lasegundaidentificalassituacionesquepuedenprovocarunconflictoyretrasasuejecuciónhastaquetalposibilidaddesaparece.
Así,pues,tenemos:técnicaspreventivas:verificacióndelasrestriccionessemánticas,controlarlaconsistenciadelascopiasredundantes,ycontroldelosaccesosconcurrentes,generalmenteporelmétododereservas(evitarqueunprogramaaccedaaldatomientrasloestámodificandoy/oconsultandootro).
técnicascurativas:ficherodietarioconelquedeshacerorehacertodaslasactualizacionesrealizadasportransaccionesduranteuntiempodeterminado,copiasdeseguridadovolcadosdelaBDcompletaenunmomentoenquetodaslastransaccionesefectuadashansidoconfirmadas,tomadepuntosdecontrol,.
.
.
SeguridaddelosdatosSerefierealaposibilidad,porpartedelosusuarios,derealizardeterminadotipodeoperacionessobrelosdatosdelaBD,ysóloaaquellosusuariosqueesténautorizados.
Seutilizantécnicastalescomolaidentificacióndelusuario(loginypassword),determinacióndepermisosdelectura,escritura,etc.
,gestióndeautorizacionestransferiblesdeunsegundousuarioauntercero,etc.
BD12006-2007154VIII6.
arquitecturacliente-servidorApartedelaarquitecturaacuatroniveles(oatres)mencionadaanteriormente,sepuededarotravisióndeunSGBDfrentealasaplicacionesquedebenatacarleparaaccederaunadeterminadabasededatos.
Laarquitecturacliente-servidorofreceunavisiónsimplificadadeunSGBD,detalformaqueconsideraúnicamentedospartes:Elservidor(ofrontend),queesenrealidadelpropioSGBDymantienetodaslascaracterísticasantesapuntadas(esquemasparacadaniveldearquitectura,lenguajesdemanipulaciónydefinicióndedatos,etc.
),eselencargadodesatisfacertodaslaspeticionesdeaccesoyrecuperacióndedatosdesusbasesdedatos.
Losclientes(obackend)sonlasaplicacionesquerealizandichaspeticiones.
EstasaplicacionespuedenserlasdesarrolladasparaunusuarioenparticularolaspropiasherramientassuministradasporlaempresavendedoradelSGBDoportercerascompaíasquefabricansoftwareparaeseSGBD:lenguajesdeconsulta,generadoresdeprototipos,generadoresdeinformes,interfacesdeusuario,etc.
LautilidaddeestavisióndealtoniveldeunSGBDestáenelprocesamientodistribuidodelaBD.
DentrodelprocesamientodistribuidodeBD,laarquitecturacliente-servidorpermitequeelservidoratiendavariaspeticionessimultáneamente,yelclientepodráaccederavariosservidoresalmismotiempo;estosservidoresnotienenporquemantenerelmismoSGBD,nitansiquieraelmismomodelodedatossubyacente.
Tansóloesnecesarioestablecerloscorrespondientesprotocolosparaqueclientesyservidoressepuedanentender.
Elcliente,además,escapazdeprocesarensumáquinalainformaciónquelehaproporcionadoelservidor,detalmaneraqueesetrabajoyanolotienequerealizarlamáquinaremota,favoreciendolostiemposderespuestaatravésdelared.
Dehecho,unodelosobjetivosdeestaarquitecturaesdescargaralservidordetrabajo.
APLICACINSGBDCLIENTESERVIDORUSUARIOcliente1cliente3cliente2usuario1usuario2servidor1servidor2introducciónalmodeloEER155Pensemosenaplicacionesdesarrolladasparalaredinternet:eselclienteelqueseencargadelprocesamientodelainformaciónparasuvisualizacióndentrodelexplorador,elinterfazdelusuariofrentealared.
Elservidorloúnicoquehaceesproporcionarrespuestaalaspeticionesdelcliente,suministrarlosdatostansólo,yésteúltimoseresponsabilizadelastareasgráficasdepresentacióndelosdatosenlapantalladesuordenador.
Elúnicorequisitoesqueexistanunosprotocolosdefinidosparalacomunicaciónentreelclienteyelservidor.
Asíseaseguraquelosdatosquevandeunoaotroseanentendidosporquienlosrecibe.
Deestaforma,elclientepuedetrabajarconunsistemaoperativodistintodelservidor,notenersoftwarealgunodegestióndebasesdedatos,ytodoellosinqueelusuarionecesitemásconocimientoqueelmanejodesuprogramadeaccesoalared.
Endefinitiva,sepuedevercomounnivelmásdeindependenciadelasaplicacionesfrentealhardwareylarepresentaciónfísicadelosdatos.
BIBLIOGRAFA[CELMA97][DATE2001][KORT87]157IXINTRODUCCINALMODELOENTIDAD-RELACINEXTENDIDOAntelafaltadeciertosmecanismospararepresentarlarealidaddelaqueadolecíanlosmodelosdedatosclásicos,surgieronlosmodelosdedatossemánticos.
Básicamente,sepuededecirquelosmodelosdedatosclásicosatendíanmásacuestionesdeaccesodelosdatos,esdecir,modelabanlarealidadenfuncióndelasestructurasautilizarylaformaderentabilizarestosaccesosentiempoyespacio.
Porcontra,losmodelosdedatossemánticosdejanaunladoeseaspectoysecentranmásenelcomportamientodelosobjetosdentrodesuentorno,buscandounarepresentaciónmásnaturaleintuitivadelasrelacionesyelfuncionamientodelSistemadeInformación.
Seinscribe,portanto,totalmentedentrodelparadigmaOrientadoaObjeto.
Losmodelosdedatossemánticosincorporanconceptosymecanismosdeabstracciónquenoestánpermitidos,oalmenosnosepuedenrepresentardeunaformanatural,enlosmodelosprevios.
Sinembargo,notienenunreflejoenalgúnSGBDcomercialyúnicamenteseutilizancomoherramientadeanálisisparalaconfeccióndelEsquemaConceptualdelaBD,queposteriormentesehadetraducirentérminosdemodelosdedatossiimplantadoscomercialmente.
ComoejemplodemodelosemánticoseproponeelEntidad-Relación(E-R),quees,posiblemente,unodelosdemayoraceptaciónalahoradeconfeccionarlosesquemasconceptualesdebasededatos.
introducciónalmodeloEER159DNIIX1.
modeloentidad-relaciónElmodeloE-R(entidad-relación)fuepropuestoporE.
Chenen1976paraladefinicióndelesquemaconceptualdeunaBD.
Posteriormentesehaidoenriqueciendoconnuevosmecanismosdeabstracciónyrepresentacióndelarealidad,loqueseconocecomoelmodeloEER(entidad-relaciónextendido).
Esunodelosmásampliamenteutilizadosdelosllamadossemánticos.
Sebasaenconceptostalescomoentidad(objeto),atributoyrelaciónentreobjetospararepresentarlosdiferentesmétodosdeabstracción,asaber:clasificación,agregaciónygeneralización.
Sedisponedeunformalismográficopararealizarestasrepresentaciones,peronodeunlenguajedemanipulacióndedatos.
Laprincipalventaja,queseguramentehaforzadosudifusión,esqueestraduciblecasiautomáticamenteaunesquemadeBDbajoModeloRelacional,conciertapérdidadeexpresividadenelproceso,perogarantizandoquelastablasqueresultanestándirectamenteenTerceraFormaNormal(3FN).
Pasaremosahoraadescribircualesellenguajederepresentacióndeentidades,atributos,yrelacionesentreentidades.
ElobjetivoesproporcionarlabasesuficienteparainterpretardiagramasEER.
Representacióndeentidades.
Unaentidadserepresentarámedianteunrectángulonominado.
Representacióndeatributos.
UnatributoseveráenunE-Rcomounaelipseunidaaunaentidadmedianteunarco.
Enfuncióndelosdistintostiposdeatributosquenospodemosencontrar,variaráeltipoderepresentación:atributoidentificador:sonaquellosqueidentificanlasocurrenciasdelaentidad.
Serepresentanmedianteelsubrayadodelnombredelatributo.
atributodescriptor:atributonoidentificador.
CLIENTEBD12006-2007160POBLACINSiatendemosasuposibleestructura:atributosimpleoescalar.
atributocompuestooestructurado:elnombredelatributocompuestoeslaetiquetadeunarcoquesesubdividiráentantosatributossimplescomoformelaestructura.
atributomultivaluado:seindicamediantelaetiquetansobreelarco.
RepresentacióndeRelaciones.
Lasrelacionesentreentidadesserepresentanmedianteunpolígonodetantosladoscomoentidadesseasocian,salvoenelcasodelasbinarias(relacionesqueasociandosentidadesounaconsigomisma)queutilizanunrombo,unidoalasentidadesmediantearcos.
Estepolígonoiráetiquetadoconelnombredelarelación.
Asimismo,sepuedenetiquetarlosarcospararealzarelpapelquejuegadichoobjetodentrodelarelación.
relacionesbinarias.
Uncasoespecialseríanaquellasrelacionesdeunobjetoconsigomismo:lasrelacionesreflexivas.
nTELFONOABRNOMPROPIOAPELLIDO1APELLIDO2NOMBREARintroducciónalmodeloEER161ACBrelacionesternarias.
RepresentacióndeRestricciones.
Sobreatributos.
Lasrestriccionesdevalorsepuedenindicarcolocandoalladodelatributoeldominiosobreelquesedefineelmismo.
Siunatributonopuedetomarvaloresnuloslorepresentaremoscomo:Sobreentidades.
Todaentidaddebetenersuconjuntodeatributosidentificador.
Sobrerelaciones.
FORMAPAGOnDNIPOBLACINNOMPROPIOAPELLIDO1APELLIDO2TELFONONOMBRECLIENTEFORMAPAGOBD12006-2007162Lasrestriccionesdecardinalidadseexpresanmedianteelralladodelapartedelpolígonoqueindicalaasociacióndeunadelasentidades.
Dependiendodelnúmerodeentidadesasociadaslacardinalidadmáximaimplicaunalecturauotra.
Sólonosvamosafijarenlasrelacionesbinarias.
SuponiendodosentidadesAyBasociadasporunarelaciónR,definimoslasrestriccionesdecardinalidadmínimaymáximacomo:Card(A,R)=(mA,MA),Card(B,R)=(mB,MB)Lasrestriccionesdecardinalidadmáximaseexpresaporelralladodelapartedelpolígono(enestecaso,relacionesbinarias,lamitaddelrombo)queindicalaasociacióndeunadelasentidades.
Nosencontraremosconlossiguientescasos:Card(A,R)=(0,n),Card(B,R)=(0,n)Card(A,R)=(0,n),Card(B,R)=(0,1)Card(A,R)=(0,1),Card(B,R)=(0,1)Paralasrestriccionesdecardinalidadmínima,estoes,lasdetipoexistencial,utilizaremosundoblerectánguloparala(s)entidad(es)quesufrenlarestricción,yetiquetaremoselarcodelarelaciónconuna"E":Card(A,R)=(0,n),Card(B,R)=(1,1)ABRABREABRABRintroducciónalmodeloEER163Restriccióndedependenciadeidentificador.
Aquellasentidadesquenosepuedanidentificarporsímisma,esdecir,quenecesitandelosatributosidentificadoresdeotraentidadparareconocercadaocurrenciadesuentidad,sedicequesufrendependenciadeidentificador.
Selasconocecomoentidadesdébiles,encontraposiciónconlaentidadque"presta"susidentificadores,queseconsiderafuerte.
Serepresentaigualquelarestricciónexistencial,peroetiquetandoelarcocon"ID".
TernariasLaternariaesunarelaciónqueasociatresobjetos,similaralabinariaquelohacecondos.
Lapeculiaridaddeestaconectividadestribaenquesehadeleercomo"todaslasparejascontraeltercero".
GRUPOimpartePROFESORASIGNATURASea,porejemplo,laternariadelesquemaadyacente.
Decimosque:"unprofesorimparteunaasignaturasóloenungrupo""unprofesorenungrupoimparteunaúnicaasignatura""unaasignaturaenungrupopuedeserimpartidapormuchosprofesores"Deunaformamenosambigua:Card((PROFESOR,ASIGNATURA),IMPARTE)=(0,1)Card((PROFESOR,GRUPO),IMPARTE)=(0,1)Card((ASIGNATURA,GRUPO),IMPARTE)=(0,n)Card(PROFESOR,IMPARTE)=(0,n)Card(ASIGNATURA,IMPARTE)=(0,n)Card(GRUPO,IMPARTE)=(0,n)Enrealidad,alahorade"leer"unaternaria,lasúnicascardinalidadesquetienensentidosonlasmáximasdelasparejasylasmínimasdelasentidadesporsisolas,yaquelasotrasnocambiannunca,seacualseaelsentidodelaternaria,siemprehablandodelacapacidadderepresentacióndelEER.
Engeneral,lasrestriccionesdecardinalidadrepresentadasporlostriángulosrayadosonoaceptacualquiertipodecombinación,1:1:1,1:1:M,PASEST_ENIDCIUDADNOMBREEXTENSINNOMBREHABITANTESBD12006-20071641:M:MyM:M:M,asícomorestriccionesdeexistenciaencualquieradelasentidadesasociadas.
CasoA:Enestecaso,laconectividaddecimosquees1:1:1,esdecir,queparacadaposibleparejadeocurrenciasdeentidadsólounadelaentidadrestanteseasociaconella.
Odichodeotromodo,unaocurrenciadegrupo-asignatura(p.
ej.
)sólopuedeaparecerunavez,comomucho,dentrodelarelaciónimparte2.
Card((PROFESOR,ASIGNATURA),IMPARTE)=(0,1)Card((PROFESOR,GRUPO),IMPARTE)=(0,1)Card((ASIGNATURA,GRUPO),IMPARTE)=(0,1)Card(PROFESOR,IMPARTE)=(0,n)Card(ASIGNATURA,IMPARTE)=(0,n)Card(GRUPO,IMPARTE)=(0,n)CasoB:Laconectividad1:M:Mnosdicemientrasparaunprofesorquedaclaseaundeterminadogrupo,estepuedeimpartirvariasasignaturasyqueparacadaprofesorqueimparteunaasignaturaconcretalohaceenvariosgrupos,unúnicoprofesorimparteunaasignaturaconcretaenungrupodeterminado.
Porejemplo,sealasiguienteocurrenciadeimparte3utilizandotansólolosidentificadoresdecadaentidad:GRUPOPROFESORASIGNATURA2AARMANDOFBD2AEVADGBD2BARMANDOFBD2BEVADGBD2CEVAFBD2CEVADGBD2AJAIMEFBDLaúltimaocurrencianoseríaconsistenteconlasrestriccionesdecardinalidadquerepresentalaternariaimparte3.
Porotrolado,laentidadgruposufreunarestriccióndeexistenciarespectodeimparte3,loqueobligaaquetodaocurrenciadegrupoaparezcaalmenosunavezenlaternaria.
Nótese,sinembargo,quenoseofreceningúnmecanismoderepresentaciónparaponerlacardinalidadmínimadeunaparejafrentealaternariaa1;nosepuedeobligar,conelEER,aquetodaposibleparejadeocurrenciasdedosentidadesaparezcaenlaternaria.
EEGRUPOImparte2PROFESORASIGNATURAGRUPOImparte3PROFESORASIGNATURAGRUPOImparte4PROFESORASIGNATURAABCEintroducciónalmodeloEER165Card((PROFESOR,ASIGNATURA),IMPARTE)=(0,n)Card((PROFESOR,GRUPO),IMPARTE)=(0,n)Card((ASIGNATURA,GRUPO),IMPARTE)=(0,1)Card(PROFESOR,IMPARTE)=(0,n)Card(ASIGNATURA,IMPARTE)=(0,n)Card(GRUPO,IMPARTE)=(1,n)CasoC:LarelaciónesM:M:M,esdecir,sepuededarcualquiercombinacióndeocurrenciasdeentidad,teniendoencuenta,además,quetantolaentidadgrupocomoladeprofesorsufrenunarestriccióndeexistenciacadaunarespectodeimparte4.
Card((PROFESOR,ASIGNATURA),IMPARTE)=(0,n)Card((PROFESOR,GRUPO),IMPARTE)=(0,n)Card((ASIGNATURA,GRUPO),IMPARTE)=(0,n)Card(PROFESOR,IMPARTE)=(1,n)Card(ASIGNATURA,IMPARTE)=(0,n)Card(GRUPO,IMPARTE)=(1,n)IX2.
ejemplo1MostramosacontinuacióneldiagramaE-RparaunSistemadeInformaciónsobrelagestióndepedidosaproveedoresdeunaempresagenérica.
Elejemplopretendereflejarlapolíticadecomprasdeunaempresadedistribución.
Secompranciertasmercancíasalosdistintosproveedoresysonvendidasposteriormentealpúblicooaotrosdistribuidores.
Básicamente,lastareasquesepretendenmecanizarsonlassiguientes:Listadepreciosdecompra.
Conocerentodomomentolospreciosalosquevendenenelmomentoactuallosproveedores.
Controldepedidos.
Deaquellasmercancíasquesesolicitanalosproveedores,controlarsisehanservidoeneltiempoestimadoyenlacantidadpedida.
Controldeexistencias.
Mediantelaconfeccióndeuninventario,dondecadaentrada,quecorrespondeaunúnicoartículo,eselrecuentorealdeexistencias.
BD12006-2007166Listadepreciosdecompraaproveedores.
Tenemosalmacenadalainformacióndeaquellosproveedoreshabitualesdelaempresaydelaspiezasqueentranysalendelalmacén:sonlasentidadesVENDEDORyPIEZA,respectivamente.
Puestoqueunmismovendedorpuedesuministrarvariaspiezas,yunapiezapuedeserofertadaporvariosproveedores,nosinteresasaber,paracadapieza,lascondicionesqueofrecenunosyotros.
LarelaciónM:MentrelasdosentidadesmencionadasyquehemosdenominadoSUMINISTRA,contiene,además,losatributosquenosindicanelprecioactualalquesepuedecomprar,losdíasquetardaenserservidalapieza,yelposibledescuentoofrecidoporelproveedor.
ElsiguienteejemplomuestraunaposibleocurrenciadelarelaciónSUMINISTRAqueasociaunaocurrenciadeVENDEDOR,otradePIEZA,ycontienelosatributosparticularesdelaasociación.
VENDEDORPIEZASUMINISTRAnumvendnomvendnumpiezanompiezanombrecomerteléfonocalleprovinciapreciounitdiassumdescuentoprecioventPEDIDOINVENTARIOLINPEDIDEnumpedidofechanumbincantdisponiblefecharecuentoperiodorecuencantajustecantreordpuntoreordnumlineapreciocompracantpedidaRECIBECONTIENESEPIDEENSERECUENTAcantrecibidafecharecepintroducciónalmodeloEER167Sesuponequealmacenamoslainformacióndelaspiezasquemanejalaempresayladelosvendedoresquepodríansuministrarlas.
EnlarelaciónM:MSUMINISTRAseasocianefectivamentelaspiezasconlosproveedoresquelassirven,yelpreciodeofertadecadauno.
Nóteseque,porlaconectividaddelarelación,unmismovendedorpuedeproveerdevariaspiezasalaempresa,yunamismapiezapuedeserofertadaporvariosvendedoresadistintosprecios.
Lasiguientetabla,yprescindiendodelamayorpartedeatributosque,comoelejemploanterior,formaríancadaocurrenciadesuministra,ilustracómoserelacionaríanvendedoresypiezasporsuministro.
controldepedidos.
Laempresadecideenunmomentodadosolicitaraunproveedorquelesuministreunaseriedepiezas.
Seconfeccionaunpedidoqueseenvíaalvendedorque,posteriormenteservirátalesmercancías.
Todasestaoperativasereflejaendosnuevasentidades,PEDIDOyLINPED,yentresrelaciones,RECIBE,CONTIENEySE_PIDE_EN.
Además,paracontrolarlarecepcióndelospedidos,sealmacenainformaciónsobrelafechaenqueentranefectivamentelasmercancíasenelalmacén,elprecioalquesehancomprado,yladiferenciaentrelacantidadquesepidióylaqueserecibió.
Debemosaclararciertosaspectossobreestasrelaciones.
Enprimerlugar,lospreciosdecompranotienenporquécoincidirconlosdelalistadepreciosSUMINISTRA.
Sepuededarelcasodequeestepreciovariararecientementeyqueelpedidoseadefechaanterior,osimplementequeelproveedorhahechounaofertadistintadelaqueseconoceporSUMINISTRA.
Ensegundolugar,tampocoesobligatorioquelaspiezasquesuministraunvendedorseanlasqueaparecenenlalista.
Endefinitiva,nohayrelacióndirectaentreSUMINISTRAyelCONTROLDEPEDIDOS.
Porúltimo,lospedidosseestructuranmedianteunacabecera,cuyosdatosprincipalessealmacenanenPEDIDO,yunaseriedelíneasdepedidoquecontienen,cadauna,unareferenciaaunaúnicapieza.
PrecisadeunaocurrenciadeVENDEDOR1AGAPITOLAFUENTEDELCORRALMECEMSA96-5782401Avda.
Valencia3205ALICANTEALICANTEocurrenciadepiezaDD-0001-210DISCODUROWESTERNDIG210M2825000ocurrenciadeSUMINISTRA1AGAPITOLAFUENTEDELCORRALMECEMSA96-5782401Avda.
Valencia3205ALICANTEALICANTEDD-0001-210DISCODUROWESTERNDIG210M282500015000315numvend.
.
.
numpieza.
.
.
precio.
.
.
V1P11500V1P210000V2P11750V2P39000BD12006-2007168restriccióndedependenciadeidentificadorpuestoque,paratodoslospedidos,laslíneassenumerandesde1enadelante,conloqueelidentificadornumlineanobastaparadiferenciarlastuplasdeLINPED.
Parailustrarestepunto,semuestraunejemplodecómoseríandosfichasdecontroldepedidosservidosporlosproveedores,talycomolasveríamosescritasenpapel(nosonocurrenciasdelasentidadesyrelacionesdelEC).
numpedidonumvendfecha1105/05/1992numlineanumpiezapreciocompracantpedidafecharecepcantrecibida1M-0001-C300001010/05/1992102P-0001-33210002010/05/1992183FD-0001-144135002010/05/1992204DD-0001-210150002010/05/1992205T-0002-AT31002217/10/199222numpedidonumvendfecha2111/10/1992numlineanumpiezapreciocompracantpedidafecharecepcantrecibida1DK144-0002-P54510015/10/19921012T-0002-AT3000115/10/19921AligualqueelejemplodeSUMINISTRA,unaocurrenciadePEDIDO,nonecesariamente,seasociaríaaunaocurrenciadeVENDEDOR;yunadeLINPED,aunadePIEZAy,obligatoriamente,aunadePEDIDO(contodoslosatributosdecadauna).
Loquesepretendeilustrarconesteejemploesqueelconceptoderelaciónentreentidadesnopresuponeningúnmecanismoconcreto(comolasclavesajenasenelmodelorelacional,punterososimilares).
Simplementesabemosqueexisteunaasociaciónentreocurrenciasdeentidadesynonosinteresacómosealaimplementación,larepresentaciónfísicadelosdatos.
controldeexistencias.
Paracontrolarelniveldeexistenciasennuestroalmacénsehaoptado(notieneporquéserlamejoralternativa)porunaentidadINVENTARIOconunarelación1:1conPIEZA,conrestriccióndeexistencia.
Decadapiezasemantieneelúltimorecuentofísicoenelalmacén,porsihahabidoroturasopérdidasquealterenladiferenciaentrebienesqueentranyquesalen.
Tambiénseespecificacualeselnivelmínimodeexistencias,queindicacualeselmomentoadecuadopararealizarunnuevopedidoaproveedores.
Cadaocurrenciadelaentidadseidentificaporunnúmerodeinventario(numbin)yobligatoriamenteestaráasociadaauna(distintaparacadaentradadeinventario)dePIEZA.
introducciónalmodeloEER169IX3.
otrosmecanismosdeabstracciónIX3.
1.
agregaciónLoqueenEERseentiendecomoagregaciónesuncasomuyparticulardelconceptoexpuestoeneltemademodelosdedatos.
EnEER,laagregaciónrepresentalacreacióndeunobjetocompuestoapartirdeunarelaciónentreentidades,detalformaqueéstesecomportacomounaentidadmás,aunquedeunniveldeabstracciónmayor.
Sea,porejemplo,elcasodehombreymujeresqueseunenenmatrimonio(hemosobviadolosatributosdelasentidadesparanocomplicareldiagrama).
Elhechodequeunhombreyunamujersecasennosignificaqueobligatoriamentelohaganporlocivil(entendiendocomotallaaccióndecasarseanteunaautoridadcivilnoeclesiástica).
Sinembargo,paraaquellasparejasquenohayancelebradoceremoniareligiosa,nosinteresasabereljuzgadoenquesehancasado.
Evidentemente,siatendemosalaconectividaddelarelacióncasado_con,unhombresólosepuedecasarconunaúnicamujeryviceversa(ennuestrosistemadeinformación).
Silohicieranporlocivil,pasaríanporunúnicojuzgado,mientrasqueelmismojuzgadopodríahabercasadoamuchasparejas.
Elmecanismoderepresentaciónloquehaceesabstraerlasentidadesylarelaciónquelasasociaparaobtenerunaentidadcompleja,queasuvezpuederelacionarsecomounaentidadnormalconelrestodeentidadesdenuestrosistema.
Aunquetienemuchospuntosdecontactoconunaternaria,laagregaciónremarcalarelaciónentreunadeterminadaparejadeentidades,almismotiempoquenoimplicaunanecesariaasociaciónconlaterceraentidad,comosíocurríaenlasternarias.
Porúltimo,recordarquelasrestriccionesdeexistenciasepuedenaplicartantoalasentidadessimplescomoalanuevaentidadagregada(podríamosobligaraquetodauniónmatrimonialfueracivil,pintandouna"E"enelarcodelarelacióncasaquelauneconlaentidadagregadacasado_con).
HOMBREcasaJUZGADOMUJERCasado_conBD12006-2007170IX3.
2.
generalizaciónLageneralizaciónrepresentafielmenteelmecanismodeabstracciónmostradoeneltemademodelosdedatos.
Recordamosquesetratadeunajerarquizacióndeentidadesentiposysubtipos,yqueseaplicandiferentespropiedadesdecobertura.
COCHEVEHCULOMOTONúmerodepuertasrefrigeraciónmatrículamarcamodeloP,DElobjetoespecializadoseunealobjetogeneralizadomedianteunaflecha,ylaspropiedadesdecoberturaseexpresanmedianteiniciales:P/T,D/S(parcial/total,disjunta/solapada).
IX4.
ejemplo2SetratadecaptarenundiagramaEERlainformaciónmínimaquenecesitarecogerunalocalidadXsobrelaseleccionesmunicipalesyautonómicas.
Esalocalidadtieneensucensoinformaciónsobreunaseriedepersonasquepuedenejercersuderechoalvotoenestaselecciones.
Paralaseleccionessehandispuestounaseriedecolegioselectoralesenestalocalidad,estoscolegiosvamosasuponerqueseencuentranidentificadospornúmeroscorrelativosyqueconocemoselnúmerototaldeelectores,ydentrodeelloshayunaseriedemesasquesuponemossenombranA,B,C.
.
.
LainformaciónquemantienesobrelaspersonasdelcensoelectoraldeestalocalidadesD.
N.
I.
/pasaporte,nombre,fechadenacimiento,direcciónymesaenlaquedebenvotar.
Deentrelaspersonasquepuedenvotarhayalgunasquenotienenlanacionalidadespaolaperoqueformanpartedelcensoparavotarenlaseleccionesmunicipales.
Delaspersonaspertenecientesacadaunadelasmesasydenacionalidadespaolaesnecesarioconoceraquiénlehatocadoserpresidentedelamesayaquiénsusuplente,aquiéneslosvocalesytambiénsussuplentes;estasfigurassonimprescindiblesencadamesa.
Porotroladosemantieneinformaciónsobrelasformacionespolíticasquesepuedenvotarenestaseleccionesydecadaunadeellasademásdesussiglasysunombrecompletoguardamoselnombredelpresidentedelpartidoanivelnacional,losnombresdelaspersonasqueintegransulistamunicipal(suponemosqueson4personasporlista,debenperteneceralcensodelalocalidad,ynopuedenformarpartedeningunamesaelectoral)distinguiendoelordenquecadaunaocupaenlalista;ylosnombresyD.
N.
I.
delosapoderados(quenotienenporquéperteneceralcensoynoestánasignadosaningunamesa)delpartidoenlalocalidad.
introducciónalmodeloEER171Unavezrealizadalavotaciónsedebedepodersabercuantosvotosharecibidocadaunodelospartidosencadaunadelasmesastantoparalaseleccionesmunicipalescomoparalasautonómicas,asícomoelnúmerodevotosenblancoynúmerodevotosnulosquehahabidoparacadaunadeellasencadamesa.
CuestionessobreesteEER:1.
Elpresidentedeunamesaelectorales,obligatoriamente,votanteenesamismamesa2.
Todaslasmesastienenpresidenteyvocales3.
Todomiembrodeunamesatienesuplente4.
Cuántospresidenteshaycomomáximoenunamesaelectoral5.
ConocemosaloscandidatosalaseleccionesautonómicasNACIONALESEXTRANJEROSMESASCOLEGIOSPARTIDOSAPODERADOSnúmerototalVotletradni/pasnombrefechaNacdirecciónsiglasnombrelíderdni/pasnombrevotanpertenecenrepresentanlistamunicipalIDordensupleVOCALESPRESIDENTESVOTANTESEblancosAnulosAnumVotosnumVotosautonómicaslocalesEEMIEMBROSSUPLENTESblancosMnulosMP,DT,DT,DBD12006-2007172IX5.
deficienciasdelmodeloElmodeloEntidad_Relación,talycomolodefinióChenensumomento,describedeunamaneramuycomprensiblelaparteestáticadeunsistemadeinformaciónaunque,esosí,noescapazdecaptartodaslaspeculiaridadesdeunsistemadeinformacióncomplejo.
Sinembargo,siguesinpoderrepresentarladinámica,elconjuntodeoperacionesytransaccionesqueafectanalaevolucióndelosdatosaalmacenar.
TampocodisponedeSGBDcomercialesquepermitanlaexplotacióndeunesquemalógicodescritobajoestemodelo.
Noobstante,síesampliamenteutilizadoenlafasedediseoconceptual,queposteriormenteestraducidoamodelorelacional.
BIBLIOGRAFA[CELMA97]

远程登录VNC无法连接出现

今天有网友提到自己在Linux服务器中安装VNC桌面的时候安装都没有问题,但是在登录远程的时候居然有出现灰色界面,有三行代码提示"Accept clipboard from viewers,Send clipboard to viewers,Send primary selection to viewers"。即便我们重新登录也不行,这个到底如何解决呢?这里找几个可以解决的可能办法,我们多多尝试。...

ReliableSite怎么样,月付$95美国洛杉矶独立服务器

ReliableSite怎么样?ReliableSite好不好。ReliableSite是一家成立于2006年的老牌美国商家,主要经营美国独立服务器租赁,数据中心位于:洛杉矶、迈阿密、纽约,带宽1Gbps起步,花19美元/月即可升级到10Gbps带宽,月流量150T足够各种业务场景使用,且免费提供20Gbps DDoS防护。当前商家有几款大硬盘美国独服,地点位于美国洛杉矶或纽约机房,机器配置很具有...

ZoeCloud:香港BGP云服务器,1GB内存/20GB SSD空间/2TB流量/500Mbps/KVM,32元/月

zoecloud怎么样?zoecloud是一家国人商家,5月成立,暂时主要提供香港BGP KVM VPS,线路为AS41378,并有首发永久8折优惠:HKBGP20OFF。目前,解锁香港区 Netflix、Youtube Premium ,但不保证一直解锁,谢绝以不是原生 IP 理由退款。不保证中国大陆连接速度,建议移动中转使用,配合广州移动食用效果更佳。点击进入:zoecloud官方网站地址zo...

97sese.com/为你推荐
h连锁酒店连锁酒店有哪些广东GDP破10万亿中国GDP10万亿,广东3万亿多。占了中国三分之一的经纪。如果,我是说如果。广东独立了。中国会有什甲骨文不满赔偿如果合同期不满被单位辞退,用人单位是否需要赔偿蒋存祺蒋存祺的主要事迹百度关键词分析百度竞价关键词分析需要从哪些数据入手?www.haole012.com012qq.com真的假的www.78222.com我看一个网站.www.snw58.com里面好有意思呀,不知道里面的信息是不是真实的www.kanav001.com长虹V001手机小游戏下载的网址是什么广告法有那些广告法?还有广告那些广告词?www.123qqxx.com我的首页http://www.hao123.com被改成了http://www.669dh.cn/?yhc
免费虚拟主机空间 合肥虚拟主机 cve-2014-6271 gomezpeer 12306抢票攻略 网站被封 权嘉云 毫秒英文 江苏双线服务器 双线机房 阿里云免费邮箱 net空间 东莞主机托管 美国迈阿密 广州主机托管 免费主页空间 fatcow 时间服务器 linux服务器系统 建站行业 更多