Base de datos Teoría - 2011-I

download Base de datos Teoría - 2011-I

of 181

Transcript of Base de datos Teoría - 2011-I

  • 7/29/2019 Base de datos Teora - 2011-I

    1/181

    Base de DatosTeora

  • 7/29/2019 Base de datos Teora - 2011-I

    2/181

    2

    CARRERAS PROFESIONALES CIBERTEC

  • 7/29/2019 Base de datos Teora - 2011-I

    3/181

    B A S E D E D A T O S T E O R A 3

    CIBERTEC CARRERAS PROFESIONALES

    NDICEPgina

    Presentacin 5

    Red de contenidos 6

    Unidad de aprendizaje 1 : Sistema de base de datos

    1.1 Tema 1 : Conceptos bsicos 8

    1.1.1. : Introduccin al curso 9

    1.1.2. : Objetivos de los sistemas de bases de datos 10

    1.1.3. : Representacin de la informacin 12

    1.2 Tema 2 : Arquitectura de un sistema de bases de datos 201.2.1. : Arquitectura de un sistema de bases de datos 25

    1.2.2. :Organizaciones de archivos y el nivel interno de laarquitectura

    24

    Unidad de aprendizaje 2 : Modelo conceptual

    2.1 Tema 3 : Modelo conceptual 32

    2.1.1. : Modelo conceptual de datos 32

    2.2 Tema 4 : Modelo Entidad-Relacin 342.2.1. : Diagrama Entidad-Relacin 36

    2.2.2. : Ejemplo integrador 47

    2.2.3. : Ejercicios propuestos 51

    Unidad de aprendizaje 3 : lgebra relacional

    3.1 Tema 5 : lgebra relacional 67

    3.1.1. : Integridad relacional 67

    3.1.2. : Operaciones del lgebra relacional 69

    3.1.3. Operaciones tradicionales de la teora de conjuntos 693.1.4. : Operaciones relacionales especiales 73

    Unidad de aprendizaje 4 : Modelo relacional y normalizacin

    4.1 Tema 6 : Normalizacin 91

    4.1.1. : Modelo relacional 91

    4.1.2. : Normalizacin 94

  • 7/29/2019 Base de datos Teora - 2011-I

    4/181

    4

    CARRERAS PROFESIONALES CIBERTEC

    4.1.3. : Primera Forma Normal 96

    4.1.4. : Dependencia Funcional y otros conceptos 100

    4.1.5. : Segunda Forma Normal 104

    4.1.6. : Tercera Forma Normal 105

    4.1.7. : Forma Normal de Boyce-Codd (FNBC) 107

    4.1.8. : Cuarta Forma Normal 110

    4.1.9. : Quinta Forma Normal 112

    4.1.10. : Normalizacin. Ejercicios 113

    4.1.11. : Normalizacin. Ejemplo 120

    Unidad de aprendizaje 5 : Obtencin del modelo lgico-global de los

    datos a partir del DER

    5.1. Tema 7 : Modelo lgico 131

    5.1.1. : Obtencin del modelo lgico-global de los datos a partirdel DER

    131

    5.1.2. : Modelo lgico. Ejercicios 134

    5.2. Tema 8 : Metodologa de diseo de base de datos 142

    5.2.1. : Metodologa para el diseo de bases de datos 142

    Unidad de aprendizaje 6 : Recuperacin, concurrencia y seguridad

    6.1 Tema 9 Administracin de base de datos 156

    6.1.1. : Recuperacin, concurrencia y seguridad 1566.1.2. : Requerimientos actuales 165

  • 7/29/2019 Base de datos Teora - 2011-I

    5/181

    B A S E D E D A T O S T E O R A 5

    CIBERTEC CARRERAS PROFESIONALES

    PRESENTACIN

    El presente manual est diseado para que sea utilizado como texto de trabajoen el curso de Bases de Datos. Por esto, se encuentra estructurado de acuerdocon la organizacin del mismo.

    Cada sesin contempla, entre otros aspectos, los objetivos que se persiguen ylos contenidos que se abordan en la misma, lo cual permite que el alumnopueda tener una idea clara de los aspectos que se van a tratar y del alcance destos en el curso.

    En el desarrollo de los contenidos, las explicaciones estn ilustradas conejemplos y figuras que facilitan la comprensin. Algunas sesiones estncompletamente dedicadas a la ejercitacin de los contenidos impartidos, demodo que los alumnos puedan alcanzar habilidades en la aplicacin de lastcnicas estudiadas.

    Al final de cada sesin, se aade una Autoevaluacin, en la cual se proponenejercicios para que los estudiantes los realicen independientemente, fuera declases, de manera que puedan aumentar sus habilidades y comprobar susconocimientos. Para recordar, brinda, de modo resumido, las conclusiones msimportantes acerca de los contenidos tratados.

  • 7/29/2019 Base de datos Teora - 2011-I

    6/181

    6

    CARRERAS PROFESIONALES CIBERTEC

    RED DE CONTENIDOS

    CURSO DE

    Aspectosintroductorios

    Surgimiento de las base dedatosObjetivos de los SBDRepresentacin de lainformacin

    Arquitectura de un SBDOrganizaciones dearchivos

    Conceptos bsicos

    Arquitectura de un SBD

    Temas actualesde bases de datos

    RecuperacinConcurrenciaSeguridad

    Extensiones al modelorelacionalBases de datos orientadasa objetosBases de datosdistribuidasEntorno Cliente/Servidor

    Proteccin de lasbases de datos

    Temas actuales

    Modelo lgico-global delos datos

    Modelo relacional

    Modelo Entidad-RelacinDiagrama Entidad-Relacin

    Caractersticas delmodelo relacionalNormalizacin

    Obtencin del modelolgico relacional a partir

    del DER

    Metodologa para eldiseo de bases de

    datos

    Integridad relacionallgebra relacional

    Modelamiento conceptual

    Modelo relacional

    lgebra Relacional

  • 7/29/2019 Base de datos Teora - 2011-I

    7/181

    B A S E D E D A T O S T E O R A 7

    CIBERTEC CARRERAS PROFESIONALES

    INTRODUCCIN AL CURSO.CONCEPTOS BSICOS

    LOGRO DE LA UNIDAD DE APRENDIZAJE

    Al final de la unidad, los alumnos describirn los componentes de una base de datos apartir de casos propuestos por el profesor, tomados de situaciones cotidianas y deejemplos producidos individualmente.

    TEMARIO

    1.1. Tema 1: Conceptos bsicos1.1.1 Introduccin al curso1.1.2 Conceptos bsicos1.1.3. Representacin de la informacin

    1.2. Tema 2: Arquitectura de un sistema de bases de datos1.2.1 Arquitectura de un sistema de bases de datos

    ACTIVIDADES PROPUESTAS

    1. Explicaciones por parte del facilitador combinadas con ejemplos.

    2. Formulaciones de preguntas de comprobacin dirigidas a los alumnos sobre los temastratados.

    UNI DAD DE

    APRENDIZAJE

    1

  • 7/29/2019 Base de datos Teora - 2011-I

    8/181

    8

    CARRERAS PROFESIONALES CIBERTEC

    Tema 1: Conceptos bsicos

    1.1.1 Introduccin al curso

    1.1.1.1. Surgimiento histrico de las bases de datos

    Al estudiar el desarrollo del procesamiento automatizado de datos, en lo que serefiere al aseguramiento tcnico, se habla de diferentes generaciones.

    Desde el punto de vista del aseguramiento matemtico y, en particular, delaseguramiento de programas, algunos autores reconocen tres generaciones:

    Solucin de tareas aisladas Integracin de tareas aisladas en sistemas particulares Integracin de sistemas particulares en sistemas automatizados de direccin

    Este proceso de integracin ocurre paralelamente, aunque no simultneamente,en dos esferas:

    a. Integracin de los programas

    Ha estado facilitada por el uso de lenguajes de programacin cada vez mssofisticados y de redactores, que permiten el acoplamiento de mdulos escritosen lenguajes diferentes.

    b. Integracin de los datos

    Se han producido tres categoras de tcnicas para su manipulacin:

    1. Sistemas orientados a los dispositivos

    Programas y archivos que son diseados y empleados de acuerdo con lascaractersticas fsicas de la unidad central y los perifricos. Cada programaest altamente interconectado con sus archivos, por lo que la integracin dedatos de diferentes sistemas es imposible prcticamente.

    2. Sistemas orientados a los archivos

    La lgica de los programas depende de las tcnicas de organizacin de losarchivos (secuencial, directo, etc.). Cada usuario organiza su archivo deacuerdo con sus necesidades y las relaciones entre los elementos seestablecen a travs de los programas de aplicacin.

    Esta forma de trabajo implica redundancia de datos, que trae aparejadamayor gasto de memoria y complica las operaciones de actualizacin(modificar un dato donde quiera que aparezca). Esto aumenta el tiempo detratamiento y atenta contra la integridad de la informacin.

    Cuando se habla de integridad, se est haciendo referencia a que, en todomomento, los datos almacenados estn correctos en correspondencia conla realidad.

  • 7/29/2019 Base de datos Teora - 2011-I

    9/181

    B A S E D E D A T O S T E O R A 9

    CIBERTEC CARRERAS PROFESIONALES

    Adems, en la vida real, se establecen relaciones entre los objetos que sonmuy difciles de representar u obtener a partir de sistemas tradicionales dearchivos. Por ejemplo, si se tiene informacin sobre trabajadores yestudiantes de una facultad, las aplicaciones requeridas van a definir lamanera de organizar y estructurar los archivos.

    Si se desean obtener datos como promedio de las calificaciones de cadaalumno, listado de estudiantes por grupo, categora cientfica y docente decada profesor, y salario de cada uno, resulta adecuado establecer dosarchivos: uno de profesores y otro de estudiantes.

    Qu ocurre si se quieren establecer vnculos entre los profesores yestudiantes?

    Por ejemplo, si se desea obtener lo siguiente:

    Los estudiantes de un profesor Los profesores de un estudiante

    De esta manera, se estructurara un archivo de profesores y estudiantes

    que resolvera algunas demandas, pero sera ineficiente para otras.

    Entonces, es posible representar de manera eficiente, utilizando losmedios de cmputo, los casos o procesos1 de la realidad objetiva, aunquesea, por supuesto, de forma esquemtica, pero en la que se establezcandeterminados vnculos entre los elementos u objetos que forman parte deesos procesos o casos?

    Se observa que es posible hacerlo a travs de la utilizacin de bases dedatos (BD) y de los sistemas de gestin de bases de datos (SGBD) quedirigen su manipulacin.

    Se tiene, entonces, la tercera categora:

    3. Sistemas orientados a base de datos

    Qu es una base de datos? Aunque existen distintas formas de definir unabase de datos. La siguiente puede considerarse la ms adecuada:

    1 A los casos o procesos, tambin se le denomina proceso de negocio.

  • 7/29/2019 Base de datos Teora - 2011-I

    10/181

    10

    CARRERAS PROFESIONALES CIBERTEC

    1.1.1.2. Definicin debase de datos

    Conjunto de datos interrelacionados entre s, almacenados con carcter ms omenos permanente en la computadora. Es decir, puede considerarse unacoleccin de datos variables en el tiempo.

    El software que permite la utilizacin y/o la actualizacin de los datosalmacenados en una (o varias) base(s) de datos por uno o varios usuarios desdediferentes puntos de vista y a la vez se denomina sistema de gestin de basesde datos (SGBD).

    Es importante diferenciar los trminos base de datos y SGBD.

    El objetivo fundamental de un SGBD consiste en suministrar al usuario lasherramientas que le permitan manipular, en trminos abstractos, los datos, de talforma que no le sea necesario conocer el modo de almacenamiento de los datosen la computadora ni el mtodo de acceso empleado.

    Los programas de aplicacin operan sobre los datos almacenados en la base,utilizando las facilidades que brindan los SGBD, los que, en la mayora de loscasos, poseen lenguajes especiales de manipulacin de la informacin quefacilitan el trabajo de los usuarios.

    1.1.2. Objetivos de los Sistema de base de datos

    Existen muchas formas de organizar las bases de datos, pero hay un conjunto deobjetivos generales que deben cumplir todos los SGBD, de modo que faciliten elproceso de diseo de aplicaciones y que los tratamientos sean ms eficientes yrpidos, dando la mayor flexibilidad posible a los usuarios.

    Los objetivos fundamentales de los SBD son los siguientes:

    1.1.2.1. Independencia de los datos y los programas de aplicacin

    Se ha observado que, con archivos tradicionales, la lgica de la aplicacincontempla la organizacin de los archivos y el mtodo de acceso. Porejemplo, si por razones de eficiencia se utiliza un archivo secuencialindexado, el programa de aplicacin debe considerar la existencia de losndices y la secuencia del archivo. Entonces, es imposible modificar laestructura de almacenamiento o la estrategia de acceso sin afectar elprograma de aplicacin (naturalmente, lo que se afecta en el programa sonlas partes de ste que tratan los archivos, lo que es ajeno al problema realque el programa de aplicacin necesita resolver). En un SBD, seraindeseable la existencia de aplicaciones y datos dependientes entre s, pordos razones fundamentales:

    1. Diferentes aplicaciones necesitarn diferentes aspectos de los mismosdatos (por ejemplo, puede requerirse la representacin decimal obinaria).

    2. Se debe modificar la estructura de almacenamiento o el mtodo deacceso, segn los cambios en el caso o proceso de la realidad sin

  • 7/29/2019 Base de datos Teora - 2011-I

    11/181

    B A S E D E D A T O S T E O R A 1 1

    CIBERTEC CARRERAS PROFESIONALES

    necesidad de modificar los programas de aplicacin (tambin parabuscar mayor eficiencia).

    La independencia de los datos se define como la inmunidad de lasaplicaciones a los cambios en la estructura de almacenamiento y en laestrategia de acceso. Todo esto constituye el objetivo fundamental de losSBD.

    1.1.2.2. Minimizacin de la redundancia

    Se ha comprobado cmo, con los archivos tradicionales, se produceredundancia de la informacin. Uno de los objetivos de los SBD es minimizarla redundancia de los datos. Se dice disminuirla, no eliminarla, pues, aunquese definen las bases de datos como no redundantes, en realidad s existe ,pero en un grado no significativo que servir para disminuir el tiempo deacceso a los datos o para simplificar el mtodo de direccionamiento. Lo quese trata de lograr es la eliminacin de la redundancia superflua.

    1.1.2.3. Integracin y sincronizacin de las bases de datos

    La integracin consiste en garantizar una respuesta a los requerimientos dediferentes aspectos de los mismos datos por diferentes usuarios, de formaque, aunque el sistema almacene la informacin con cierta estructura y ciertotipo de representacin, debe garantizar entregar al programa de aplicacinlos datos que solicita y en la forma en que lo solicita.

    Est vinculada a la sincronizacin, que consiste en la necesidad degarantizar el acceso mltiple y simultneo a la base de datos, de modo quepuedan ser compartidos por diferentes usuarios a la vez. Estn relacionadas,ya que lo usual es que diferentes usuarios trabajen con diferentes enfoques yrequieran los mismos datos, pero desde diferentes puntos de vista.

    1.1.2.4 Integridad de los datos

    Consiste en garantizar la no contradiccin entre los datos almacenados, demodo que, en cualquier momento del tiempo, sean correctos, es decir, que nose detecte inconsistencia entre los mismos. Est relacionada con laminimizacin de la redundancia, ya que es ms fcil garantizar la integridad sise elimina sta.

    1.1.2.5. Seguridad y recuperacin

    Seguridad (tambin llamada proteccin): garantiza el acceso autorizado a los

    datos, la forma de interrumpir cualquier intento de acceso no autorizado, yasea por error del usuario o por mala intencin.

    Recuperacin: permite que el sistema de bases de datos disponga demtodos que garanticen la restauracin de las bases de datos al producirsealguna falla tcnica, interrupcin de la energa elctrica, etc.

  • 7/29/2019 Base de datos Teora - 2011-I

    12/181

    12

    CARRERAS PROFESIONALES CIBERTEC

    1.1.2.6. Facilidad de manipulacin de la informacin

    Los usuarios de una base de datos pueden acceder a ella con solicitudespara resolver muchos problemas diferentes. El SBD debe contar con lacapacidad de una bsqueda rpida por diferentes criterios, debe permitir quelos usuarios planteen sus demandas de una forma simple, aislndolo de lascomplejidades del tratamiento de los archivos y del direccionamiento de losdatos. Los SBD actuales brindan lenguajes de alto nivel, con diferentesgrados de facilidad para el usuario no programador, que garantizan esteobjetivo, los llamados sublenguajes de datos.

    1.1.2.7. Control centralizado

    Uno de los objetivos ms importantes de los SBD es garantizar el controlcentralizado de la informacin. Permite comprobar, de manera sistemtica ynica, los datos que se almacenan en la base de datos, as como el acceso aella.

    Lo anterior implica que debe existir una persona o un conjunto, que tenga laresponsabilidad de los datos operacionales: el administrador de la base dedatos puede considerarse parte integrante del SBD cuyas funciones seabordarn en la siguiente sesin.

    Existen otros objetivos que deben cumplir los SBD que, en muchos casos,dependen de las condiciones o requerimientos especficos de utilizacin delsistema.

    1.1.3. REPRESENTACIN DE LA INFORMACIN

    En el proceso y construccin de todo sistema informativo automatizado, el diseode la base de datos ocupa un lugar importante, a tal punto que sta puede verse

    como un proceso relativamente independiente dentro del diseo del sistema ycompuesto por una serie de etapas. Es por ello que resulta de inters el estudiode los problemas relacionados con el diseo de las bases de datos y elmodelamiento de la informacin.

    1.1.3.1 Niveles de abstraccin referidos a la informacin

    Cuando se habla de informacin, se hace referencia, de forma general, a tresniveles diferentes de abstraccin, tendindose a saltar de uno a otro sinestablecer una advertencia previa.

    1.1.3.1.1 Nivel del mundo real

    El primero de estos niveles es el del MUNDO REAL, en el queexisten entidades u objetos, que no son ms que elementos queexisten y estn bien diferenciados entre s, que poseen propiedadesy entre los cuales se establecen relaciones. Por ejemplo, una silla esuna entidad u objeto, un automvil, un empleado, un profesor, unestudiante, que son elementos concretos, tambin lo son; perotambin puede ser no tangible, como un suceso cualquiera, unacuenta de ahorro o un concepto abstracto.

  • 7/29/2019 Base de datos Teora - 2011-I

    13/181

    B A S E D E D A T O S T E O R A 1 3

    CIBERTEC CARRERAS PROFESIONALES

    Entre las propiedades que caracterizan a una entidad u objetodestacan el color, el valor monetario, el nombre, etc.

    De las relaciones entre las entidades u objetos, se abordar msadelante.

    La determinacin de cierta entidad u objeto correspondiente a uncaso o proceso est muy relacionada con el nivel de abstraccin enel que se est realizando el anlisis. As, por ejemplo, si se estudiael comportamiento de un insecto especfico en determinadascondiciones climticas, las propiedades y relaciones que interesanson de un cierto tipo; sin embargo, si se estuviera realizando unestudio sobre las diferentes especies de insectos, seran otros losobjetos a definir, as como las propiedades que los caracterizaran ylas relaciones que se estableceran. Si se estuviera analizando todoel reino animal, seran tambin otros los objetos a definir, con suscaractersticas y propiedades.

    1.1.3.1.2 Nivel del dominio de las ideas

    El segundo nivel es el del DOMINIO DE LAS IDEAS. Es en el que sedecide la informacin que debe existir en la base de datos sobre uncaso o proceso del mundo real, es decir, qu debe almacenarse.Aqu, es donde realmente se define el contenido informativo querepresentar al caso, proceso o ente de la realidad objetiva que seest analizando. De modo que, en este nivel, se definen qu objetosy propiedades son representativos. Ya que sobre estos es necesarioalmacenar informacin.

    En este nivel, se trabaja con los conceptos ms importantes delmodelo de datos, que establecen la relacin entre el mundo real y lainformacin almacenada fsicamente en la base de datos:

    Campo o atributo.- es la unidad menor de informacin sobre unobjeto que se almacena en una base de datos y representa unapropiedad de un objeto; por ejemplo, el color.Sin embargo, hay que distinguir entre el nombre o tipo del atributoy el valor del atributo, ya que un nombre de atributo puede tomardiferentes valores sobre un cierto conjunto que se denominadominio. A un valor de un atributo determinado o definido en eldominio dado, en un cierto momento del tiempo, se le denominaocurrenciadel atributo.

    Ejemplo:

    Atributo Color Cat_DocDominio {Azul, Rojo, Verde,...} {PT, PA, A, I}Ocurrencia Rojo A

    Ahora bien, una coleccin identificable de campos asociados es unartculo o registro y representa un objeto con sus propiedades. Unavez ms, es imprescindible distinguir entre nombre o tipo deartculo y ocurrencia de artculo. Una ocurrencia de artculo otupla consiste en un grupo de ocurrencias de campos relacionados,representando una asociacin entre ellos. Por ejemplo, tenemos un

  • 7/29/2019 Base de datos Teora - 2011-I

    14/181

    14

    CARRERAS PROFESIONALES CIBERTEC

    artculo correspondiente al objeto profesor, en un caso o proceso dela realidad que pretenda representar el comportamiento de unafacultad. El nombre o tipo de artculo puede ser PROFESOR, queest formado por los siguientes tipos de campos o atributos:

    DNI_PROF : nmero de DNI del profesorNOM_PROF : nombre del profesorCAT_DOC : categora docente del profesorDPTO : departamento docente al que pertenece el profesor

    Una ocurrencia de este artculo puede ser:

    12801731 Hernndez, J uan PA Computacin.

    Un archivo o archivos pueden ser definidos como un conjunto deocurrencias de un mismo tipo de artculo.

    En la prctica, llama la atencin las colecciones o conjuntos deobjetos similares. Adems, es necesario almacenar la informacinde las mismas propiedades para cada uno de ellos; por ejemplo, elconjunto de profesores de la facultad.

    Entonces, una base de datos contendr muchas ocurrencias decada uno de los tipos de artculos, lo que implica que la base dedatos, por supuesto, tambin contendr muchas ocurrencias de losdistintos tipos de atributos.

    Uno de los momentos cruciales en el diseo de un caso de larealidad objetiva que se concreta en una base de datos es,precisamente, la seleccin de los conjuntos de objetos y suspropiedades.

    Adems, existe otro concepto muy importante en este nivel que es elconcepto de llave o clave. Se denomina a este ltimo como unatributo o conjunto de de atributos de un artculo que define quecada ocurrencia de artculo de la base de datos sea nica. Enprincipio, cada artculo tiene una llave, ya que se tiene comohiptesis que cada elemento u ocurrencia del artculo es diferente delas dems. Por ejemplo, el DNI del trabajador puede constituir lallave del artculo trabajador.

    1.1.3.1.3 Nivel de los datos

    El tercer nivel corresponde a los datos propiamente dichos, loscuales son representados mediante cadenas de caracteres o de bits.

    En este nivel es necesario tener en cuenta la diferencia entre tipo dedato y valor del dato. El tipo de dato corresponde a un atributo o tipode atributo, que est asociado a un tipo de artculo correspondiente,mientras que, el valor corresponde a una ocurrencia del atributo. Sinembargo, una coleccin de bits o caracteres que representa unnico valor de datos y que puede existir independientemente decualquier informacin que se almacena adquiere significado slocuando se le asocia a un tipo de atributo. Se puede, por ejemplo,almacenar permanentemente los valores ROJ O, AZUL, VERDE, etc.

  • 7/29/2019 Base de datos Teora - 2011-I

    15/181

    B A S E D E D A T O S T E O R A 1 5

    CIBERTEC CARRERAS PROFESIONALES

    y asociarlos en un momento determinado a un tipo de atributo atravs de los valores que toma, representando una ocurrencia enuna tupla.

    1.1.3.2 Relaciones de correspondencia

    Es importante notar que, en general, habr asociaciones orelaciones enlazando las entidades bsicas.

    Estos enlaces se pueden establecer entre diferentes objetos o tiposde artculos o entre un mismo tipo de artculo. Por ejemplo, se puedetener una relacin entre dos tipos de objetos: SUMINISTRADOR yPRODUCTO, de modo que un suministrador puede suministrarmuchos productos y que un producto puede ser suministrado pormuchos suministradores y se conoce, adems, la CANTIDAD decada producto que suministra un suministrador dado. Otro ejemplopudiera ser con el artculo PERSONA, sobre el que se pudierarepresentar la relacin "SER MADRE DE", que no es ms que unarelacin que se establece entre elementos de un mismo tipo deartculo.

    Es necesario profundizar acerca de los diferentes tipos de relacionesque pueden ocurrir en la prctica y establecer la correspondenciaque existe entre los datos. Esta relacin puede ser simple ocompleja.

    Por relacin simple se entiende una correspondencia biunvoca (deuno a uno) entre las ocurrencias de los objetos, o sea, de losartculos. Si, por ejemplo, los objetos o entidades sonDocumento_Identidad y Persona, la correspondencia entre ellos essimple: a cada persona le corresponde un documento de identidad yviceversa.

    Si las entidades son Profesor y Carrera, la relacin es mscomplicada, porque en cada carrera docente trabajan variosprofesores. La terminologa usual expresa que la correspondenciade profesor a carrera es simple, ya que cada profesor es miembrode una nica carrera, mientras que la correspondencia de carrera aprofesor es compleja, pues cada carrera tiene, por lo general,muchos profesores.

    Persona1

    Documento_Identidad1

    Relacinde uno auno:

    Carrera1

    ProfesorM

    Relacinde uno amuchos:

  • 7/29/2019 Base de datos Teora - 2011-I

    16/181

    16

    CARRERAS PROFESIONALES CIBERTEC

    Hay cuatro tipos de relaciones posibles entre dos tipos de artculosA y B: La correspondencia de A a B puede ser simple y la recprocacompleja. La correspondencia de A a B puede ser compleja y larecproca simple. Ambas correspondencias pueden ser complejas o

    ambas pueden ser simples.Un ejemplo donde ambas correspondencias son complejas, lo es larelacin que se establece entre PROFESOR y ESTUDIANTE por laimparticin de clases, ya que un profesor puede impartir clases avarios estudiantes, pero, a su vez, un estudiante puede recibirclases de varios profesores:

    Las relaciones pueden tener diferentes caractersticas:

    Aunque la mayora de las relaciones asocian dos tipos de entidades, steno es siempre el caso. Por ejemplo,PROFESOR_HORARIO_ESTUDIANTE. Esto podra representar elhecho de que un profesor imparte clases a una cierta hora a un ciertoestudiante. Esto no es lo mismo que la combinacinPROFESOR_HORARIO y HORARIO_ESTUDIANTE, ya que lainformacin de que "el profesor P5 imparte clases en el horario H1 alestudiante E4" dice ms que la combinacin "el profesor P5 imparteclases en el horario H1" y "el estudiante E4 recibe clases en el horarioH1"

    Las relaciones pueden establecerse entre un mismo tipo de entidad. Porejemplo, una asociacin entre un profesor y otro puede venir dada por elhecho de que un profesor sea el jefe de otros profesores. A este tipo derelacin frecuentemente se le llama relacin recursiva.

    Es importante sealar que una asociacin entre entidades puede serconsiderada en s como una entidad, ya que una relacin es concebidacomo un objeto bien diferenciado sobre el cual se desea almacenarinformacin.

    Entonces, un modelo de datos no es ms que la representacin de uncaso de la realidad objetiva a travs de los objetos, sus propiedades y lasrelaciones que se establecen entre ellos.

    Profesor

    M

    Estudiante

    M

    Relacinde muchos

    a muchos:

    A B

    A BA B

    A B

  • 7/29/2019 Base de datos Teora - 2011-I

    17/181

    B A S E D E D A T O S T E O R A 1 7

    CIBERTEC CARRERAS PROFESIONALES

    1.1.3.3 Ejemplo integrador

    Caso: La bibliotecaEn una biblioteca, se desea disear la base de datos para el control de losprstamos de libros. De cada libro se conoce el cdigo que lo identifica, suttulo y la cantidad de pginas que tiene.

    Un libro se clasifica por una materia y por sta se clasifican muchos libros. Decada materia se conoce el cdigo que la identifica y su nombre. Los librostienen muchos ejemplares, pero un ejemplar lo es de un solo libro. De cadaejemplar se sabe su cdigo y su estado de conservacin.

    Asimismo, un libro se les puede prestar a muchos usuarios y a un usuario sele puede prestar muchos ejemplares; del usuario se conoce su DNI, nombre yapellido paterno, su direccin, y su ocupacin

    Se determinan las entidades:LibroMateriaEjemplarUsuario

    Se determinan los atributos de cada entidad:Libro = cdigo que lo identifica, su ttulo y la cantidad de pginas quetiene

    Materia =cdigo que la identifica y nombre

    Ejemplar =cdigo y estado de conservacin

    Usuario =DNI, nombre y apellido paterno, direccin y ocupacin Nivel de datos:

    Valores que tendr cada atributo de una entidad

    ENTIDAD: LIBROCDIGO TTULO CANTIDAD

    DE PGINASL0001 BASE DE DATOS RELACIONALES 500L0002 SISTEMAS OPERATIVOS MODERNOS 600

    ENTIDAD: MATERIACDIGO NOMBRE

    M0001 BASE DE DATOSM0002 SISTEMAS OPERATIVOS

    ENTIDAD: EJ EMPLARCDIGO ESTADO DE CONSERVACIN

    E001 BUENOE002 MALO

  • 7/29/2019 Base de datos Teora - 2011-I

    18/181

    18

    CARRERAS PROFESIONALES CIBERTEC

    ENTIDAD: USUARIODNI NOMBRE APELLIDO

    PATERNODIRECCIN OCUPACIN

    45874125 J UAN PEREZ LA MAR 123 DOCTOR48525641 PAULO GUILLEN LA J OTA 666 ABOGADO

    Relaciones de correspondencia

    1.1.3.4 AUTOEVALUACIN

    a. Defina los conceptos de base de datos y de sistema de gestin de bases dedatos.

    b. Cul es el principal objetivo de los SBD? Explique en qu consiste.

    c. Es la minimizacin de la redundancia un objetivo de los SBD? Explique surespuesta.

    d. Mencione 10 entidades que usted conozca. Defina algunos atributos para cadauna y decida cul puede ser la llave primaria en cada caso.

    e. Mencione 10 relaciones que sea capaz de reconocer. Defina el tipo de stas yalgunos atributos para cada una siempre que sea posible.

    f. Aplique la terminologa explicada en clases, correspondiente al nivel deldominio de las ideas, y describa las relaciones de correspondencia existentesen los siguientes casos de la realidad objetiva. Para ello, represente en ungrfico, de acuerdo con su criterio, las entidades y sus atributos, indicando losatributos que constituyen las llaves primarias, las relaciones y el tipo de stas,as como sus atributos.

    f.1 Para el control de las escuelas primarias en la ciudad de Lima se tiene lasiguiente informacin:De cada escuela, un nmero que la identifica, su nombre y su direccin.De cada aula, el nmero que la identifica, la cantidad de asientos quetiene y el piso en que se encuentra situada. De cada grupo de clases, unidentificador del grupo, el grado escolar del grupo y la cantidad dealumnos que tiene. De cada maestro, su DNI, su nombre, su sexo y elao en que se gradu. De cada alumno, su nmero de expediente, sunombre, su sexo y su fecha de nacimiento.Una escuela tiene muchas aulas y muchos grupos de clases, pero cadaaula pertenece a una escuela y lo mismo sucede con cada grupo.

    LIBRO MATERIAL M

    N 1

    LIBRO EJ EMPLARL M1 N

    LIBRO USUARIOL MN N

  • 7/29/2019 Base de datos Teora - 2011-I

    19/181

    B A S E D E D A T O S T E O R A 1 9

    CIBERTEC CARRERAS PROFESIONALES

    Un grupo siempre recibe clases en la misma aula y un aula pertenece aun solo grupo.En un grupo imparte clases un maestro y ste slo imparte clases en ungrupo. En cada grupo de clases hay muchos alumnos, pero un alumnoforma parte de un solo grupo.

    f.2 En un centro de informacin cientfica (biblioteca), se desea controlar eluso de la bibliografa que existe.En el centro existen varias salas. De cada sala se conoce el nmero quela identifica, especialidad y cantidad de empleados.En cada sala estn disponibles revistas y libros. De cada revista seconoce el cdigo que la identifica, nombre, fecha de publicacin y pas deprocedencia. De cada libro se conoce su cdigo, ttulo, editorial y pas deprocedencia. Cada libro y revista existente slo se encuentra en una sala.Las revistas slo pueden ser consultadas en las salas; sin embargo, loslibros pueden ser solicitados en prstamo por los usuarios, llevndose elcontrol de dichos prstamos. Un libro puede ser prestado a variosusuarios (durante la existencia del libro) y un usuario puede solicitarvarios libros. De cada usuario se sabe su DNI, nombre, distrito en quereside y departamento en que trabaja. Para cada libro se conoce la fechade inicio de un prstamo realizado a determinado usuario.

    f.3 En los centros de beneficio agrcola se les aplica diversos tratamientos alos tubrculos.De cada tipo de tubrculo (papa, yuca, camote, etc.), se conoce el cdigoque lo identifica, su descripcin y la variedad a la que pertenece. Cadatipo de tubrculo puede ser enviado a distintos centros de beneficio y enun centro de beneficio pueden ser tratados distintos tipos de tubrculos.De cada centro de beneficio se sabe el cdigo que lo identifica, sudireccin y la cantidad de trabajadores que tiene. A cada centro debeneficio se le asigna el plan (en kilogramos) de atencin a un tipo detubrculo.

    En un centro de beneficio se aplican diferentes tratamientos y untratamiento puede ser aplicado en diferentes centros de beneficio. Seconoce la cantidad de un tipo de tubrculo (en kilogramos) tratado en uncentro de beneficio segn un tratamiento dado. De cada tratamiento, seconoce el cdigo que lo identifica, su nombre y el objetivo que persigue.

    f.4 En un hospital se desea controlar la actividad asistencial que se brinda enlas consultas de la Sala de Emergencias.All brindan sus servicios los mdicos organizados en equipos. A unequipo pertenecen varios mdicos y un mdico pertenece a un equipo.De cada equipo se conoce el cdigo que lo identifica, el nombre del jefedel equipo y la periodicidad con la que le corresponde hacer guardia alequipo. De cada mdico se conoce su DNI, nombre, especialidad y

    categora. Los pacientes que llegan al Cuerpo de Guardia pueden seratendidos por varios mdicos (si sus sntomas indican la necesidad deque varios especialistas lo asistan) y un mdico atiende a muchospacientes. De cada paciente se sabe su DNI, nombre, edad, sexo yocupacin. Se sabe el tiempo dedicado por el mdico a la atencin de undeterminado paciente, as como el diagnstico que le hizo y el tratamientoque le indic.

    Los mdicos en la Sala de Emergencias pueden utilizar en su laborasistencial diferentes medios de diagnstico (Rayos X, anlisis, etc.) y un

  • 7/29/2019 Base de datos Teora - 2011-I

    20/181

    20

    CARRERAS PROFESIONALES CIBERTEC

    medio de diagnstico puede ser empleado por muchos mdicos. De cadamedio de diagnstico se conoce el cdigo que lo identifica, su descripciny el costo por unidad. Para cada mdico se conoce la cantidad de vecesque ha ordenado la aplicacin de un medio de diagnstico dado.

    1.2. Tema 2 : ARQUITECTURA DE UN SBD

    1.2.1. Arquitectura de un sistema de bases de datos

    Presentaremos a continuacin la arquitectura de un SBD, aunque no podemosasegurar que cualquier SBD se corresponda exactamente con ella. Sin embargo,esta arquitectura se corresponde suficientemente bien con un gran nmero desistemas. Adems, est de acuerdo con la arquitectura propuesta por el grupoANSI/SPARC.

    La arquitectura se divide en tres niveles generales: interno, lgico global yexterno.

    El nivel interno es el ms cercano al almacenamiento fsico, o sea, es el

    relacionado con la forma en que los datos estn realmente almacenados.El nivel externo es el ms cercano a los usuarios, o sea, es el relacionado con laforma en que los datos son vistos por cada usuario individualmente.

    El nivel lgico global es un nivel intermedio entre los dos anteriores.

    Existirn varias "vistas externas" diferentes. Cada vista es una representacin ms omenos abstracta de alguna porcin de la base de datos total y existir nicamente una

    "vista general", consistente en una representacin tambin abstracta de la base dedatos en su totalidad. Igualmente, existir una nica "vista interna" que representa a labase de datos completa, tal y como est realmente almacenada.

    A continuacin, estudiaremos con mayor detalle cada uno de los niveles de laarquitectura vista anteriormente y la forma en que ellos interactan.

    . . . .

    . . . .

    NIVEL EXTERNO(Vistas de usuariosindividuales)

    NIVEL LGICO GLOBAL(Vista general)

    NIVEL INTERNO(Vista de almacenamiento)

  • 7/29/2019 Base de datos Teora - 2011-I

    21/181

    B A S E D E D A T O S T E O R A 2 1

    CIBERTEC CARRERAS PROFESIONALES

    1.2.1.1. El nivel externo

    Es el nivel del usuario individual, donde un usuario puede ser un programadorde aplicacin o un usuario final con cualquier grado de sofisticacin. Cadausuario tiene un lenguaje a su disposicin:

    Para el programador, ese lenguaje puede ser un lenguaje deprogramacin convencional, tal como Pascal, o un lenguaje deprogramacin especfico de un sistema, tal como el FoxPro.

    Para el usuario final, el lenguaje puede ser un lenguaje de consulta(interrogaciones, query) o un lenguaje de propsito especial, quizsbasado en sistemas de menes y ventanas, y construido para satisfacerlos requerimientos de un usuario, y se encuentra soportado por algnprograma de aplicacin en lnea.

    Es importante sealar que todo lenguaje debe incluir un sublenguaje dedatos, o sea, un subconjunto del lenguaje que trata especficamente con losobjetos de la base de datos y sus operaciones. Se dice que el sublenguaje de

    datos (DSL) est embebido dentro del correspondiente lenguaje husped.Este lenguaje husped es el encargado de asegurar otras facilidades ajenasa la base de datos, tales como variables locales, operaciones de clculo,lgica if-then-else, etc. Un sistema dado, puede soportar mltiples lenguajeshusped y mltiples sublenguajes de datos.

    En principio, cualquier sublenguaje de datos es realmente una combinacinde, al menos, dos lenguajes subordinados: un lenguaje de definicin de datos(DDL), el cual garantiza la definicin o descripcin de los objetos de la basede datos, y un lenguaje de manipulacin de datos (DML), el que garantiza lamanipulacin o procesamiento de esos objetos.

    Ya se ha indicado que un usuario individual estar, generalmente, interesado

    slo en cierta porcin de la base de datos completa. An ms, la vista de esaporcin ser generalmente abstracta cuando se compara con la forma en quelos datos estn fsicamente almacenados. El trmino definido por el comitANSI/SPARC para una vista de un usuario es vista externa, la cual es elcontenido de la base de datos tal y como es vista por un usuario en particular.O sea, para ese usuario, la vista externa es la base de datos.

    En general, una vista externa consiste en mltiples ocurrencias de mltiplestipos de artculos externos. Un artculo externo no es necesariamente igual aun artculo almacenado.

    El sublenguaje de datos del usuario se define en trminos de artculosexternos; por ejemplo, una operacin del DML que permite recuperar

    artculos, generar una ocurrencia de artculos externos y no una ocurrenciade artculos almacenados.

    Cada vista externa se define mediante un esquema externo consistente,bsicamente, en definiciones de cada uno de los diferentes tipos de artculosexternos en esa vista. El esquema externo se escribe usando la porcin del DDLdel sublenguaje de datos del usuario; adems, tiene que existir una definicin dela correspondencia entre el esquema externo y el esquema lgico global.

  • 7/29/2019 Base de datos Teora - 2011-I

    22/181

    22

    CARRERAS PROFESIONALES CIBERTEC

    1.2.1.2. El nivel lgico global

    La vista lgica es una representacin del contenido informativo total de labase de datos. En comparacin con la forma en que los datos estnalmacenados fsicamente, es una forma abstracta. Esta vista puede ser muydiferente de la forma en la que los datos son vistos por un usuario enparticular. Pretende ser una vista de los datos tal como son en lugar de cmolos usuarios estn forzados a verlos por las restricciones, digamos, de unlenguaje particular o de un determinado hardware que utilicen.

    Consiste en mltiples ocurrencias de mltiples tipos de artculos lgicos. Porejemplo, puede ser una coleccin de ocurrencias de artculos dedepartamentos, ms una coleccin de ocurrencia de artculos de empleados,etc. Un artculo lgico no es necesariamente igual a un artculo externo ni aun artculo almacenado.

    La vista lgica se define mediante el esquema lgico que incluye lasdefiniciones de cada uno de los diferentes tipos de artculos lgicos. Elesquema lgico se describe usando otro lenguaje de definicin de datos: elDDL lgico. Si se desea lograr la independencia de los datos, entonces lasdefiniciones del DDL lgico no deben comprender ninguna consideracinsobre la estructura de almacenamiento ni la estrategia de acceso. Ellas tienenque ser definiciones slo referentes al contenido informativo.

    Si el esquema lgico logra verdaderamente la independencia de los datos,entonces los esquemas externos que se definen sobre el esquema lgicolograrn tambin, necesariamente, la independencia de los datos.

    Entonces, es una vista del contenido total de la base de datos y el esquemalgico es una definicin de esa vista. Sin embargo, el esquema lgico no es,simplemente, un conjunto de definiciones como las que se encuentran, porejemplo, en un programa Pascal. Las definiciones en el esquema lgico

    deben incluir una gran cantidad de aspectos adicionales, tales como loschequeos de proteccin y los chequeos de integridad.

    En la mayora de los sistemas actuales, el esquema lgico es realmente sloun poco ms que la simple unin de todos los esquemas externosindividuales; posiblemente con la adicin de algunos chequeos simples deproteccin e integridad. Sin embargo, est claro que los sistemas del futurosoportarn un nivel lgico mucho ms sofisticado, que permita tambindescribir la forma en que se usan los datos, cmo fluyen de un punto a otro,para qu se usan en cada punto, a qu controles son sometidos, etc.

    1.2.1.3. El nivel interno

    La vista interna es una representacin de bajo nivel de la base de datoscompleta, que consiste en mltiples ocurrencias de mltiples tipos deartculos internos.

    "Artculo interno" es el trmino definido por ANSI/SPARC para la construccinque hasta ahora hemos llamado artculo almacenado. La vista interna estentonces an a un paso del nivel fsico, ya que ella no opera en trminos deartculos fsicos (tambin llamados pginas o bloques) ni con consideracionesespecficas de los equipos, tales como tamaos de sectores o pistas.

  • 7/29/2019 Base de datos Teora - 2011-I

    23/181

    B A S E D E D A T O S T E O R A 2 3

    CIBERTEC CARRERAS PROFESIONALES

    Bsicamente, la vista interna asume un espacio de direccin lineal infinita.Los detalles de cmo se hace corresponder ese espacio con elalmacenamiento fsico son muy especficos de un sistema y deliberadamentese omitieron de la arquitectura.

    La vista interna se describe mediante el esquema interno, el cual no slodefine los diferentes tipos de artculos almacenados, sino que tambinespecifica los ndices que existen, la representacin de los camposalmacenados, la secuencia fsica en que estn los artculos almacenados,etc. El esquema interno se describe usando otro lenguaje de definicin dedatos: el DDL interno.

    1.2.1.4. Correspondencias entre los niveles de la arquitectura

    En el esquema presentado de la arquitectura de un SBD, se observan losniveles de correspondencias, uno entre los niveles externo y lgico global yotro entre los niveles lgico global e interno.

    La correspondencia lgica/interna especifica la forma en que los artculos ycampos lgicos se representan en el nivel interno. Adems, si se cambia laestructura de la vista interna, o sea, si se hace un cambio en el esquemainterno, entonces, la correspondencia lgica/interna tiene tambin quecambiar en consecuencia, de modo que el esquema lgico permanezcainvariable. En otras palabras, los efectos de estos cambios deben seraislados por debajo del nivel lgico para que se mantenga la independenciade los datos.

    Existe tambin una correspondencia externo/lgica entre cada vista externaparticular y la vista lgica. Las diferencias que pueden existir entre estos dosniveles son similares a las que pueden existir entre las vistas lgica e interna.Por ejemplo, los campos pueden tener diferente tipos de datos, se puedencambiar los nombres de artculos y campos, mltiples campos lgicos pueden

    ser combinados en un nico campo externo, etc. Puede existir al mismotiempo cualquier cantidad de vistas externas; cualquier cantidad de usuariospuede compartir una vista externa dada; las diferentes vistas externas sepueden solapar. Algunos sistemas permiten la definicin de una vista externaa partir de otra (mediante una correspondencia externa/externa); estacaracterstica es til cuando varias vistas externas estn estrechamenterelacionadas entre s.

    1.2.1.5. El administrador de la base de datos (DBA)

    Por ltimo, en el esquema aparece el administrador de la base de datos,quien es la persona o grupo de personas responsable del control total de todoel sistema. Entre las tareas del administrador de la base de datosest:

    - Decidir el contenido informativo de la base de datos- Decidir la estructura de almacenamiento y la estrategia de acceso- Garantizar el enlace con los usuarios- Definir los chequeos de autorizacin y procedimientos de validacin- Definir la estrategia de reorganizacin de la base de datos para aumentar

    la eficiencia del sistema

    El SGBD interacta con cada uno de los niveles y las correspondencias entreellos.

  • 7/29/2019 Base de datos Teora - 2011-I

    24/181

    24

    CARRERAS PROFESIONALES CIBERTEC

    1.2.2. Organizaciones de archivos y el nivel interno de la arquitectura

    Fsicamente, se puede decir que las bases de datos se almacenan siguiendodiferentes organizaciones de archivos. Cada una de stas tiene distintascaractersticas de desempeo; ninguna se puede decir que sea ptima para todas lasaplicaciones, sino que se decide emplear una u otra en dependencia de la aplicacin.

    A continuacin, presentaremos, a grandes rasgos, las principales caractersticas de lasms usadas organizaciones de archivos, de modo que puedan tener ideas de cmo sepueden organizar los datos en estos archivos para lograr determinados objetivos.Pero, antes de ello, abordaremos algunas definiciones y caractersticas relativas a losarchivos.

    Empezaremos diciendo que la utilizacin de los archivos se debe a dos causasfundamentales:

    Manejo de mucha informacin Almacenamiento de informacin permanente

    Ya que el trabajo en memoria interna es muy rpido, pero es un recursorelativamente escaso y caro, y la memoria perifrica es ms barata, aunque mslenta. Adems, influye en esto el hecho de que el contenido de la memoria centralse pierde al cesar el fluido elctrico, lo que hace aconsejable almacenar ensoportes externos los grandes volmenes de informacin.

    1.2.2.1. Operaciones fundamentales sobre archivos

    Las operaciones fundamentales que se realizan sobre archivos pueden colocarse endos grandes grupos:

    1.2.2.1.1 AccesoSe entiende el acceso a un archivo como la forma por la cual es posible

    tener conocimiento de la informacin contenida en los respectivosregistros, o sea, el modo como se pueden leer los registros del archivo,las ocurrencias de estos registros almacenadas en l.

    Las diferentes formas de accesar un archivo pueden agruparse en dostipos:

    En secuencia o secuencial.- Se caracteriza por el hecho de que,en la lectura del archivo, es obligatorio que, a continuacin deltratamiento del registro de orden n, se traten los de orden n+1, n+2,... hasta un lmite determinado. Puede realizarse desde el inicio delarchivo o a partir de un registro n.

    Aleatorio o directo.- Se caracteriza porque se lee, yconsecuentemente trata cualquier registro en cualquier orden (atravs de la llave o una transformacin de sta). No puede realizarseen perifricos de acceso secuencial.

  • 7/29/2019 Base de datos Teora - 2011-I

    25/181

    B A S E D E D A T O S T E O R A 2 5

    CIBERTEC CARRERAS PROFESIONALES

    1.2.2.1.2 Actualizacin

    La mayora de los archivos deben ser actualizados con el decurso deltiempo para que se ajusten a la realidad. La actualizacin de un archivose realiza mediante tres operaciones fundamentales:

    Alta.- Se crea un nuevo registro en el archivo. Baja- Se elimina un registro. Puede ser lgica o fsica. Modificacin.- Se cambia alguna informacin en el registro.

    Para realizar las actualizaciones es importante validar los datos que se vana actualizar.

    1.2.2.2. Organizacin de los archivos

    Es necesario indicar que la bibliografa existente al respecto asume diferentesposiciones respecto a la terminologa a emplear. En muchos casos las

    definiciones son ambiguas y hay poco acuerdo entre los textos que trataneste tema.

    A pesar de esto, en la actualidad, las organizaciones generalmente aceptadasson:

    2.2.1 Organizacin Secuencial

    Es la forma ms sencilla para almacenar los registros de un archivo,uno despus de otro, a continuacin del otro. Todos los registros sealmacenan por su posicin: uno es el primero, el siguiente es elsegundo y as sucesivamente. Es la ms vieja forma de organizar unarchivo y fue empleada para las cintas magnticas desde los inicios de

    la computacin.

    Ejemplo:

    Archivo PROFESOR, en el que estn las ocurrencias de profesores unaa continuacin de la otra:

    Mara lvarez Av. J avier Prado Oeste #568 9461 5378Felipe Gonzlez Av. Salaverry #3540 9931 2095

    J os Martnez Av. Angamos Este #653 9345 7598

    J uan Benavides Prolongacin Primavera #342 9621 5337

    ... ... ...

    ...n+1n......21

  • 7/29/2019 Base de datos Teora - 2011-I

    26/181

    26

    CARRERAS PROFESIONALES CIBERTEC

    2.2.2 Organizacin Indizada

    Los accesos a los registros almacenados se realizan a travs de unndice. La forma bsica de un ndice incluye una llave de registro y ladireccin de almacenamiento para ste. Para encontrar un registroespecfico, se rastrea primero el ndice y, al encontrar la direccin, seaccede directamente el registro.

    Archivo ndice Archivo de datosLlave Apuntador

    Entonces, un ndice es un archivo auxiliar que se utiliza para accesar losregistros de otro archivo, que llamaremos archivo principal o de datos, porel valor de un dato o conjunto de datos, que es la llave o clave deindizacin.

    A los registros del ndice se les llama entradas. Cada entrada correspondea un valor o intervalo de valores de la llave y es el padre cuyos hijos son losregistros del archivo principal, en los cuales la llave toma el valor, o un valordel intervalo de valores que corresponde a la entrada en cuestin.

    En la siguiente figura se muestra un archivo ndice muy simple en el que se

    tiene la llave y un puntero al dato en el archivo principal.

    Llave apuntador

    lvarez, Luis Lpez, Mara Tcn A ...Garca, Berta Lazo, J uan Oper B ...Lazo, J uan Garca, Berta Oper C ...Lpez, Mara Martnez, J os Tcn A ...Martnez,

    J oslvarez, Luis Tcn B ...

    Archivo ndice Archivo de Datos

    Para un mismo archivo principal puede haber varios ndices, correspondientes adiferentes claves de indizacin.

    Si la llave de indizacin para un archivo ndice es una llave primaria, entonces, alndice se le llama primario. Si la llave de indizacin es algn atributo que noidentifica unvocamente cada ocurrencia, se dice que el ndice es secundario. Eneste caso, para un valor de la llave existen, en general, varios registros que tienenese valor en el atributo correspondiente. Por ejemplo, en un archivo dePRODUCTOS el ndice por nmero de producto (NUMPROD) sera primario y unndice por tipo de producto (TIPOPROD) sera secundario.

  • 7/29/2019 Base de datos Teora - 2011-I

    27/181

    B A S E D E D A T O S T E O R A 2 7

    CIBERTEC CARRERAS PROFESIONALES

    En muchos sistemas informativos los ndices secundarios son numerosos.

    Se dice que un ndice es denso si tiene una entrada para cada valor de la claveque aparece, por lo menos, en algn registro del archivo principal, lo que no quieredecir que tenga una entrada para cada uno de estos registros. El ndice primarioes, generalmente, un ndice denso, es decir, contiene todos los valores de la claveprimaria.

    Por ejemplo, en la figura anterior, el ndice es denso, porque existe una entrada enel ndice para cada valor diferente de la llave de indizacin. Para el caso delarchivo de datos de la figura anterior, el siguiente ndice que considera como llaveel cargo del trabajador tambin es denso pues, de igual forma, existe una entradaen el ndice para cada valor diferente de la llave de indizacin.

    Archivo ndice

    Oper BOper CTcn ATcn B

    Un ndice no denso necesita que la clave sea campo de ordenamiento del archivode datos, pues as es posible accesar los registros, cuyo valor de la llave noaparece en ninguna entrada, para lo cual se accesa el registro apuntado por laentrada con un valor de la clave ms prximo por defecto (por ejemplo) al delregistro buscado y, luego, se va recorriendo secuencialmente el archivo principalen orden creciente de los valores de la llave, desde aquel registro, hasta encontrarel registro buscado, si existe, o hasta encontrar uno con valor ms alto de la clave,en cuyo caso no existe. Este es el caso de la organizacin secuencial indizada.

    1.2.2.3. AUTOEVALUACIN

    a. Mencione los niveles en que se divide la arquitectura de un SBD y lascaractersticas fundamentales de cada uno de ellos.

    b. Explique cmo se establece la correspondencia entre los distintos niveles de laarquitectura de un SBD y cmo se logra garantizar la independencia de losdatos respecto a los programas de aplicacin.

    c. Mencione tres de las funciones principales que realiza un administrador debases de datos.

    d. Explique cules son las principales operaciones que se realizan sobre losarchivos y los distintos tipos de cada una de ellas.

    e. Describa, a grandes rasgos, los tres tipos de organizacin de archivos msempleados.

    f. Defina un archivo ndice. Cules estructuras de archivo ndice conoce?Explique las caractersticas de cada una.

    g. Cul es la relacin del nivel interno de la arquitectura de un SBD con losarchivos y las organizaciones de stos?

  • 7/29/2019 Base de datos Teora - 2011-I

    28/181

    28

    CARRERAS PROFESIONALES CIBERTEC

    Resumen

    El procesamiento automatizado de datos ha pasado por diferentes etapas en sudesarrollo hasta llegar a la actual, en la que se emplean bases de datos para elalmacenamiento de la informacin.

    El principal objetivo de los SBD es garantizar la independencia de los datosrespecto a los programas de aplicacin.

    Otro objetivo muy importante de los SBD es la minimizacin de la redundancia.

    Entidad: objeto del cual se describen ciertas caractersticas.

    Campo o atributo: es la unidad menor de informacin sobre un objeto(almacenada en la base de datos) y representa una propiedad de un objeto.

    Un atributo puede tomar diferentes valores sobre un cierto conjunto que sedenomina dominio.

    Dominio: rango de valores posibles de un atributo.

    A un valor de un atributo definido en el dominio dado, en un cierto momento deltiempo, se le denomina ocurrencia del atributo.

    Un artculo o registro es una coleccin identificable de campos asociados yrepresenta un objeto con sus propiedades.

    Una ocurrencia de artculo o tupla consiste en un grupo de ocurrencias decampos relacionados, representando una asociacin entre ellos.

    Un archivo o archivos es un conjunto de ocurrencias de un mismo tipo deartculo.

    Una base de datos est formada por mltiples archivos.

    Existen asociaciones o relaciones enlazando las entidades, que pueden tener ono atributos. Pueden establecerse sobre la misma entidad o sobre entidades

    diferentes. En una relacin puede participar cualquier cantidad de entidades.

    Las relaciones pueden ser de uno a uno (1 : 1), de uno a muchos (1 : m) y demuchos a muchos (m : m).

    La arquitectura de un SBD est compuesta por tres niveles: externo, lgico globale interno. El nivel lgico global de los datos representa el contenido informativototal de la base de datos y, desde el punto de vista del diseador, es el msimportante.

  • 7/29/2019 Base de datos Teora - 2011-I

    29/181

    B A S E D E D A T O S T E O R A 2 9

    CIBERTEC CARRERAS PROFESIONALES

    Existe una correspondencia entre el nivel externo y el lgico global; y entre ellgico global y el interno. Para garantizar la independencia de los datos respecto alos programas de aplicacin, cualquier cambio en el nivel interno debe reflejarseadecuadamente en la correspondencia interna/lgico global, para no afectar elnivel lgico global.

    Las principales operaciones que se realizan sobre los archivos son los siguientes:acceso, que puede ser secuencial o directo, y actualizacin, que se refiere a lasaltas, bajas y modificaciones de la informacin.

    El nivel interno de la arquitectura de un SBD puede considerarse estructurada porarchivos con distintos modos de organizacin.

    Si desea saber ms acerca de estos temas, puede consultar las siguientespginas.

    http://www3.uji.es/~mmarques/f47/apun/node33.html

    En esta pgina web hallar algunos conceptos complementarios a losmostrados en el manual sobre la arquitectura de una base de datos.

    http://www.mitecnologico.com/Main/EstructuraArchivosOrganizacionSecuencialIndexado

    En esta pgina web encontrar definiciones complementarias alalmacenamiento secuencial indexado.

    http://sistemas.itlp.edu.mx/tutoriales/basedat1/

    En esta pgina web hallar algunos conceptos complementarios a losmostrados en el manual sobre la introduccin a la base de datos.

    http://sistemas.itlp.edu.mx/tutoriales/basedat1/Es esta pgina web encontrar definiciones complementarias sobre losobjetivos de las base de datos.

    http://sistemas.itlp.edu.mx/tutoriales/basedat1/Es esta pgina web encontrar ejercicios sobre la representacin de lainformacin.

  • 7/29/2019 Base de datos Teora - 2011-I

    30/181

    30

    CARRERAS PROFESIONALES CIBERTEC

  • 7/29/2019 Base de datos Teora - 2011-I

    31/181

    B A S E D E D A T O S T E O R A 3 1

    CIBERTEC CARRERAS PROFESIONALES

    MODELAMIENTO CONCEPTUAL

    LOGRO DE LA UNIDAD DE APRENDIZAJE

    Al final de la unidad, los alumnos disean el diagrama entidad relacin (DER) de unproceso de negocio a partir de casos planteados por el profesor, relacionando lascaractersticas del modelo conceptual con el diseo de una base de datos.

    TEMARIO

    2.1. Tema 3: Modelo conceptual2.1.1. Modelo conceptual de datos

    2.2. Tema 4: Diagrama Entidad-Relacin2.2.1. Diagrama entidad- relacin

    ACTIVIDADES PROPUESTAS

    1. Explicaciones por parte del facilitador combinadas con ejemplos.

    2. Se efectan preguntas de comprobacin dirigidas a los alumnos sobre los temastratados.

    3. Se plantea un caso para identificar los componentes de un diagrama entidad-relacin y se construye el modelo correspondiente.

    UNI DAD DE

    APRENDIZAJE

    2

  • 7/29/2019 Base de datos Teora - 2011-I

    32/181

    32

    CARRERAS PROFESIONALES CIBERTEC

    2.1. Tema 3: Modelo conceptual

    2.1.1. Modelo conceptual de datos

    2.1.1.1. Caractersticas del modelo conceptual

    El proceso de diseo de la base de datos transita a travs de una serie de pasos

    en los cuales se va avanzando de un nivel de abstraccin menor a otro msprofundo, mediante la elaboracin de una sucesin de modelos. En los ltimosaos, se ha generalizado la concepcin del diseo de las base de datospropuestas por el grupo ANSI/SPARC, la cual constituye, al mismo tiempo, unaarquitectura para los SBD, tal y como la acabamos de estudiar.

    Hemos visto en esta arquitectura que cada nivel de la misma es una cierta formade representacin abstracta de la informacin y una de las funciones msimportantes del SGBD consiste precisamente en permitirle al usuario la interaccincon los datos en estos trminos abstractos, en lugar de tenerlo que hacerdirectamente con la forma en que esos datos estn fsicamente almacenados. Espor ello que, al acometerse la tarea de diseo de una base de datos, la atencin se

    debe centrar en el aspecto lgico de la informacin, ya que los detallesrelacionados con el almacenamiento fsico son parte de todo SGBD comercial quese utilice, y por tanto, no pueden ser modificados.

    Los SGBD existentes utilizan diferentes modelos de datos para la representacinen el nivel lgico global. Son comunes a todos ellos las siguientes caractersticas:

    La representacin de la informacin se basa en el uso de determinadasestructuras de datos que poseen una capacidad descriptiva limitada; slodiferencian un rasgo semntico: el tipo de proyeccin (1:1, 1:n, n:m).

    Utilizan una terminologa que no es familiar al usuario del sistema, por lo quedificultan la comunicacin usuario - diseador.

    Adems, cada uno de estos modelos est vinculado con un tipo particular deSGBD.

    Por todo ello, es necesario tratar con otro tipo de modelo cuando se aborda elproblema del diseo de la base de datos, el cual debe superar los problemasanteriores y constituye un nivel de abstraccin intermedio entre la realidadinformativa y el nivel lgico global de la arquitectura. A este nuevo tipo de modelose le denomina modelo conceptual. O sea, el modelo conceptual se defineexteriormente al SGBD, realizndose, y se realiza manualmente o con la ayuda dealgn sistema automatizado, la transformacin entre el modelo conceptual y ellgico global.

  • 7/29/2019 Base de datos Teora - 2011-I

    33/181

    B A S E D E D A T O S T E O R A 3 3

    CIBERTEC CARRERAS PROFESIONALES

    A continuacin se mostrar los respectivos niveles:

    El proceso de modelamiento conceptual es denominado tambin modelamientosemntico, ya que con estos modelos se pretende reflejar en mayor medida lasemntica o significado de los datos y sus interrelaciones.

    Vista 1 Vista 2 Vista N

    Nivel Lgico - Global

    Vista Lgica de la estructurade la base de datos

    Nivel Interno

    Motor de la base de datos yalmacenamiento fsico

    SGBDOracle 10 gSQL Server

    2008DB2

    ModeloConceptual

    Diseador de la basede datos

    Nivel Externo

  • 7/29/2019 Base de datos Teora - 2011-I

    34/181

    34

    CARRERAS PROFESIONALES CIBERTEC

    2.2. Tema 4: El modelo entidad-relacin

    Este modelo (presentado mediante un diagrama y denominado DER) fuepropuesto en 1976 y ha encontrado una amplia aceptacin como instrumento paramodelar el mundo real en el proceso de diseo de las bases de datos. El modeloopera con los conceptos de entidad y relacin que estudiamos anteriormente.

    Las ocurrencias de entidades se clasifican en distintas entidades Ei, tales como"empleado", "departamento", etc. Existir un predicado asociado con cada entidadque permitir comparar si una ocurrencia arbitraria pertenece a una entidad dada.Las ocurrencias pueden pertenecer a ms de una entidad, o sea, las entidades noson mutuamente disjuntas. Por ejemplo, una ocurrencia de la entidad "mujeres"tambin pertenece a la entidad "persona".

    Una relacin es una relacin matemtica entre n entidades.

    {(e1, e2, ..., en) | e1E1, e2E2, ...., enEn }

    y cada elemento de esa relacin es una ocurrencia de relacin (e1, e2, ..., en),donde las Ei y ei no tienen que ser necesariamente diferentes. El rol de una entidaden una relacin expresa la funcin que desempea dicha entidad en la relacin. Enla relacin "matrimonio" definida entre ocurrencias de la entidad "persona", o sea,

    "matrimonio" ={(e1, e2) | e1"persona", e2 "persona"},

    el primer elemento en el tuplo puede aparecer en el rol de "esposo" y el segundo,en el rol de "esposa".

    Informacin adicional sobre una entidad (adems de los predicados y lasrelaciones) se obtiene mediante los atributos asociados con la entidad. Ejemplosde valores que pueden tomar los atributos son: "rojo", "3", "J uan", etc. y ellos se

    clasifican en dominios mutuamente disjuntos, tales como "color", "edad", nombre,etc.

    Un valor de un dominio puede ser equivalente a otro valor en un dominio diferente.Por ejemplo, "100" en el dominio "centmetros" es equivalente a "1" en el dominio"metros".

    Un atributo se define en el modelo entidad relacin, como una funcinmatemtica que establece una correspondencia desde una entidad o relacinhacia un dominio o un producto cartesiano de dominios:

    atrib1: E

    i D

    i1x D

    i2x .....x D

    in

    atrib2: Ri Di1 x Di2x .....x Din

    En la figura siguiente se muestran los atributos definidos para la entidadEMPRESA. El atributo NOMBRE hace corresponder a las ocurrencias de empresacon elementos del dominio NOMBRE DE EMPRESA. El atributo DIRECCINestablece una correspondencia desde la entidad EMPRESA hacia el par dedominios NOMBRE DE CIUDAD, NOMBRE DE CALLE. INGRESO Y EFECTIVOestablecen ambos una correspondencia desde la entidad EMPRESA hacia eldominio VALOR MONETARIO. Ntese que un atributo se define siempre como una

  • 7/29/2019 Base de datos Teora - 2011-I

    35/181

    B A S E D E D A T O S T E O R A 3 5

    CIBERTEC CARRERAS PROFESIONALES

    funcin, por lo que siempre hace corresponder a una ocurrencia dada con un nicovalor de una tupla, pues se define un producto cartesiano de dominios.

    Las relaciones pueden tambin tener atributos. En la figura siguiente, el atributoUTILIZACIN define el nmero de horas que un obrero especfico e

    jusa una

    mquina eiy constituye un atributo de la relacin correspondiente. l no es ni un

    atributo del OBRERO ni de la MQUINA, ya que su significado depende de larelacin entre ellos dos.

    Es importante destacar las siguientes caractersticas de los atributos en estemodelo:

    Los atributos slo son correspondencias funcionales. As, por ejemplo, sitenemos la entidad AUTOMVIL y el atributo COLOR, el hecho de que un auto

    ENTIDAD ATRIBUTOS DOMINIOS

    VALOR MONETARIO

    NOMBRE

    EFECTIVO

    UPC

    Lima

    NOMBRE DE EMPRESA

    NOMBRE DE CIUDAD

    Primavera

    NOMBRE DE CALLE

    3 5002 500

    DIRECCIN

    INGRESO

    e

    RELACIN

    HORA

    MQUINA

    OBREROUTILIZACIN

    ei

    ej

    r ei e

    25

    ENTIDADES ATRIBUTO DOMINIO

  • 7/29/2019 Base de datos Teora - 2011-I

    36/181

    36

    CARRERAS PROFESIONALES CIBERTEC

    pueda tener ms de un color no se puede representar como un atributo en estemodelo.

    El nico hecho que puede ser registrado sobre los valores en este modelo es supertenencia a un dominio. Si se desea representar otra propiedad, el atributoasociado tiene que ser convertido en una entidad. Por ejemplo, si queremosregistrar la longitud de onda de cada color no podemos hacerlo en el modeloentidad - relacin, sino convirtiendo el atributo COLOR en una entidad.

    2.2.1. Diagrama Entidad-Relacin

    El modelo entidad - relacin tiene asociada una representacin grfica denominadaDiagrama Entidad-Relacin diagrama entidad-relacin (DER).

    En un DER, cada entidad se representa mediante un rectngulo, cada relacinmediante un rombo y cada dominio mediante un crculo. Mediante lneas seconectan las entidades con las relaciones, y de la misma manera igual que las

    entidades con los dominios, representando a los atributos.Los atributos llaves de las entidades se representan mediante un crculo rellenado.

    En ocasiones, una entidad no puede ser identificada nicamente por el valor de suspropios atributos. En estos casos, se utilizan conjuntamente las relaciones con losatributos para lograr la requerida identificacin unvoca. Estas entidades reciben elnombre de entidades dbiles y se representan en el DER con un doble rectngulo.El modelo entidad - relacin restringe las relaciones a usar para identificar lasentidades dbiles a relaciones binarias de, a lo sumo, 1:n. As, por ejemplo, unaocurrencia de trabajador puede tener n ocurrencias persona-dependienteasociadas, donde, adems, la existencia de una ocurrencia en la segunda entidaddepende de la existencia de una ocurrencia que le corresponda en la primera

    entidad. Por ejemplo, en el modelo que se representa en el DER de la figura, habrpersonas dependientes de un trabajador slo si ese trabajador existe. Para indicaresa dependencia en la existencia, se usa una saeta en el DER. La llave de unaentidad dbil se forma combinando la llave de la entidad regular que la determinacon algn otro atributo o conjunto de atributos de la dbil, que definanunvocamente cada entidad dbil asociada a una entidad regular dada (una entidadse denomina regular si no es dbil).

  • 7/29/2019 Base de datos Teora - 2011-I

    37/181

    B A S E D E D A T O S T E O R A 3 7

    CIBERTEC CARRERAS PROFESIONALES

    Para cada relacin se determina su tipo (simple o complejo) y en el DER se escribeel tipo de correspondencia. Por ejemplo, una empresa puede tener varios (n)trabajadores asociados y un trabajador pertenece a una sola (1) empresa. En larelacin trab-mq-pieza, un trabajador puede trabajar en n mquinas, produciendop piezas, una pieza puede ser producida por m trabajadores en n mquinas y enuna mquina pueden trabajar m trabajadores produciendo p piezas. Aqu, m, n y pno identifican un nmero especfico, sino solamente el tipo de correspondencia quese establece en la relacin (muchos).

    Salario

    precio

    Valor monetarioNro Pieza

    n

    1

    Trab-Persdep

    Nmero

    Cantidad

    p

    Valor monetarioNombre-mquina

    #-mquina

    Valor

    Horas

    n

    n

    Nombren

    1

    Valormonetario

    Presupuesto

    EMPRESA

    Nombre deempresa

    TRABAJADOR

    Empresa-trabajador

    DNI-trab

    Nombres propios

    Apellidos

    Calificacin

    trab-mq

    trab-mq-pieza

    MQUINA

    m

    m

    PIEZA

    Nombres propiosFecha de nacimiento

    Nombre

    PERSONA-DEPENDIENTE

    Valor monetario

    DNI-trab

  • 7/29/2019 Base de datos Teora - 2011-I

    38/181

    38

    CARRERAS PROFESIONALES CIBERTEC

    Aunque en el modelo entidad - relacin se define que la llave de una relacin es lacombinacin de las llaves de todas las entidades asociadas, es conveniente, desdeahora, analizar ms profundamente esto.

    En una relacin de muchos a muchos (n:m), efectivamente, la llave de la relacinest formada por las llaves de las entidades que participan en la relacin, pues,

    como a cada ocurrencia de una de las entidades le corresponden variasocurrencias de la otra entidad y viceversa, es preciso utilizar la identificacin decada una de las entidades que participan en la relacin para referirse a una solaocurrencia de cada una de ellas y, as, referirse a una ocurrencia de la relacin. Porejemplo, en la relacin trab-mq la llave ser DNI-trab, #-mquina.

    Pero en una relacin de muchos a uno (m:1), la llave de la relacin es la llave de laentidad del extremo muchos (m), pues a cada ocurrencia de esa entidad lecorresponde slo una ocurrencia de la entidad del otro extremo, por lo que, con lallave de la entidad del extremo muchos est perfectamente determinada tambinuna nica ocurrencia de la entidad del extremo 1. Por ejemplo, en la relacinEmpresa-trabajadorla llave ser DNI-trab.

    De modo similar, en una relacin de uno a uno (1:1) la llave de la relacin estformada por la llave de cualquiera de las dos entidades que participan, pues auna ocurrencia de una de ellas le corresponde slo una ocurrencia de la otra yviceversa, por lo que, con la llave de una de las entidades est perfectamentedeterminada tambin una nica ocurrencia de la otra entidad. Por ejemplo, si en uncentro de trabajo un trabajador, que se identifica con dnitrab, es jefe de un piso,que se identifica con nmpiso, y un piso tiene un jefe, es decir, que la relacin esde 1:1, entonces, la llave de la relacin puede ser o dnitrab o nmpiso.

    Una entidad se puede relacionar consigo misma. A estas relaciones se les llama,usualmente, recursivas o cclicas.

    Es posible extender la capacidad semntica del modelo entidad - relacin aplicandosobre sus objetos bsicos (entidad y relacin) diferentes operaciones, tales como:

    Generalizacin .- Permite formar una nueva entidad, mediante la unin de otrasentidades. El proceso inverso se denomina especializacin y divide una entidaden cierto nmero de otras entidades.

    Agregacin: .- Construye una nueva entidad sobre la base de una relacin.

    A las entidades, relaciones y conjuntos definidos hasta ahora les llamaremostipos bsicos para distinguirlos de los nuevos tipos de datos que se obtendrncon las operaciones anteriores.

    Veamos cada una de las operaciones:

    2.2.1.1. Generalizacin / Especializacin

    Si T1, T2, ..., Tn son entidades (que pueden a su vez ser resultado de unageneralizacin), la generalizacin define una nueva entidad T con el siguientesignificado:

    T ={t | t Ti , 1 i n}

  • 7/29/2019 Base de datos Teora - 2011-I

    39/181

    B A S E D E D A T O S T E O R A 3 9

    CIBERTEC CARRERAS PROFESIONALES

    o sea, para cada ocurrencia t en T existe, al menos, un conjunto Ti que contiene aesa ocurrencia. Por ejemplo, en el DER anterior, puede ser necesario distinguir lostrabajadores de una empresa de acuerdo a su ocupacin como obreros, dirigentes yadministrativos. Esto no puede ser representado en el modelo que estrepresentado en el DER de la figura anterior y slo a travs del hecho de que laentidad "obrero", por ejemplo, es siempre (o sea, en todo momento) un subconjuntode la entidad "trabajador", podemos deducir cierta clase de dependencia entre losdos tipos. Usando la generalizacin podemos obtener un nuevo diagrama como semuestra parcialmente en la figura siguiente:

    Ntese que hemos introducido un nuevo atributo para la entidad trabajador. Esteatributo nos permite distinguir entre los miembros de diferentes clases detrabajadores.

    Si tenemos una entidad TRABAJ ADOR y queremos usar la operacin deEspecializacin como inversa a la generalizacin, tenemos que especificar "roles"en el modelo, o sea, reglas que definan cundo una ocurrencia de TRABAJ ADORpertenece a uno u otro componente de la entidad. Entonces, la representacin deesta operacin en el DER se generaliza como se muestra en la figura siguientefigura:

    TIPO_TRABAJ O_TRAB

    ID_TRAB

    DIRIGENTE

    OBRERO

    TRABAJ ADOR

    ADMINISTRATIVO

    ISA

  • 7/29/2019 Base de datos Teora - 2011-I

    40/181

    40

    CARRERAS PROFESIONALES CIBERTEC

    Si para cada ocurrencia de la entidad Trabajador nosotros podemos siempre deducira cul entidad componente pertenece usando alguna propiedad ya representada,entonces, no es necesario introducir un nuevo atributo Tipo de Trabajo.

    Las reglas que definen la especializacin de una entidad se denominan"caracterizaciones". Por ejemplo, Tipo de Trabajo = 1 es la caracterizacin de laentidad Administrativo dentro de la entidad Trabajador.

    En una Generalizacin / Especializacin, los atributos y relaciones de la entidad

    "generalizada" son heredados por las entidades componentes (entidadesespecializadas). La llave de una especializacin es la llave de la generalizacin.Adems, se pueden definir nuevos atributos y relaciones para cada entidadespecializada. Por ejemplo, la relacin Obrero-Mquina se define ahora slo para laentidad especializada Obrero, componente de la entidad generalizada Trabajador:

    TIPO_TRABAJO_TRAB=1

    ID_TRAB

    DIRIGENTE

    TRABAJ ADOR

    ADMINISTRATIVO

    ISA

    TIPO_TRABAJ O_TRAB=3

    TIPO_TRABAJO_TRAB=2OBRERO

  • 7/29/2019 Base de datos Teora - 2011-I

    41/181

    B A S E D E D A T O S T E O R A 4 1

    CIBERTEC CARRERAS PROFESIONALES

    Si bien es cierto que, segn lo visto anteriormente, las operaciones deGeneralizacin y Especializacin pueden denotarse de modo diferente, no es menoscierto que, con la notacin empleada para la generalizacin, pueden expresarse lasentidades generalizadas y especializadas perfectamente y es sta la empleadanormalmente.

    Es importante agregar algo ms a lo visto hasta ahora para poder expresar las siguientessituaciones que se presentan:

    Las ocurrencias de las especializaciones pueden abarcar o no el universo de lasocurrencias de la generalizacin; es decir, la totalidad de las ocurrencias de lageneralizacin puede o no estar contenidas en alguna o algunas de lasespecializaciones. Por lo tanto, las especializaciones pueden ser totales (T) o parciales(P).

    Una ocurrencia de la generalizada puede o no estar en ms de un conjunto Ti, o lo quees lo mismo, la interseccin entre algunos de los conjuntos Ti puede o no ser vaca. Esdecir, las especializaciones pueden ser solapadas (S) o disjuntas (D).

    Es por ello que, en el DER, se aade en cada generalizacin, entre parntesis, laespecificacin:

    - (T, S): indicando que la especializacin realizada es total y solapada- (T, D): indicando que la especializacin realizada es total y disjunta- (P, S): indicando que la especializacin realizada es parcial y solapada- (P, D): indicando que la especializacin realizada es parcial y disjunta

    ID_TRAB

    DIRIGENTE

    OBRERO

    TRABAJ ADOR

    ADMINISTRATIVO

    ISA

    m

    OBR-MAQ MQUINA

    m

  • 7/29/2019 Base de datos Teora - 2011-I

    42/181

    42

    CARRERAS PROFESIONALES CIBERTEC

    Entonces, el ejemplo visto anteriormente quedara:

    T (total): ya que todo trabajador en el ejemplo es administrativo o dirigente u obreroy D (disjunto): pues un trabajador pertenece slo a una de las especializaciones.

    Otro ejemplo de Generalizacin/Especializacin podra ser el caso deESTUDIANTE, PRACTICANTE y BECADO. Un PRACTICANTE es un caso especialde ESTUDIANTE. Lo mismo ocurre con BECADO. Pero un PRACTICANTE tambinpuede ser BECADO. Hay muchos Estudiantes que no son PRACTICANTES niBECADOS. Obviando los atributos en el DER, esta situacin se representara delmodo siguiente:

    TIPO_TRABAJ O_TRAB

    ID_TRAB

    DIRIGENTE

    OBRERO

    TRABAJ ADOR(T,D)

    ADMINISTRATIVO

    ISA

  • 7/29/2019 Base de datos Teora - 2011-I

    43/181

    B A S E D E D A T O S T E O R A 4 3

    CIBERTEC CARRERAS PROFESIONALES

    2.2.1.2. Agregacin

    Obsrvese en el ejemplo que representa la situacin de la produccin en lasempresas, que la relacin Trab-Mq-Pieza representa la idea de que unaactividad en la empresa se describe en trminos de "un obrero en algunamquina produce una pieza dada en alguna cantidad especfica". Sin embargo,la misma situacin puede ser vista de forma algo diferente. En la empresa, lasmquinas pueden estar asignadas a los obreros y estos "equipos" producirpiezas en cierta cantidad. En el modelo entidad - relacin original esta situacinno hubiera podido ser modelada correctamente, ya que una relacin no puederelacionarse con otra relacin o entidad. Con la operacin de Agregacin estasituacin se resuelve fcilmente, tal y como se muestra en la figura siguiente:

    PORCENTAJE_BECA_EST NUMERO_HORAS_EST

    ID_EST

    PRACTICANTE

    ESTUDIANTE(P,S)

    BECADO

    ISA

  • 7/29/2019 Base de datos Teora - 2011-I

    44/181

    44

    CARRERAS PROFESIONALES CIBERTEC

    La agregacin se define de la siguiente forma:

    Si T1, T2, ..., Tn son entidades, la operacin define una nueva entidad T con elsignificado siguiente:

    T ={t | t1, t2, ...., tn (t1T1 t2T2 ... tnTn (t1, t2,.., tn) =t)}

    O sea, las nuevas ocurrencias se forman como tuplas de ocurrencias de lasentidades componentes. Para que la operacin tenga sentido, las entidades T1,T2,..., Tn tienen que formar parte en alguna relacin comn y esa relacin

    siempre ser incluida en la representacin de la entidad generada (entidadagregada).

    A la nueva entidad se le pueden asignar atributos. Tambin puede tomar parteen cualquier relacin. Otro ejemplo de Agregacin se muestra a continuacin:

    NUMERO_EQU

    m

    m

    Trab -Equipo-Pieza

    CANTIDAD_PIE_EQU

    Obrero-mq

    m m

    PIEZA

    CANTIDAD_ENVIADA_SUM_PIE_PROY

    FECHA_ENVIO_SUM_PIE_PROY

    mm

    m

    ENVO

    SUMINISTRADOR PIEZA PROYECTO

    OBRERO MQUINA

    EQUIPO

    Suministrador-Pieza-

    Proyecto

  • 7/29/2019 Base de datos Teora - 2011-I

    45/181

    B A S E D E D A T O S T E O R A 4 5

    CIBERTEC CARRERAS PROFESIONALES

    La nueva entidad ENVO se define como una agregacin de tres entidades:Suministrador, Pieza y Proyecto con los nuevos atributos Fecha del Envo yCantidad Enviada. Hay una diferencia importante entre estos dos atributos:est claro que la Fecha del Envo no puede pertenecer a ninguna de lasentidades componentes; sin embargo, la Cantidad Enviada se refiereclaramente a las piezas. Diremos entonces, que la Cantidad Enviada es una"caracterizacin" de la entidad PIEZA con respecto al ENVO.

    La llave de una entidad agregada es la llave de la relacin que la origina;excepto en el caso en que se defina un identificador (llave) para ella. En elejemplo anterior del ENVO, la llave de la entidad agregada ENVO estformada por la llave del suministrador, ms la llave de la pieza, ms la llave delproyecto. Pero la situacin del ejemplo podra tener la variante que se muestraen la siguiente figura, donde se ha definido un nmero de envo (NUM_ENV)que identifica al envo y que, por lo tanto, pasa a ser la llave de la entidadagregada:

    Para el modelo entidad - relacin, incluyendo las dos operaciones estudiadas,pueden plantearse una serie de restricciones de integridad:

    Al aplicar la generalizacin/especializacin, una entidad puede pertenecer auna jerarqua de diferentes entidades. Por ejemplo, las entidadesPERSONA, TRABAJ ADOR, OBRERO forman una jerarqua de entidades,sucesivamente ms especializadas. Entonces, una entidad existente en un

    nivel dado, tiene que existir en todos los niveles superiores. De formainversa, si una entidad se elimina de un conjunto en un nivel dado, debe sereliminada tambin en los niveles ms bajos.

    La agregacin constituye una entidad agregada sobre la base de unarelacin, por lo que dicha entidad se comportar de forma similar a como secomporta la relacin. Entonces, para que una ocurrencia de la agregacinexista, deben existir las ocurrencias de todas las entidades que toman parteen la relacin. Lo inverso no tiene que ocurrir necesariamente, ya que, por

    CANTIDAD_ENVIADA_SUM_PIE_PROY

    FECHA_ENVIO_

    SUM_PIE_PROY

    mm

    m

    ENVO

    SUMINISTRADOR PIEZA PROYECTO

    Suministrador-Pieza-

    Pro ecto

    NUM_ENV

  • 7/29/2019 Base de datos Teora - 2011-I

    46/181

    46

    CARRERAS PROFESIONALES CIBERTEC

    ejemplo, en el caso visto del ENVO pueden existir suministradores que noabastezcan a ningn proyecto, sino que se registran como tales, porque endeterminado momento pudieran estar activos. Desde luego, si la poltica dela organizacin es tal que un suministrador se considera como tal slo sirealmente suministra piezas a algn proyecto, entonces, la existencia de, almenos, una ocurrencia de la entidad agregada ENVO para unsuministrador es indispensable para la existencia de la ocurrencia de esesuministrador en la entidad SUMINISTRADOR.

    Es importante sealar que en un DER pueden combinarse todos los elementosy operaciones explicadas anteriormente para representar adecuadamente uncaso de la realidad, de modo que, por ejemplo, en una agregacin puedeparticipar una entidad dbil o una generalizada; una especializacin puede ser,a su vez, la generalizacin de otras especializaciones; una entidad dbil puedeser, a su vez, una generalizada o ser dbil de una generalizada, etc.

    2.2.1.3. Entidad dbil

    Una entidad dbil es aquella cuya existencia depende de otra entidad llamada

    fuerte.A manera de ejemplo, se muestra a continuacin un DER que representa alalumno de Medicina como entidad dbil de grupo, ya que el alumno seidentifica por un nmero consecutivo dentro del grupo al que pertenece y que,por lo tanto, puede repetirse en distintos grupos, por lo que, para identificar aun alumno, es preciso decir el alumno nmero n del grupo cdigo g. A la vez,la entidad alumnomedicina es una generalizacin que tiene comoespecializaciones a los alumnos de 3er. ciclo o menos y a los alumnos de 4to.ciclo o ms.

  • 7/29/2019 Base de datos Teora - 2011-I

    47/181

    B A S E D E D A T O S T E O R A 4 7

    CIBERTEC CARRERAS PROFESIONALES

    2.2.1.4.Relacin RecursivaRelacin donde la entidad se relaciona consigo mismo. Las multiplicidades secolocan respecto a los nombres de rol.

    GRUPO

    COD_GRUPO

    SESION_GRUPO

    AULA_GRUPO

    G-A

    1

    mNUMERO_ALUM

    NOMBRE_ALUM

    FEC_NAC_ALUM

    DIRECCION_ALUM

    CICLO_SUP_ALUMISA

    ALUMNOMEDICINA

    (T,D)

    PONDERADO_ALUM

    PUESTO_ALUM

    4TO CICLO OMS

    3ER CICLO OMENOS

    INDICE_ENTRADA_ALUM

    EMPLEADO SUPERVISA

    SUPERVISOR

    SUPERVISADO

    1

    N

  • 7/29/2019 Base de datos Teora - 2011-I

    48/181

    48

    CARRERAS PROFESIONALES CIBERTEC

    2.2.2. Ejemplo integrador

    Caso: La Liga de SurcoLa Liga de Surco requiere controlar la constitucin de los diferentes equiposdeportivos del distrito y de esta manera programar torneos que les permitanmejorar su calidad deportiva. Para ello, ha decidido crear una base de datos.

    La liga cuenta con diferentes clubes de los cuales se tiene su nombre, fecha decreacin, direccin y nmero de locales. Los clubes tienen distintos tipos dejugadores contratados. De los jugadores se conoce su cdigo, el cual se puederepetir para diferentes clubes, los nombres y apellidos, direccin, sexo y fechade nacimiento, entre otros datos. Cabe mencionar que un jugador es capitn deotros jugadores. Ello implicar que deba ser capacitado en cursos de liderazgoy coaching deportivo.

    Asimismo, la liga tiene empleados de dos tipos: administrativos y tcnicos. Delos empleados se almacena un cdigo, los nombres y apellidos, direccin, sexo,fecha de nacimiento y telfono fijo y celular. Es importante mencionar que paralos empleados de tipo Administrativos se almacena su nivel (pregrado opostgrado) y en el caso de los Tcnicos, la especialidad deportiva (ftbol,voleibol, natacin, etc.)

    La liga asigna un Tcnico un grupo de jugadores y estos pueden tenerdiferentes Tcnicos durante la etapa de jugadores, lo cual constituye un Equipo;de este se almacena la categora (de acuerdo a la fecha de nacimiento deljugador, como Sub-15, etc.) y la disciplina.

    Los empleados administrativos elaboran varios contratos de los cuales seguarda el nmero, la fecha de inicio y fin, entre otros datos. Los contratos sonconfeccionados para los tcnicos.

    Finalmente, la liga programa a los equipos en diferentes torneos para que

    eleven su nivel deportivo controlando la cantidad de participaciones que tieneun determinado equipo. Del torneo se registra el nombre del torneo, las fechasde inicio y fin, as como la disciplina correspondiente.

    1. Sobre la base al caso planteado se pide que construya el diagrama entidadrelacin (DER).

    Solucin:a. Se determinan las entidades fuertes

    - Club- Empleado- Tcnico- Administrativo

    - Contrato- Equipo- Torneo

    b. Se determina la entidad dbil- J ugador

  • 7/29/2019 Base de datos Teora - 2011-I

    49/181

    B A S E D E D A T O S T E O R A 4 9

    CIBERTEC CARRERAS PROFESIONALES

    c. Se identifican las relaciones

    d. Se identifican los atributos, y se asocian a las entidades y relaciones.

    ENTIDAD ATRIBUTO

    CLUBCOD_CLUB, NOM_CLUB,

    FEC_CRE_CLUB, DIR_CLUB,NRO_LOCAL_CLUB

    J UGADORCOD_J UG, NOM_J UG,

    APE_PAT_J UG, APE_MAT_J UG,DIR_J UG, SEX_J UG, FEC_NAC_J UG

    EMPLEADO

    COD_EMP, NOM_EMP, APE_PAT_

    EMP, APE_MAT_ EMP, DIR_ EMP,SEX_ EMP, FEC_NAC_ EMP,TEL_FIJ O_EMP, TEL_CEL_EMP

    TCNICO ESP_TEC_EMPADMINISTRATIVO NIV_ADM_EMP

    EQUIPO CAT_EQU, DISC_DEP_EQU

    CONTRATO NUM_CON, FEC_INI_CON,FEC_TER_CON

    TORNEO COD_TOR, NOM_TOR, FEC_INI_TOR,FEC_TER_TOR, DISC_DEP_TOR

    TCNICO CONTRATOT - C1 N

    CLUB J UGADORC J1 N

    TCNICO J UGADORT -J1 N

    ADMINISTRATIVO CONTRATOA - C1 N

    EQUIPO TORNEOE - TN N

    es capitn

    J UGADOR N

    1

    Relacin recursiva

    CANT_TOR_EQU

  • 7/29/2019 Base de datos Teora - 2011-I

    50/181

    50

    CARRERAS PROFESIONALES CIBERTEC

    e. Se determinan los identificadores o claves (simples o compuestas) de cadaentidad.

    ENTIDAD ATRIBUTO IDENTIFICADORCLUB COD_CLUB

    J UGADOR COD_CLUB COD_J UGEMPLEADO COD_EMP

    EQUIPO COD_CLUB COD_J UG COD_EMPCONTRATO NUM_CONTORNEO COD_TOR

    f. Se determinan, si las hubiese, las jerarquas de generalizacin yagregaciones.

    EMPLEADO ISA

    TCNICO

    ADMINISTRATIVO

    Generalizacin

    Agregacin

    TCNICO J UGADORT - JN N

    EQUIPO