Download bases de datos - Cátedras Facultad de Ciencias Exactas y
Document related concepts
no text concepts found
Transcript
Cátedra de Bases de Datos Facultad de Ciencias Exactas y Tecnología Universidad Nacional de Tucumán Ciclo Lectivo 2016 BASES DE DATOS Cronograma 23-ago Martes Modelos de BD. Modelo ER. Objetos, clasificación y asociación. Ejerc. U2 23-ago Martes Hash. Abstracción. Ejercit DIA TP1TP2 25-ago Jueves TP 2 TP2 Bases de Datos Mg. Ing. Gustavo E. Juárez BASES DE DATOS rograma Analítico de la Materia Unidad 2: Visión general del proceso de Diseño. Modelo Entidad Relación. Definición. Características. Elementos: Entidades, atributos, identificadores y relaciones. Entidades débiles y fuertes. Construcción del Modelo de datos. Bases de Datos Mg. Ing. Gustavo E. Juárez BASES DE DATOS “The Entity-Relationalship Model – Towards a Unified view of data” (ACM Transactions of Database Systems, Enero de 1976, pp 9-36). Bases de Datos Mg. Ing. Gustavo E. Juárez BASES DE DATOS Modelo Entidad- Relación. Características Este Modelo permite al diseñador concebir la Base de Datos a un nivel superior de Abstracción, sin tener que considerar el hardware ni a los Usuarios. Se centra en un plano Infológico. Es un Modelo que se apoya en dos conceptos: Entidad y Relación, entendiéndose por Entidad a “una cosa que se puede identificar claramente” y a la Relación como “una vinculación entre entidades”. Bases de Datos Mg. Ing. Gustavo E. Juárez BASES DE DATOS ENTIDADES Definición “Una Entidad es algo que puede identificar en el ambiente de trabajo de los usuarios” Ejemplo: EMPLEADO = ‘María de los Ángeles Rivero” PRODUCTO = A123Z654 La entidades de determinado tipo se agrupan en clases de entidades. Así la clase de entidad EMPLEADO es un conjunto de todas las entidades EMPLEADOS, y deben ser nomenclados en letras mayúsculas y por lo general en singular. Bases de Datos Mg. Ing. Gustavo E. Juárez BASES DE DATOS Entidades – Clases e instancias de Entidades Es importante Por lo general existen muchos muchas instancias de entidad dentro de una clase de entidad. Por ejemplo dentro de la clase CLIENTE, existen muchas instancias, una para cada cliente representado en la Base de Datos. Definición de Clase de Entidad “Una Classe de entidad es un conjunto de entidades y se describe mediante la estructura de las entidades en esa clase” Bases de Datos CLIENTE Esta Entidad Contiene: NumerodeCliente NombredelCliente Direccion Ciudad Provincia CodigoPostal NombredelContacto NumeroTelefonico Definición de Instancia de Entidad “Una Instancia de entidad es la representacion de una entidades Dos instancias de CLIENTE 12345 Fabrica AJAX Calle Moreno 123 Alderetes TUC 4005 Carlos López 424-1899 en particular” 67890 Fabrica PACARA Calle Lavalle 971 Lastenia TUC 4111 Cesar Castro 434-1922 Mg. Ing. Gustavo E. Juárez BASES DE DATOS Identificadores Definición: “Las instancias de entidad tienen Identificadores, los cuales son atributos que nombran o identifican las instancias de una entidad de manera univoca”. Ejemplo: Dominio EMPLEADO COLOR Bases de Datos Valores Juan, Diego, Ulises, Carlos Rojo, Azul, Amarillo Mg. Ing. Gustavo E. Juárez BASES DE DATOS Relaciones Definición: “Una relación es la asociación entre las clases de entidad, y las instancias de relaciones son asociaciones entre instancias de entidad”. Ejemplo: VEND-PEDIDO es una relación entre VENDEDOR y PEDIDO PADRES es una relación entre MADRE y PADRE, e HIJO. Una clase de relación puede involucrar muchas clases de entidades. El numero de clases que está en la relación es el Grado de la misma. Bases de Datos Mg. Ing. Gustavo E. Juárez BASES DE DATOS Grado de las Relaciones Las relaciones son generalmente binarias, dado que asocian a dos entidades. Puede involucrar muchas clases de entidades. El numero de clases que está en la relación es el Grado de la misma. Relación de Grado 2 VENDEDOR Relación de Grado 3 MADRE Relación de Grado N PADRE PADRES VEND-PEDIDO PEDIDO Bases de Datos HIJO Mg. Ing. Gustavo E. Juárez BASES DE DATOS Tipos de Relaciones Binarias Las relaciones binarias poseen instancias a ambos lados de la misma, la cual puede ser tipificada de la siguiente manera: (1 : 1) o (Uno a Uno), en donde una instancia de entidad de un tipo se relaciona con una instancia de una sola entidad de otro tipo. Por ejemplo la relación Asignacion_Auto asocia a un único empleado con un único auto. AUTO Bases de Datos Mg. Ing. Gustavo E. Juárez BASES DE DATOS Tipos de Relaciones Binarias (1 : N) o (Uno a Muchos), en donde una instancia de entidad de un tipo se relaciona con otras instancias de una sola entidad de otro tipo. Por ejemplo en la relación DORM_OCUPANTE una sola instancia de DORMITORIO relaciona a muchas instancias de ESTUDIANTE. Bases de Datos Mg. Ing. Gustavo E. Juárez BASES DE DATOS TIPOS DE RELACIONES BINARIAS (N : M) o (Muchos a Muchos), en donde las instancia de una entidad se relacionan con las instancias de otra entidad. Por ejemplo en la relación ESTUDIANTE_CLUB varias instancias de ESTUDIANTE relacionan con muchas instancias de CLUB. Bases de Datos Mg. Ing. Gustavo E. Juárez se BASES DE DATOS TIPOS DE RELACIONES BINARIAS. Cuando el nombre de la relación se coloca dentro del rombo, es necesario que la cardinalidad de la relación se documente de forma grafica, utilizando para ello las “patas de gallo” en el extremo de la línea de relación, y que simbolizan “muchas” instancias de ese lado de la misma. Bases de Datos Mg. Ing. Gustavo E. Juárez BASES DE DATOS TIPOS DE RELACIONES BINARIAS. CARDINALIDAD La Cardinalidad Mínima de una relación es una estrategia hasta ahora no abordada, mediante la cual es posible declarar rangos de valores admitidos a ambos lados de la relación. Para esto utilizaremos dos símbolos sobre la línea de relación, y en donde el ovalo implicara que el mínimo de relaciones será de 0, y una línea interceptando la de relación, la cual indicara que el mínimo de relaciones será de 1. una Cardinalidad mínima de 1 y Asi vemos que un ESTUDIANTE tiene una máxima de 1. En cambio CLUB tiene una Cardinalidad mínima de 0 y una máxima de N. Bases de Datos Mg. Ing. Gustavo E. Juárez BASES DE DATOS ATRIBUTOS DE UNA RELACION En algunas relaciones los atributos se grafican como óvalos conectados a las entidades a las que describen, los cuales contienen los nombres de los atributos de la relación nomenclados con mayúsculas y minúsculas. Cuando las entidades tienen muchos atributos se vuelve compleja la grafica, por lo que en esas circunstancias se puede enumerar los mismos en forma de tabla separados del modelo. Bases de Datos Mg. Ing. Gustavo E. Juárez BASES DE DATOS Entidades Débiles Definición: “El modelo Entidad Relación define un tipo especial de Entidad denominada Débil, la cual no puede existir en la Base de Datos a menos que también exista otra denominada Entidad Fuerte, a la cual le debe su existencia”. Bases de Datos Mg. Ing. Gustavo E. Juárez BASES DE DATOS RELACIONES TIPO ROL Es el papel o función que desempeña una tipo de entidad en una interrelación tipo. Los roles suelen ser implícitos (no siempre se especifican en el ERD), pero pueden ser útil distinguirlos si se necesita aclarar el significado de una interrelación. Un caso típico en que se necesita precisar el rol de cada tipo de entidad participante es cuando existe una interrelación reflexiva (un tipo de entidad asociado consigo mismo); Ejemplo: el tipo de interrelación forma_pareja, en el cual participan (opcionalmente) dos instancias el tipo de entidad persona; cada elemento del conjunto de interrelaciones forma_pareja es del tipo p {p1, p2} siendo pi instancias de tipo persona. Cada persona, si está casada, tendrá un rol pi (en este caso esposo-1 o Bases de Datos Mg. Ing. Gustavo E. Juárez esposo-2 o convencionalmente marido y/o mujer). BASES DE DATOS Relaciones de Tipo Rol Debe distinguirse entre grado de la interrelación (en este caso 1:1 que indica el máximo de ocurrencias o instancias que pueden entrar en correspondencia) y cardinalidad del rol (0:1 en ambos casos). El cardinalidad del rol se define mediante el rango (min:MAX), entendiéndose el mínimo de instancias de ese rol y el máximo. en dicha interrelación. Bases de Datos Mg. Ing. Gustavo E. Juárez BASES DE DATOS Ejercitacion Bases de Datos Mg. Ing. Gustavo E. Juárez BASES DE DATOS Ejemplo completo Entidad-Relación Descripción del problema. Estamos encargados de desarrollar un sistema basado en una DB para una empresa que de encarga de rentar barcos. Pero la empresa BOAT Co. No posee ningún barco, encargándose de tener una cartera de botes de diferentes dueños para luego alquilarlos a terceros. BOAT Co. Especializa en barcos que pueden ser rentados en base a un fin de semana o períodos mas largos (medido en semanas). El barco mas pequeño en cartera tiene 28 pies y el mas grande 51 pies. Cada barco está completamente equipado en el momento que lo retira el que lo renta. Los elementos son provistos de acuerdo a la siguiente especificación: Propietario: •Todo lo fijo del barco: (radio, compás, indicadores de profundidad y otros instrumentos, heladera, estufas) •No fijo: velas, líneas, anclas, salvavidas, y en la cabina: platos, cubiertos, elementos de cocina, camas, etc BOAT Co: •Equipo consumible: cartas de navegación, comida, tablas de corrientes, cartas de tiempo, elementos de baño como jabón, toallas, etc. Bases de Datos Mg. Ing. Gustavo E. Juárez BASES DE DATOS Ejemplo completo Entidad-Relación Es necesario mantener un inventario del equipamiento del barco. La mayoría de los elementos fijos son fácilmente perdibles o destruidos o consumidos o robados. Los clientes son responsables de todo el equipamiento durante el período de alquiler. BOAT Co. desea mantener un registro seguro de todos sus clientes y de los alquileres, no solamente para marketing sino también para mantener los viajes realizados y los clientes que alquilaron barcos. Algunos itinerarios y condiciones del viento son mas peligrosos que otros y para BOAT Co. es muy importante conocer el grado de experiencia de sus clientes. BOAT Co. no provee personal marinero, pero en casos especiales los clientes solicitan los servicios de tripulación, por lo que la empresa. los mantiene en base a un sistema part – time (tiempo parcial). Los barcos precisan mantenimiento y BOAT Co. está comprometido por contratos con los dueños de mantener los en perfectos condiciones de uso, manteniendo un registro de actividades y costo con esta finalidad (limpieza de motores, cambio de aceite, y reparaciones eventuales). En algunos casos, la reparación es necesaria durante un viaje: en este caso el cliente avisa por radio a BOAT Co., quien determina el sitio mas apropiado para hacer esta reparación (info de cual es la falla, historia de reparaciones anteriores y lugares donde realizarla) Bases de Datos Mg. Ing. Gustavo E. Juárez BASES DE DATOS Ejemplo completo Entidad-Relación Bases de Datos Mg. Ing. Gustavo E. Juárez BASES DE DATOS Ejemplo completo Entidad-Relación BARCO • Numero Barco • Nombre_Barco • Modelo • Tamaño PROPIETARIO • Cuil_Prop • Nombre_Propietario • Domicilio • Numero_Telefono_Propíetario EQUIPO • ID_Equipo • Nombre_Equip • Tipo_Equip • Precio • Propietario_Licencia Bases de Datos ARRENDAMIENTO • Numero_Barco • Fecha_Alqui • ID_Cliente • Periodo_Alquiler(dias) • Fecha_Entrega TRIPULAC_PART_TIME • CUIL_Trip • Numero_Barco • Calificacion REPARACION • Numero_Barco • Fecha_Reparacion • Tipo_Reparacion • Descripcion • Costo CLIENTE • ID_Cliente • Nombre_Cliente • Domicilio_Cliente • Numero_Telefono_Clie ITINERARIO_CLIMA • Numero_Barco • Fecha_Itinen • Origen • Destino • Condiciones_Clima MANTENIMIENTO_ PROGRAMADO • Numero_Barco • Fecha_Manten • Tipo_Manten • Descripcion • Facilidad(Instalación) • Costo Mg. Ing. Gustavo E. Juárez BASES DE DATOS Ejemplo completo Entidad-Relación. Construcción de un Diccionario de Datos NOMBRE DE LA ENTIDAD NOMBRE DEL ATRIBUTO CLAVE / LLAVE TIPO DE CLAVE TIPO DE DATOS LONGITUD DOMINIO DESCRIPCION Bases de Datos Mg. Ing. Gustavo E. Juárez BASES DE DATOS Bibliografía Bases de Datos Mg. Ing. Gustavo E. Juárez BASES DE DATOS Bibliográficas Principal Tecnología y Diseño de Bases de Datos / Mario Piattini , Esperanza Calero, Belen Vela / Edit Alfaomega / 2010 Ed. Pp 95-125 Bases de Datos Procesamiento de bases de datos. fundamentos, diseño e implementación / David M. Kroenke.—(Tra. Ana Elizabeth García Hernández.--Rev. Tca. Juan Raúl Esparza Martínez). Pearson Educación. México /c.2003/8ª. Edic. Mg. Ing. Gustavo E. Juárez BASES DE DATOS Sitio Web de la Cátedra Bases de Datos http://catedras.facet.unt.edu.ar/bd Mg. Ing. Gustavo E. Juárez