Introduccion a las bases de datos full

3,249 views

Published on

Published in: Education
0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
3,249
On SlideShare
0
From Embeds
0
Number of Embeds
2
Actions
Shares
0
Downloads
61
Comments
0
Likes
1
Embeds 0
No embeds

No notes for slide

Introduccion a las bases de datos full

  1. 1. INTRODUCCION A LAS BASES DE DATOS1. SURGIMIENTO HISTÓRICO DE LAS BASES DE DATOS INTEGRADAS.Al estudiar el desarrollo del procesamiento automatizado de datos, en lo que serefiere al aseguramiento técnico se habla de diferentes generaciones.Desde el punto de vista del aseguramiento matemático y en particular, elaseguramiento de programas, algunos autores reconocen 3 generaciones: a) Solución de tareas aisladas. b) Integración de tareas aisladas en sistemas particulares. c) Integración de sistemas particulares en sistemas automatizados de dirección.Este proceso de integración ocurre paralelamente, aunque no simultáneamente,en dos esferas: a) Integración de los programas: Ha estado facilitado por el uso de lenguajes de programación cada vez más sofisticados y de redactores que permiten el acoplamiento de módulos escritos en lenguajes diferentes. b) Integración de los datos: En la integración de los datos se han producido tres categorías de técnicas para su manipulación: 1. Sistemas orientados a los dispositivos: Programas y ficheros son diseñados y empleados de acuerdo a las características físicas de la unidad central y los periféricos. Cada programa está altamente interconectado con sus ficheros, por lo que la integración de datos de diferentes sistemas es imposible prácticamente. 2. Sistemas orientados a los ficheros: La lógica de los programas depende de las técnicas de organización de los ficheros (secuencial, directo, etc.). Cada usuario organiza su fichero de acuerdo con sus necesidades y las relaciones entre los elementos se establecen a través de los programas de aplicación. Esta forma de trabajo implica redundancia de datos que trae aparejada mayor gasto de memoria y complica las operaciones de actualización (modifica un dato dondequiera que aparezca). Esto aumenta el tiempo de tratamiento y atenta contra la integridad de la información. Integridad es que en todo momento los datos almacenados estén correctos en correspondencia con la realidad. Además, en la vida real se establecen relaciones entre los objetos que son muy
  2. 2. difíciles de representar u obtener a partir de sistemas tradicionales de ficheros. Por ejemplo, si se tiene información sobre trabajadores y estudiantes de una facultad, las aplicaciones requeridas van a definir la manera de organizar y estructurar los ficheros.Si se desea obtener datos como: - Calificaciones promedio de cada estudiante. - Listado de estudiantes por grupos. - Categoría científica y docente de cada profesor. - Salario de cada trabajador.Resulta adecuado establecer dos ficheros: uno de trabajadores y uno de estudiantes. Pero, ¿Qué ocurre si se quiere establecer vínculos entre los profesores y estudiantes?Por ejemplo, si se desea obtener: - Los estudiantes de un profesor. - Los profesores de un estudiante. Se estructuraría un fichero de profesores y estudiantes que resolvería algunas demandas, pero sería ineficiente para otras. Entonces, ¿es posible representar de manera eficiente utilizando los medios de cómputo los fenómenos o procesos de la realidad objetiva, aunque sea por supuesto de forma esquemática, pero en la que se establezcan determinados vínculos entre los elementos u objetos que forman parte de esos procesos o fenómenos? Veremos que esto es posible hacerlo a través de la utilización de BD y de los sistemas que dirigen su manipulación o para decirlo de otra manera, los Sistemas de Gestión de Bases de Datos (SGBD). Obteniendo entonces la 3ra. categoría:3. Sistemas orientados a Bases de datos: En los que hay una débil interdependencia entre los programas de aplicación y la organización física de los datos.¿Qué es una Base de Datos?.Es el conjunto de datos interrelacionados entre sí, almacenados con caráctermás o menos permanente en la computadora. O sea, que una BD puedeconsiderarse una colección de datos variables en el tiempo.
  3. 3. 2. CONCEPTOS BÁSICOS.En cualquier sistema de información basado en computadoras se cuenta con dos enfoquespara el almacenamiento de los datos: 1. En archivos o ficheros individuales. 2. En base de datos.1. Supongamos una organización con diversos sistemas de información que utilizan tres archivos convencionales e independientes. “VENTAS” NÚM. NOMBRE 2009 2010 2011 Contiene información con datos históricos sobre las ventas realizadas por el personal de la organización. “ACTIVIDADES” NÚM. NOMBRE AREA 2010 Contiene las actividades actuales las cuales se actualizan con frecuencia. “PERSONAL” NUM DPTO NOMBRE DIRECC. TELF CONTRATO SALARIO TITULO Contiene los datos relacionados con el personal de la empresa.Observemos el Núm. y NOMBRE del trabajador aparece en todos los ficheros por lo quealgún cambio en estos datos requieren la actualización de los tres ficheros.2.- Una Base de Datos (BD) es un almacenamiento de datos formalmente definidos,controlados centralmente para intentar servir de múltiples y diferentes aplicaciones.Un ejemplo de Base de Datos donde usuarios de distintos departamentos de una mismaorganización comparten los mismos datos será:
  4. 4. “Grupo de Datos 1” XXXX XXXX X XXXX XXXX X “Base de Datos” “Grupo de Datos 2” 2222 2 2 2 2222 2 2 2 .......... .......... “Grupo de Datos n” 2 XXX XXX 2 2 2 2 2 2 2 2 XXX XXX 2Estos conjuntos de datos se superponen indicando que la existencia de datos que fueranredundantes en archivos convencionales, solamente se almacenarán una vez.2.1. ARCHIVOS CONVENCIONALES.Los archivos convencionales son una manera práctica de almacenar los datos de ciertasaplicaciones. Un archivo convencional se puede diseñar y elaborar de manera rápidareduciendo los problemas de disponibilidad y seguridad.Cuando ya existen aplicaciones que trabajan con archivos independientes, el analista no puedeinvolucrarse en el problema de solucionar el almacenamiento de los datos y lo que hace esdiseñar otros archivos independientes.La velocidad de procesamiento es otra ventaja del uso de los archivos.Consecuencias: - Uno de los principales problemas es la falta de potencial para evolucionar, se diseñan sobre la base de las necesidades inmediatas. - El rediseño de archivos implica que se modifiquen los programas que lo accesan, esto implica mayor tiempo de desarrollo y mantenimiento del sistema.
  5. 5. - Generalmente los datos almacenados llegan a ser redundantes, además la actualización de los archivos llevan más tiempo. - La integridad de los datos llegan a convertirse en una gran preocupación ya que los cambios en un archivo requieren también cambios en otros que puedan ignorarse.2.2. BASE DE DATOS.La Base de Datos no es simplemente una colección de archivos; es una fuente central de datossignificativos, los cuales son compartidos por numerosos usuarios para diversas aplicaciones.La esencia de una Base de Datos radica en el Sistema Administrador de la Base de datos(DBMS Data Base Management System) el cual permite la creación, modificación yrecuperación de la Base de Datos. Generalmente se designa una persona que es eladministrador de la BD.Objetivos:Los objetivos de eficacia de una BD son: - Asegurar que los datos puedan ser compartidos por los usuarios de una organización, para una variedad de aplicaciones. - Que el mantenimiento de los datos sea precisa y constante. - Asegurar que todos los datos requeridos para las aplicaciones presentes y futuras se encuentren siempre disponibles. - Permitir que evolucione y se adapte a las necesidades crecientes de los usuarios. - Permitir que los usuarios desarrollen su propia visión de los datos sin preocuparse de la forma en que estos se encuentran almacenados físicamente.Ventajas: - El compartir los datos significa que estos se almacenan sólo una vez y esto hace que se mantenga la integridad de los datos. - Cuando un usuario necesite un dato en particular, lo podrá encontrar disponible en la BD (si el diseño fue bueno). - Una BD bien diseñada es más flexible que varios archivos independientes. - El enfoque de BD tiene la ventaja principal de permitir que los usuarios expongan sus puntos de vista sobre los datos, sin preocuparse de la estructura de los datos o de la ubicación física.
  6. 6. Desventajas: - Los datos se almacenan en un solo lugar y por lo tanto son más vulnerables de accidentes, por lo que requieren una protección complementaria. - Aumento del tiempo requerido para insertar, actualizar, eliminar y recuperar los datos.Una BD no puede optimizar la recuperación de los datos para un usuario en particular, ya quedeberá compartirse con numerosos usuarios y varias aplicaciones.2.3. MODELO DE DATOS.Un modelo de datos se define como un grupo de herramientas conceptuales que se utilizanpara describir los datos, sus relaciones, su semántica y sus limitaciones de forma tal quepermite la interpretación del mundo real en un sistema informático.Todo modelo de datos tiene propiedades Estática y Dinámica.La parte dinámica se define mediante un conjunto de operaciones que se pueden realizar deacuerdo con un lenguaje de manipulación de datos (DML). Cambia con el tiempo. Parte Dinámica Operaciones (DML)Las operaciones pueden ser: - Selección - Recuperación - Actualización (Modificación, inserción, corrido)La parte estática se define mediante un esquema y un lenguaje de definición de datos (DDL).Es la que no cambia con el tiempo. Objetos Parte Estática Propias de cada (DDL) Modelo Restricciones ESQUEMA ESTRUCTURA RESTRICCIONES • Inherentes al modelo • Opcionales OBJETOS DEL MODELO depende el modelo que se trate, pero en general son:
  7. 7. • Entidades • Atributos • Dominios • Relaciones • Representaciones, etc.Clasificación de los Modelos de Datos.-Los Modelos se clasifican de acuerdo al nivel de abstracción en: 1.- Externos Basados en Objetos Modelos lógicos 2.- Conceptuales Basados en Registros 3.- Internos Modelo físicoDentro del grupo de los modelos lógicos se diferencian:a.- Los basados en objetos, elemento de referencia es el objeto.Se caracterizan por ser muy flexibles y hacen posible la especificación de las limitaciones delos datos y como ejemplo tenemos: - Modelo Entidad-Relación - Modelo Binario - Modelo Semántico - Modelo Infológicob.- Los basados en registros, elemento básico es un conjunto de datos relacionados de algúnmodo.Se utilizan para especificar, tanto la estructura lógica general de BD como una descripción enun nivel más alto implementación, pero no permiten especificar de forma clara laslimitaciones de los datos y como ejemplo tenemos: - Modelo Relacional - Modelo Jerárquico - Modelo Reticular2.4. MODELO ENTIDAD – RELACIÓN.Este Modelo Entidad – Relación que también se denomina modelo conceptual de datos, esuna técnica de representación gráfica que incorpora información relativa a los datos y larelación que existe entre ellos para darnos una visión del mundo real, este modelo es un pasoprevio al futuro diseño físico de las bases de datos.
  8. 8. NOTA: El modelo Entidad - Relación es una visión del mundo real con la mayor naturalidadposible mediante los objetos y sus relaciones. Los objetos básicos se denominan entidades. “MODELO EXTERNO” CENTRAL TRACTOR CAMPO “MODELO CONCEPTUAL” CENTRAL CAMPO TRACTOR• Características del MER: - Reflejan sólo la existencia de los datos y no lo que se hace con ellos. - Se incluyen todos los datos del sistema informativo y por tanto no esta orientado a ninguna aplicación en particular. - Es independiente al modelo físico de los datos y al Sistema Operativo. - No tiene en cuenta restricciones de espacio, almacenamiento, ni tiempo de ejecución. - Está abierto a la evolución del sistema.
  9. 9. 2.4.1. Conceptos Fundamentales.• Entidad.- ) Entidad: Es una cosa u objeto concreto o abstracto que existe, que puede distinguirse de otros y del cual se desea almacenar información. ) Conjunto de entidades: Las entidades se pueden agrupar en conjuntos de entidades, con la agrupación de los datos de cada uno de ellas.Generalmente existe un predicado asociado a cada conjunto de entidades que permitecomprobar si una entidad pertenece al conjunto dado o no. Las entidades pueden existir a masde un conjunto de entidades o sea que los conjuntos no son mutuamente excluyentes. UNIVERSIDAD Profesores Seguridad Rectorado AlumnosLas entidades además pueden ser fuertes o débiles.Entidades Fuertes: sus ocurrencias se identifican por sí mismas, o sea, los atributos que las identifican son propios de las entidades y se representan con un rectángulo. Ejemplo de Entidad Fuerte: Nro. Carnet Nombre Atributos de la Alumno Entidad Nivel El alumno es identificable por su Nro. Carnet.Entidades Débiles: sus ocurrencias son identificables solo por estar asociadas a otra u otras entidades, o sea, que algunos de los atributos que la identifican se refieren a otra entidad y estas se representan con doble rectángulo.
  10. 10. Ejemplo de Entidad Débil: Departamento Código AsignatutaAsignatura (se identifica mediante el código de la asignatura, que tiene como primer carácterel departamento al que pertenece, y el siguiente dígito es un número secuencial que eldepartamento pone a sus asignaturas). De ese modo el departamento “A” se corresponde con“Lenguajes de programación“.• Clave o Llave de una Entidad.-Antes de definir Clave, definiremos un conjunto más genérico, denominado: Identificador,Determinante o Superclave. ) La Superclave es un conjunto de uno o más atributos que permiten identificar de forma unívoca una Ocurrencia de Entidad dentro del conjunto de ellas. ) De entre todas las Superclaves aquellas para las cuales ningún Superclaves subconjunto propio es a su vez una Superclave, se le denomina Superclaves mínimas o Claves Claves Candidatas Candidatas. Así pues, podemos definir las Claves Candidatas como aquellas Superclaves que Clave Primaria Claves Secundarias además de serlo son mínimas. ) De entre todas las Claves Candidatas se elige la Clave primaria siendo todas las demás denominadas Claves Alternativas o Claves secundarias.Ejemplo en la Entidad Alumno: Superclaves: - Número del Semestre + Número Registro. - Número Cédula. - Nombre Alumno. - Nombre + Fecha Nacimiento. Claves Candidatas: - Número Cédula. - Nombre Alumno. - Número del Semestre + Número Registro.
  11. 11. Clave Primaria: - Número Cédula. Claves Secundarias: - Nombre Alumno. - Número del Semestre + Número Registro. ) Claves Externas ó Ajenas es aquel o aquellos atributos de una entidad que son claves primarias en otras entidades.Ejemplo en la Entidad Asignatura: Superclaves: - Código Asignatura = Código Dpto. + Número Asignatura. - Descripción. Claves Candidatas: - Código Asignatura. - Descripción. Clave Primaria: - Código Asignatura. Clave Secundaria: - Descripción. Clave Externa: - Código Dpto.Ahora supongamos que en la asignatura además se almacenara el código del profesor que loimparte, esta será otro clave externa.• Relación.- ) Relaciones: Es una asociación sin existencia propia de una o varias entidades y se representa con un rombo y se nombra con verbo. Alumno recibe AsignaturaNOTA.- Una limitación del MER es que no es posible expresar relaciones entre relaciones.La dimensión de una relación es la cantidad de entidades que participan en ellas. La masgeneralizada es la binaria (sólo dos entidades).
  12. 12. Vendedor negocian Cliente Relación Ternaria AgenteLas relaciones también tienen claves.• Clave de una Relación.- ) Clave de una Relación es el producto cartesiano o concatenaciones de las Claves Primarias de las Entidades asociadas y en algunos casos los atributos que forman dicha relación.La Relación Recibe tiene clave número de cédula y código de la asignatura, pero si el alumnoestá matriculado en una asignatura de otro curso, arrastre, entonces el atributo curso de larelación formará parte de la clave de la relación.• Atributo.- ) Atributo es una unidad básica de información de una entidad o de una relación que sirve para identificarla o descubrirla y se representa con una línea con un círculo en el extremo. ... ... ... Alumno recibe Asignatura• Ocurrencia.-La Ocurrencia se puede definir tres tipos: de atributos, de entidad y de relación. ) Ocurrencia de atributo: Es el conjunto de valores que puede tomar un atributo (dominio).
  13. 13. Nombre Asignatura Atributo Asignatura 9 Base de Datos 9 Ingeniería de Sistemas Ocurrencias 9 FísicaLas ocurrencias de éste atributo, asignatura, serian: base de datos, ingeniería de sistemas,física, etc. ) Ocurrencia de una entidad: Es el conjunto de ocurrencias de sus atributos con sentido y existencia propia. Nro. Cédula Alumno Dirección Fecha de Nacimiento Nro. Cédula Nombre Dirección Fecha de Nacimiento 123456789-0 Raúl Ambato 02/02/76 Ocurrencia 234567890-1 Juan Riobamba 03/03/66 de 345678901-2 María Quito 04/04/67 Entidad Ocurrencias de AtributosLas ocurrencias de ésta entidad, Alumno, serían la colección de todas las filas que conformanla tabla anterior. ) Ocurrencia de relación: Está constituido por una y sola una ocurrencia de cada una de las entidades asociadas y las ocurrencias de cada uno de los atributos de la relación. Nro. Cédula Curso Nombre Asignatura Alumno recibe Asignatura
  14. 14. Nro. Cédula Curso Nombre Asignatura 123456789-0 IV Lenguajes de Programación Ocurrencia 234567890-1 VIII Programación WEB de 345678901-2 V Base de Datos I Relación Ocurrencias de AtributosLas ocurrencias de la relación, Alumno – recibe – Asignatura, serían la colección de todas lasfilas que conforman la tabla anterior.2.4.2. Representación del Modelo Entidad - Relación (MER).En este modelo, las entidades fuertes se representan mediante un rectángulo, las débiles condos rectángulos, los atributos mediante líneas con círculos en el extremo, las relacionesmediante rombos. El nombre del atributo que será clave, debe subrayarse y se debe poner deizquierda a derecha o de arriba a abajo siendo las primeras las más significativas.El MER tiene asociado las tres representaciones gráficas siguientes: ) Diagrama Entidad - Atributo (DEA): En el cual se representa cada entidad con sus atributos, subrayando los atributos de la clave primaria. Nro. Carnet Alumno Nombre Dirección Nro. Carnet Nombre ón Direcció n Alumno
  15. 15. ) Diagrama Relación - Atributos (DRA): En el cual se representa cada relación con sus atributos, en caso que las tenga.) Diagrama Entidad – Relación (DER): Formado por los diagramas de Entidad – Atributos y Relación – Atributos
  16. 16. Las relaciones se deben nombrar con un verbo, las entidades con sustantivos que actúan comosujeto y complemento cuando se asocian entre sí mediante una relación formando todo ellouna frase que describe la gestión que se realiza.Así se puede leer: El alumno Pedro estudia Física ó la Física es estudiada por el alumnoPedro.2.4.3. Grado de una Relación.El grado de una relación representa la participación en la relación de cada una de las entidadesasociadas y puede ser de tres tipos: ) De 1 a 1 (una a una): A cada ocurrencia de una entidad corresponde una y sólo una ocurrencia de la otra y viceversa. ) De 1 a n (De una a muchas) o de n a 1 (De muchas a una): A cada ocurrencia de la primera entidad pueden corresponderle varias ocurrencias de la segunda entidad y a cada ocurrencia de la segunda le corresponde no más de una de la primera. ) De n a m (De muchas a muchas): A cada ocurrencia de la primera entidad pueden corresponderle más de una ocurrencia de la segunda y viceversa.Otra forma de representar el grado de una relación es mediante Æ (para el caso de una) óÆÆ (para la relación de m). O se puede utilizar también ambas formas a la vez.
  17. 17. 2.4.4. Cardinalidad de una Entidad.La cardinalidad de una entidad es una relación que mide el máximo y mínimo de laparticipación de dicha entidad en la relación para expresar la cardinalidad teniendo en cuentala obligatoriedad de la ocurrencia vamos a utilizar la siguiente notación: 1: Indica que a cada elemento le corresponde al menos uno en la otra entidad (obligatoriedad). c: Indica que a un elemento de una entidad le puede corresponder uno o ningún elemento de la otra entidad (no-obligatoriedad). m: Indica que a un elemento de una entidad le corresponde uno o varios elementos de la otra entidad (obligatoriedad). n: Indica que a un elemento de una entidad le puede corresponder uno o varios elementos de la otra entidad (no-obligatoriedad).Ejemplo:La entidad alumno en la relación estudia tiene una cardinalidad de “m”, ya que al alumno lecorresponde una o varias asignaturas. Sin embargo si existe alguna asignatura incluida en elplan de estudios que no tiene ningún alumno matriculado, tiene cardinalidad n, es decir, laasignatura puede tener uno, varios o ningún alumno matriculado.Si hablamos de la cardinalidad existente entre departamento y asignatura tenemos que la deldepartamento es m (comprende siempre una o varias asignaturas) y la cardinalidad deasignatura es uno (ya que a una asignatura le corresponde uno y sólo un departamento).
  18. 18. 2.4.5. Operaciones sobre el Diagrama Entidad - Relación (DER).Para entender la semántica del DER, se puede aplicar sobre sus componentes básicos(Entidades, atributos, relaciones) diferentes operaciones. ) Generalización / Especialización: Permite formar un nuevo conjunto de entidades mediante la unión de otros conjuntos de entidades o dividir un conjunto de entidades en cierto número de otro conjunto de entidades (a esta última se le conoce como especificación). Se distinguen los trabajadores de una empresa de acuerdo con la organización que ellos tienen. Usando la especialización podemos obtener una nueva entidad de trabajadores. Es necesario introducir un nuevo atributo, en el conjunto de entidad de trabajadores (tipo de trabajador) para poder distinguir entre sus miembros las distintas clases de trabajadores. Si por algún atributo propio de cada tipo de trabajador se pudieran diferenciar unos de otros entonces no se necesitaría introducir el atributo diferenciante. ) La Agregación: Consiste en construir un nuevo conjunto de entidades sobre la base de un conjunto de relaciones entre entidades. Observemos que la relación ternaria obrero, máquina y piezas representan la idea de que una actividad en la empresa se describe en término de que un obrero en alguna máquina produce una cantidad determinada de piezas en una fecha dada. En el DER esta situación no hubiera podido ser modelada correctamente ya que una relación no puede relacionarse con otra relación.
  19. 19. 2.5. MODELOS LÓGICOS BASADOS EN REGISTROS.Se utilizan para especificar los datos tanto a nivel de la estructura lógica general como unadescripción en un nivel mas alto de implementación pero no permiten especificar de formaclara las limitaciones de los datos. Éstos pueden ser como ya se mencionó antes: relacional,jerárquico, reticular.2.5.1. Modelo Relacional.Fue definido por E. F. Codd (1970), en este modelo tanto las Entidades como las Relacionesse presentan mediante tablas.PARTE ESTATICA (Objetos y Restricciones).-OBJETOS:Relación.- No se refiere a la asociación entre Entidades como en el MER, sino que estáestrechamente ligado a la definición matemática de una relación que se enuncia de lasiguiente forma:“Dado una serie de conjuntos D1, D2,…Dn, R es una relación de estos n - conjuntos si es unconjunto ordenado de n - ocurrencias tal que d1 pertenece a D1, d2 pertenece a D2,… y dnpertenece a Dn. En donde los conjuntos D1, D2, …, Dn son Dominios de R.”Atributos.- Son las propiedades o características de las Entidades y se corresponden con ladenominación o cabecera de una columna o cuerpo de una relación.Dominio.- Es el conjunto de donde los atributos toman sus valores. Puede suceder que dosatributos distintos de una misma relación, tomen sus valores del mismo dominio.
  20. 20. Ejemplo:El dominio de las edades contiene valores enteros de 18 a 60 años. El atributo edades tomavalores de ese dominio y otro atributo, por ejemplo antigüedad puede tomar también valor endicho dominio. Atributos NOMBRE EDAD SEXO Juan Paez 30 M Elsa Suárez 22 F Teresa Pineda 19 FTupla.- La tupla es una Ocurrencia de la Entidad o conjunto de itens de información queforma una fila de la relación.Tabla.- Si se colocan todas las tuplas de una relación, una debajo de la otra alineando loscomponentes de cada atributo en una columna y en la cabecera de cada columna el nombre desu atributo, se obtiene la representación de la relación denominada tabla. Cada tupla formauna fila de la tabla.Grado.- El grado de una relación es el número de atributos o columnas que posee.Cardinalidad.- Es el número de filas o tuplas de una relación.Clave.- Se define clave de una relación a aquel o aquellos atributos que determinan de formaunívoca y mínima a una tupla de la relación.RESTRICCIONES:Inherentes: ) No pueden aparecer dos filas iguales en una relación ) El o los atributos que forman parte de la clave no pueden tomar valores nulos o desconocidos.Opcionales: ) Están formadas por las dependencias funcionales, transitivas multivaloradas, etc.PARTE DINAMICA.-El modelo Relacional trabaja por especificación, es decir se especifica una condición quedebe cumplir un grupo de tuplas; para localizarlas. Por tanto el DML utilizado no esprocedural.
  21. 21. RESUMEN.- 1. Una base de Datos Relacional está formada por un grupo de datos agrupados en relaciones. 2. Las relaciones se presentan mediante tablas que contienen información homogénea. 3. Los distintos itens de información contienen tuplas y cada una se identifica con una clave. 4. Cada tupla está formada por atributos cuyos valores no se pueden descomponer. 5. Los atributos se asignan a dominios siendo un dominio un conjunto de valores posibles de un atributo. 6. Entre las bases de Datos Relacionales existentes en el mercado se encuentran: DBASE, ORACLE, CLIPPER, FOXPRO, ACCES, etc. EJEMPLO.-Supongamos que deseamos representar una base de Datos, la información referente a lasasignaturas donde están matriculados diferentes alumnos de distintas facultades. Según elmodelo Relacional utilizaríamos la tabla: “Matrícula” que contiene atributos de los datosreferentes a Facultad, Alumno y Asignatura. FACULTAD ALUMNO ASIGNATURA Informática Luis Suárez Base de Datos Informática Ana del Pozo Metodología Informática Ana del Pozo Base de Datos Exactas Juan Pino Geografía Exactas Eva Martín Álgebra Exactas Eva Martín TopologíaSi la estructura de la tabla tiene un total de 100 bytes (Facultad = 50 bytes, Alumno = 30 bytesy Asignatura = 20 bytes) para el ejemplo anterior que tiene 6 tuplas, los datos ocuparían 600bytes (6 tuplas x 100 bytes = 600 bytes).2.5.2. Modelo Jerárquico.La representación se presenta en forma de árbol. Permite reducir la redundancia inevitableque se produce en las Bases de Datos Relacionales.PARTE ESTATICA (Objetos y Restricciones).-OBJETOS:Segmento.- Es un conjunto de datos homogéneos que se corresponde con las entidades. Sediferencia el Segmento Raíz de los Segmentos Dependientes de acuerdo con la posición queocupe en la estructura jerárquica, y el Segmento Tipo de los Segmento de Ocurrencia, elprimero define a una identidad y el segundo a los datos de la identidad.
  22. 22. Campo.- Es una parte bien definida del Segmento, y corresponde al concepto de atributo en elModelo RelacionalDependencia o Relación Jerárquica.- Se denomina a la conexión que enlaza los SegmentosTipo. Entre dos segmentos sólo existirá una única conexión, del tipo de una a muchas (1:m).RESTRICCIONES:Inherentes.- - Sólo se permite una relación entre dos segmentos. - No se permiten Relaciones Reflexivas. - No se permite un Segmento Hijo con más de un Segmento Padre. - El árbol se recorre en un cierto orden (Preorden). - Es obligatorio entrar por el Segmento Raíz.Opcionales.- - No tiene debido a lo rígido que es.PARTE DINAMICA.-La selección se realiza por Navegación, es decir, segmento a segmento es por tanto unModelo Procedural.RESUMEN.- 1. Sólo tiene un segmento Raíz. 2. Un Segmento Raíz puede tener cualquier número de Segmentos Tipo Dependientes. 3. Cada Segmento Tipo Dependiente del Segmento Raíz puede tener otros subordinados. 4. Para cada Segmento de Ocurrencia de todo Segmento Tipo puede haber cualquier número de Segmento de Ocurrencia (tal vez cero) de cada uno de sus segmentos dependientes. 5. Ningún Segmento Ocurrencia de Segmento Tipo Dependiente puede existir sin su segmento Ocurrencia de nivel jerárquico superior. 6. Entre los Modelos Jerárquicos tenemos: IMS, MARK IV, SYSTEM 2000, para ordenadores grandes. EJEMPLO.-Se debe determinar que entidades representan el problema, y cuál es el padre del que parte elresto de segmentos.Existen tres Segmentos y cada uno de ellos con un campo: - Segmento Facultad - Nombre de la Facultad. - Segmento Alumno - Nombre del Alumno. - Segmento Asignatura - Nombre de la Asignatura.Nota.- Generalmente tienen más campos pero se hizo así para simplificar.
  23. 23. El segmento Raíz debe ser la Facultad ya que tiene dependencia con alumnos, y este a su vezcon las asignaturas matriculadas.El árbol sería: “Matrícula” Facultad Alumno AsignaturaLos elementos representativos que antes hemos incluido en la tabla estarían dispuestos delsiguiente modo: Informática Exactas Luis Sáez Ana del Pozo Juan Pino Eva Martín Base de Datos Base de Datos Metodología Geometría Álgebra TopologíaEn una estructura jerárquica ya sabemos que existen diferentes estructuras, una por cadasegmento y las ocurrencias de estas se enlazan mediante punteros.La representación interna del árbol tiene una serie de punteros para asociar la información delos segmentos.Un ejemplo de representación interna sería:
  24. 24. Directorio Luis Saez Base de Datos Informática Metodología Ana del Pozo Base de Datos Π Π Juan Pino Geometría Exactas AlgebraΠ Eva Martín Topología Π ΠLa estructura del árbol se conoce desde el momento en que se organizan los segmentos entresí y no depende de los datos que se incorporen después.Si consideramos que los apuntadores ocupan 2 bytes, la estructura interna sería:Estructura de los Segmentos.-Facultad = 50 + 4 bytes (2 punteros) = 54 bytesAlumno = 30 + 4 bytes (2 punteros) = 34 bytesAsignatura = 20 + 2 bytes = 22 bytesOcurrencias en los segmentos.-Facultad = 2 * 54 = 108 bytesAlumnos = 4 * 34 = 136 bytesAsignatura = 6 * 22 = 132 bytesEl árbol ocuparía un total de 376 bytes de memoria mucho menos que el relacional debido a laeliminación de la información redundante.Si le adicionamos los profesores que tiene la Facultad, sería:
  25. 25. Facultad Alumno Alumno AsignaturaY en este caso el segmento Facultad tendrá 3 punteros, una para sus ocurrencias hermanas yotra para asociar a los profesores y otras para los alumnos. Directorio Dr. Carlos Nieto Dr. Luis Peña Π Luis Saez Base de Datos Informática Metodología Ana del Pozo Base de Datos Π Π Dr. Luis Peña Π Juan Pino Geometría Exactas AlgebraΠ Eva Martín Topología Π Π
  26. 26. 2.5.3. Modelo Reticular.Este modelo fue propuesto para el grupo DBTG (Data Base Task Group) del comitéCODASYL.PARTE ESTATICA (Objetos y Restricciones).-OBJETOS:Articulo o Registro.- Es un conjunto de datos homogéneos que constituye la unidad deintercambio de información, entre las Bases de Datos y las aplicaciones. Es el equivalente alas tablas y los segmentos.Conjuntos.- Se denomina así a la asociación entre artículos. En cada conjunto existe unarticulo cabecera y uno o varios artículos miembros. Esto es similar a los Segmentos tipos ylos Segmentos de Ocurrencias.RESTRICCIONES:Inherentes.- - No existen.Opcionales.- - Existen algunos determinados por las diferentes variantes del modelo.PARTE DINAMICA.La selección o búsqueda de los datos también se realiza por navegación, por tanto es unmodelo procedural.RESUMEN. 1. Una base de datos reticular esta formada por un conjunto de datos homogéneos llamados artículos o registros. 2. Las asociaciones entre artículos se denominan conjuntos 3. Ejemplos de Bases de Datos reticulares: DMS, TOTAL, DBMS, etc.(Todas son propias de maquinas grandes) mainframes.El modelo reticular se utiliza para representar objetos que tienen entre sí una dependenciamucho mayor que la asociación jerárquica. Está especialmente diseñada para cardinalidadesde muchos a muchos (n : m).
  27. 27. EJEMPLO.Si un alumno pudiera matricularse en varias facultades, por ejemplo: la estudiante Ana delPozo se incorporara a la facultad de ciencias exactas y se matricula en una asignatura de esaFacultad.En el modelo relacional, los datos se repiten en tuplas y por tanto las relaciones de n:m sepueden mantener duplicando la información. Por lo tanto el modelo Relacional seria:Modelo Relacional: FACULTAD ALUMNO ASIGNATURA Informática Ana del Pozo Base de Datos Informática Ana del Pozo Metodología Exactas Ana del Pozo AlgebraEn el modelo jerárquico, no se repiten los datos de un padre para diferentes hijos, pero siexisten hijos de diferentes padres con la misma información, no quedando mas remedio queduplicar los datos del hijo, pues solo se permite a un hijo tener un solo padre.Entonces en el modelo jerárquico seria:Modelo Jerárquico Informática Exactas Luis Sáez Ana del Pozo Ana del Pozo Eva Martín ...... Base de Datos Metodología Álgebra ...... ......En el modelo reticular se permite que un hijo tenga mas de un padre y entonces el diseñoseria: Facultad Alumno AsignaturaEntonces: Informática Exactas Luis Sáez Ana del Pozo Eva Martín Juan Pino Base de Datos Metodología Álgebra ...... ......Si se analiza esta representación gráfica se puede apreciar cuales son los alumnos que están
  28. 28. matriculados y cuales son las asignaturas que cada uno de ellos cursa. Pero no se conocencuales son las asignaturas que el alumno tiene matriculadas en una facultad o en la otra, sepuede dar el caso incluso que una misma asignatura tenga el mismo nombre en 2 facultadesdiferentes.El grafo que sí mantendría consistencia de la información que queremos representar, sería elsiguiente: Informática Exactas Luis Sáez Ana del Pozo Eva Martín Juan Pino Base de Datos Metodología Álgebra Topología Geometría2.6. REDUCCIÓN DEL MODELO ENTIDAD - RELACIÓN AL MODELO RELACIONAL.Si consideramos tan solo las relaciones binarias de las distintas combinaciones posibles, considerandotanto el Grado, como la cardinalidad, veremos entonces cómo convertir estas Entidades y Relacionesdel DER en tablas del Modelo Relacional.1. Para la cardinalidad de 1:1; 1:C; C:1; C:C; sólo se necesita una tabla relacional para ambas entidades, tomando como clave primaria cualquiera de las claves de las entidades, aunque se deba tomar la que pertenezca a la entidad más dominante.Ejemplo:La tabla resultante será: - Vend -Zona (CV, NV, DV, CZ, NZ)2. Cuando la cardinalidad es 1: n; 1: m; c: n; c: m; se necesitan 2 tablas, una para cada entidad, utilizándose la clave de cada entidad como clave de la tabla correspondiente. La clave de la entidad que está en extremo “1” ó “C” se añade como un atributo más a la tabla del extremo, “n” ó “m”; para mantener esa relación.Ejemplo:
  29. 29. Las tablas resultantes serán: - Profesor (CP, NP, NCP) - Asignatura (NUA, NOA, CP)3. Si la cardinalidad es n: m; m: n; n: n; m: m; las tablas estarán formadas, uno por las entidades asociadas siendo la clave correspondiente a la entidad que representa y además una tercera formada por los atributos de las claves de ambas entidades y los atributos propios de la relación.Ejemplo:Las tablas resultantes serán: - Trabajador (CT, NT) - Pieza (CP, DP, UM) - Trab-Pieza (CT, CP, C, F)4. Representar a cada entidad generalizada en una tabla que contenga la clave de la generalización y sus atributos propios.Ejemplo:
  30. 30. La tabla resultante será: - Trabajadores (CT, TT, ST)5. Representar cada entidad especializada en una tabla que contendrá la clave de la generalización y los atributos propios de la especialización.Las tablas resultantes serán: - Directorios = (CT, HT, PS) - Indirectos = (CT, CL, CTA, TA)6. Representar a cada entidad agregada en una tabla con sus correspondientes atributos y claves si las tienen y las claves de las entidades agregadas como atributos.Ejemplo:La tabla resultante será: - Publicación (CP, FP, CPP, CL, CE)7. Representar a la entidad débil en una tabla que contendrá la clave de la entidad básica determinante y los atributos de la entidad débil. NOTA: No se pone como Llave Externa como en el caso de 1:m sino como “Llave”La tabla resultante será: - Hijos (CT, CH, EH)
  31. 31. 2.7. EJERCICIOS PROPUESTOS.Represente mediante el Diagrama Entidad – Relación y realice la reducción al ModeloRelacional las siguientes situaciones:2.7.1.- En una fábrica de materiales textiles que produce dos tipos de productos: telas e hilos. De las telas se conoce el código, el tipo y el ancho. De los hilos se conoce código, la utilidad y el color. De esta fábrica se conoce el nombre, dirección y teléfono, y tipo de producto que se produce como identificador de la especialización. Los productos que son fabricados en dicha fábrica son comprados por una fábrica de pantalones de la que se conoce su nombre, dirección, teléfono y área que ocupa; por cada compra se determina la fecha de compra. Las fábricas de materiales textiles venden a muchas fábricas de pantalones así como las fábricas de pantalones compran telas e hilos a diferentes fábricas de materiales textiles. Las fábricas de pantalones tienen obreros de dos tipos de planta y temporales de los que se conoce su cédula de identidad, nombre y dirección. Además de los obreros de planta se conoce sus años de trabajo y educación realizada; y de los temporales se conoce la profesión y quien recomienda. Los obreros de planta utilizan diferentes telas para producir pantalones y las telas son usadas por diferentes obreros.2.7.2.- En una Universidad del país existen dos grupos de alumnos: el primero lo conforman los alumnos becados de los que se conoce su número de la lista y la residencia en que vive; y el segundo lo conforman los que no están becados, de los que se conoce su nombre y dirección. De los alumnos no becados sabemos que realizan trabajos voluntarios (mingas), mientras que los becados hacen experimentos, de los que se conoce el número del experimento y la materia en que se desarrolla; y que cada experimento es realizado por varios alumnos y éstos sólo pudieran realizar un experimento. Los trabajos voluntarios son realizados por varios alumnos y éstos pueden hacer varios trabajos voluntarios de los que conocemos: el número del trabajo, el lugar y el trabajo desempeñado. De cada trabajo realizado por los estudiantes se conoce la fecha en que fue realizado. De todos los alumnos se conoce el número de Cédula de Identidad y la Facultad en que estudian, además se sabe: el código, la cantidad de Horas semanales y el Contenido de las materias que reciben Los alumnos reciben varias materias y éstas son impartidas a muchos alumnos.2.7.3.- En el sistema de Enseñanza Primaria del país existen varias escuelas las que se identificarán por su nombre y dirección. Todas las escuelas dependen de un Ministro del que se conoce su Cédula de Identidad y Nombre. En cada escuela hay varias aulas de las que sabemos su número y cantidad de pupitres y a su vez tenemos varios grupos de los que se conoce su grado y la cantidad de estudiantes. En cada aula estudia un solo grupo y este sólo recibe clases en un aula.
  32. 32. En algunas ocasiones las aulas son prestadas a diferentes fábricas para que se den clases por las noches y de la fábrica conoceremos su nombre y dirección. Cada vez que prestan las aulas a la fábrica contabilizamos lo que obtenemos por concepto de arriendo.2.7.4.- En una universidad tenemos varios grupos de alumnos, los que se identifican por el nivel y la cantidad de estudiantes, pero además de las mujeres conocemos su Cédula de Identidad y edad, y que realizan experimentos fuera de la escuela; y de los varones conocemos su Cédula Militar y la estatura, y que estos realizan trabajos voluntarios fuera de la escuela. Cada experimento es realizado por varias alumnas y estas sólo realizan un experimento y de este sabemos el Número del experimento y la materia en que es desarrollada. Los trabajos voluntarios son realizados por varios alumnos (varones) y estos realizan varios trabajos voluntarios de los que se sabe: el número del trabajo, el lugar en que es realizado y el trabajo a realizar. Los grupos tienen aulas de las que conocemos su número y cantidad de pupitres. Cada aula tiene varios grupos y varios grupos tienen solo un aula y esto constituye la universidad de la que conocemos su número y nombre, y sabemos que depende al igual que de todas las universidades del director del Conesup del que se conoce su Cédula de Identidad y Nombre. De cada grupo que tiene un aula conocemos el horario y las asignaturas que se imparten.2.7.5.- En una empresa Metalúrgica se desea llevar el control de las reparaciones que se le realizan a las máquinas. En la empresa existen numerosas Máquinas, de cada una se conoce el número de inventarlo, su costo, el valor de la depreciación, el código de su tipo y el taller donde está ubicada. Para cada tipo de Máquina se conoce su código, la descripción y la frecuencia en que le toca el mantenimiento. En un taller existen varias máquinas y de cada taller se conoce su número, nombre y cantidad de obreros directos y auxiliares que trabajan en él. En la empresa los obreros auxiliares son los encargados de la reparación de todas las máquinas. Cada obrero se Identifica por su número de Identidad y de él se conoce además su nombre, categoría laboral (auxiliar o directo) y años de experiencia. Una Máquina es reparada siempre por el mismo obrero y un obrero repara varias máquinas, pero se sabe que en una fecha dada un obrero repara una sola máquina.2.7.6.- En una empresa de la industria mecánica se fabrican distintos tipos de piezas. Para cada una se conoce su código que la identifica, descripción y peso unitario. Sobre cada pieza se realizan distintas operaciones(corte, fresado, etc.) en una fecha determinada; constituyendo éste, el proceso de fabricación, del que se conoce su código y la descripción. Acerca de las operaciones se conoce su código y nombre. Una operación se aplica a diferentes piezas; además en un proceso de fabricación una pieza pasa por diferentes equipos que pueden realizar diferentes operaciones sobre diferentes piezas y una operación puede ser realizada en diferentes equipos. De cada
  33. 33. equipo se conoce su nombre, modelo y país de procedencia. Una operación realizada sobre una pieza en un equipo dado constituye una norma que se identifica por un código y tiene asociados una descripción y un tiempo de ejecución. En la empresa trabajan obreros de dos tipos distintos: directos y auxiliares. Un obrero directo trabaja con el cumplimiento de diferentes normas y una norma puede ser aplicada a distintos obreros directos. Un obrero directo cumple una norma dada en un determinado porciento. Un obrero auxiliar realiza el mantenimiento de diferentes equipos y un equipo dado siempre es atendido por un mismo obrero auxiliar. Para cada equipo atendido por un obrero auxiliar dado se conoce el tipo de mantenimiento efectuado y la última fecha en que se realizó. Todos los obreros de la fábrica están caracterizados por un número, su nombre, calificación laboral y categoría ocupacional (directo o auxiliar)2.7.7.- El Instituto de Aeronáutica Civil de Cuba cuenta con información sobre las diferentes compañías de aviación que existen en el mundo. De cada compañía se conoce su nombre (Cubana, Interflug, etc.), su volumen anual de ventas y un código que la identifica. Cada compañía puede estar representada en diferentes países y en un país estar representadas diversas compañías. De cada país se conoce su código, nombre, idioma y moneda También se sabe que por vía aérea se realizan diferentes viajes. Cada viaje posee un código, un lugar de origen, un destino y una cantidad de kilómetros a recorrer. Además, se conocen que existen distintos tipos de aviones. Cada tipo de avión se identifica por un nombre (IL-62, DC-10, etc.) y posee un consumo de gasolina por kilómetro y una cierta cantidad de asientos. Un mismo viaje puede ser realizado por distintos tipos de aviones y un tipo de avión puede ser utilizado en diversos viajes. Un viaje realizado por un tipo de avión constituye un vuelo y para cada vuelo se conoce su número y tiempo de duración. Una compañía de aviación realiza muchos vuelos y un vuelo puede ser cubierto sólo por una compañía, para cada vuelo que ofrece una compañía se conoce el precio del pasaje.2.7.8.- El Instituto de Aeronáutica Civil de Cuba cuenta con información sobre las diferentes compañías de aviación que existen en el mundo. De cada compañía se conoce su nombre (Cubana, Interflug, etc.), su volumen anual de ventas y un código que la identifica. Cada compañía puede estar representada en diferentes países y en un país estar representadas diversas compañías. De cada país se conoce su código, nombre, idioma y moneda También se sabe que por vía aérea se realizan diferentes viajes. Cada viaje posee un código, un lugar de origen, un destino y una cantidad de kilómetros a recorrer. Además, se conocen que existen distintos tipos de aviones. Cada tipo de avión se identifica por un nombre (IL-62, DC-10, etc.) y posee un consumo de gasolina por kilómetro y una cierta cantidad de asientos. Un mismo viaje puede ser realizado por distintos tipos de aviones y un tipo de avión puede ser utilizado en diversos viajes.
  34. 34. Un viaje realizado por un tipo de avión constituye un vuelo y para cada vuelo se conoce su número y tiempo de duración. Los trabajadores del Instituto se clasifican en dos tipos distintos: internos y externos. Un trabajador Interno controla varios vuelos y un vuelo puede ser controlado por distintos trabajadores Internos. Un trabajador Interno controla un vuelo dado en un determinado porciento. Un trabajador externo realiza la auditoria en varias compañías y una compañía dada siempre es atendida por un mismo trabajador externo, siempre y cuando sea auditada. Para cada compañía atendida por un trabajador externo dado se conoce el tipo de auditoria efectuada y la fecha en que se realizó. Todos los trabajadores del Instituto están caracterizados por un número y su nombre. Una compañía de aviación realiza muchos vuelos y un vuelo puede ser cubierto sólo por una compañía, para cada vuelo que ofrece una compañía se conoce el precio del pasaje.2.7.9.- En la Empresa Cubana de Aviación se desea diseñar una base de datos relacional para el control de los vuelos nacionales desde la cuidad de la Habana. Cada vuelo se identifica con un número y de él se conoce además su aeropuerto de destino, hora de salida, tiempo de duración, tripulación que lo realiza y tipo de avión. Cada aeropuerto posee un código que lo identifica y de él se conoce también su nombre, ciudad de ubicación y características técnicas de la pista. De cada tipo de avión se tiene su nombre, que lo identifica, consumo de combustible, altura máxima de vuelo y cantidad de pasajeros. De cada tripulación se conoce el código que la identifica, el nombre del piloto, el nombre del copiloto y el del sobrecargo. Un mismo vuelo puede salir en varios días diferentes de la semana y en un mismo día salen muchos vuelos. Un vuelo siempre es conducido por la misma tripulación, aunque una tripulación puede conducir varios vuelos. Sin embargo, se sabe que en un día de la semana dado, una misma tripulación siempre conduce el mismo vuelo.2.7.10.- En un organismo se desea llevar el control del movimiento mercantil. En el organismo existen mercancías de las que se conoce su código, nombre y unidad de medida. Las mercancías proceden de diferentes países de los que se conoce su código, nombre y el tipo de moneda. Para la transportación de las mercancías existen diversas formas, cada una de las cuales se caracteriza por su tipo y una tarifa. De un país se importan varias mercancías y una mercancía puede venir de varios países. Para cada mercancía importada de un país existen diferentes formas de transportación y una forma de transportación puede serlo a su vez de diferentes mercancías de diferentes países. Una mercancía procedente de un país y transportada de una forma dada constituye un embarque y para este se conoce su número y la fecha de arribo. Un embarque se distribuye entre diferentes almacenes y en un almacén se tienen diferentes embarques, cada uno con cierta cantidad. De cada almacén se tiene su código, dirección y capacidad de almacenamiento. Un almacén distribuye productos
  35. 35. a diferentes empresas y cada empresa recibe productos solamente de un almacén. Una empresa se caracteriza por su número, nombre y rama económica.Las empresas pueden establecer relaciones solamente con un almacén. A su vez las empresaspueden establecer relaciones comerciales con algunas unidades de ventas en caso que lastenga. De cada unidad se conoce su dirección, nombre del gerente y capacidad de venta.

×