Unidad II Diseño Conceptual de una Base de Datos:

Slides:



Advertisements
Presentaciones similares
IBD Plan 90 y 2003 Clase 11.
Advertisements

IBD Clase 13.
Unidad II Modelo Entidad-Relación
Fundamentos de Bases de Datos
Entidad Cosa u objeto real (una persona) o abstracto (un préstamo) de interés en el mundo real (una organización). Es distinguible de todos los demás objetos.
Modelo Entidad Relación
Rocío Contreras Águila Primer Semestre 2010
Modelo entidad-relación
Diseño lógico: la transformación del modelo Entidad Relación (MER) al modelo relacional Ing. Sonia Godoy Hortua.
Tomado de:
Modelo Entidad-Relación
Bases de Datos Modelo Relacional.
Maestría en Bioinformática Bases de Datos y Sistemas de Información Diseño Conceptual Ing. Alfonso Vicente, PMP
Elementos para Interpretar el Modelo Conceptual de Datos
MODELO RELACIONAL.
Entidad Relación Doc. Ing. Marleny Soria Medina
2.1Definición de un modelo de datos
¿QUÉ SON LAS BASES DE DATOS?
Curso de Diseño y Construcción de Productos de Software CLASE 2
Maestría en Bioinformática Bases de Datos y Sistemas de Información Del MER al MR Ing. Alfonso Vicente, PMP
B ASES DE DATOS 1 Teórico: Diseño Conceptual. M ODELADO C ONCEPTUAL Primera etapa en el diseño de una BD Sub-etapas: Estudio del problema real Especificación.
Base de Datos II Modelo Relacional.
MODELO RELACIONAL.
MODELO ENTIDAD RELACIÓN
Modelo Entidad Relación E-R
DIAGRAMAS ENTIDAD RELACIÓN
Base de Datos Relacional.
Modelo Relacional Base de Datos I.
INTEGRANTES AYALA EDISSON CHACON ANDREA CRUZ IVAN GOMEZ MAICOL

BASE DE DATOS I Clase # 1.
Diseño de Bases de Datos
Sistemas de Bases de Datos I
Viviana Poblete López Módulo: Modelo de Datos
Bases de Datos Modelamiento.
Métrica v2.1 Técnicas: Modelado de datos (Parte 2)
MODELADO DE DATOS (PARTE 2) Viviana Poblete L. Modelo de Datos I.
Bases de datos relacionales
Diseño de una Base de Datos
DISEÑO DE BASES DE DATOS
DIAGRAMAS ENTIDAD RELACIÓN
BASES DE DATOS Entidad-Relación
Modelos de Datos.
APLICACIÓN DE NUEVAS TECNOLOGÍAS EN LA CONSERVACIÓN Y ANÁLISIS DEL PATRIMONIO CULTURAL Pensar Relacionalmente: Bases de Datos Relacionales (una visión.
PASO DEL ESQUEMA E-R AL MODELO RELACIONAL
Modelo Entidad Relación
Introducción a UML DIAGRAMA DE CLASES Departamento de Informática
Bases de Datos.
UNIVERSIDAD LATINA BASES DE DATOS DISEÑO DE BASES DE DATOS (modelos para el diseño)
TEMA 9: DIAGRAMA DE CLASE EN UML
Métrica v2.1 Técnicas: Modelado de datos (Parte 1)
Clasificación de Diagramas
Diagramas.
Ingeniería de Requisitos
Modelo Entidad Relación
DIAGRAMA DE CLASES.
El Modelo de Datos Entidad-Relación (E/R)
3. Modelo de datos Prof: Lcdo. Luis Peña.
UNIDAD 2 Modelo Entidad-Relación
Base de Datos.
Teórico: Pasaje del MER al MR
Acceso a Datos Erick López Ovando Licenciado en Informática.
MODELO LOGICO BASE DE DATOS
DISEÑO DE BASES DE DATOS (modelos para el diseño)
M ODELO DE DATOS DE ENTIDAD - VÍNCULO El modelo de entidad-vínculo es un modelo de datos conceptual de uso muy extendido. Este modelo, y sus variantes,
Sistemas de Información I
Fundamentos de Ingeniería de Software
Tema 2: Diseño de Bases de Datos relacionales
Modelo entidad-relación extendido EER L.I. José de Jesús Eduardo Barrientos Avalos.
Modelos Entidad – Relación (E-R). El modelo entidad-relación Los MD soportados por los SGBD no suelen ofrecer, dado su bajo nivel de abstracción, los.
Transcripción de la presentación:

Unidad II Diseño Conceptual de una Base de Datos: Modelo Entidad/Relación Extendido (Elmasri-Korth)

Proceso de Construcción de una base de datos Minimundo Especificación de Requerimientos OBTENCION Y ANALISIS DE REQUERIMIENTOS ANALISIS FUNCIONAL DISEÑO CONCEPTUAL Modelo Entidad Relación Extendido Diagrama ERE Independiente del SGBD Especificación tablas “lógicas”: atributos, claves primarias, foráneas DISEÑO LOGICO Específico para cada SGBD Implementación tablas “físicas”: clustering, indices, hashing, etc IMPLEMENTACION DE LA APLICACIÓN DISEÑO FISICO

Diseño Conceptual: Modelo Entidad/Relación Extendido Modelar una base de datos utilizando el enfoque Entidad/Relación Extendido Mapear el diagrama obtenido (DER) al modelo relacional

Modelo Entidad / Relación Extendido Permite percibir del mundo a través de 2 tipos de objetos básicos relaciones o vinculaciones entidades

Modelo Entidad / Relación Extendido: Entidades objeto que existe y es distinguible entre otros objetos concreta abstracta conjunto de atributos

Modelo Entidad / Relación Extendido: Entidades Entidad Persona Juan Av. Libertador 1112 Oeste 25 años Soltero

Modelo Entidad / Relación Extendido: Atributos Tipos de Atributos Simples - Compuestos Almacenados - Derivados Monovaluados – Multivaluados

Modelo Entidad / Relación Extendido: Atributos Simbología Simples - Monovaluados Multivaluados Compuestos Derivados

Conjunto de Entidades Modelo Entidad / Relación Extendido: Entidades conjunto de entidades del mismo tipo disjuntos no disjuntos

Modelo Entidad / Relación Extendido: Entidades Conjuntos de entidades no disjuntos Alumnos Docentes Germán Joaquín Ana Lorena Ana Carlos Paula Abel Mariano Analía Alejandra Guadalupe Mariano Carlos Susana

Modelo Entidad / Relación Extendido: Entidades Conjuntos de entidades disjuntos Hombres Mujeres Lorena Germán Ana Miguel Guadalupe Mariano Paula Joaquín Alejandra Carlos Analía Abel Susana

Modelo Entidad / Relación Extendido: Entidades Simbología edad fecha_nac telefonos dir nombre dni Persona

Modelo Entidad / Relación Extendido: Claves primarias (entidades) Toda entidad posee un atributo o conjunto de atributos que la identifican unívocamente Clave simple Clave compuesta

Modelo Entidad / Relación Extendido: Claves primarias (entidades) Representación: edad fecha_nac telefonos dir nombre dni Persona

Relación Asociación o Vinculación entre entidades Modelo Entidad / Relación Extendido: Relaciones o Vinculaciones Relación Asociación o Vinculación entre entidades Médico atiende a paciente Profesor dicta curso

Modelo Entidad / Relación Extendido: Relaciones o Vinculaciones Formalmente, es una relación matemática de n conjuntos de entidades (n>1): Sean E1, E2, ..., En conjunto de entidades, entonces R formada por {(e1, e2, ...,en)/ e1  E1, e2  E2, en  En} es una relación Nota: Los Ei no son necesariamente distintos. Ejemplos: Materia es correlativa Materia Empleado es jefe de Empleado

Conjunto de Relaciones Modelo Entidad / Relación Extendido: Relaciones o Vinculaciones conjunto de relaciones o vinculaciones del mismo tipo Conjunto de Relaciones

Modelo Entidad / Relación Extendido: Relaciones o Vinculaciones estado_civil dir duracion edad nombre nombre codigo dni Persona dicta Curso importeTotal tel fecha nombre nroFactura nroCliente Persona posee Factura

Modelo Entidad / Relación Extendido: Relaciones o Vinculaciones estado_civil dir duracion edad nombre nombre codigo dni Persona dicta Curso editorial nombre isbn Libro

Modelo Entidad / Relación Extendido: Multiplicidad Relaciones Binarias Multiplicidad / Cardinalidad 1 - 1 importeTotal fechaEntrega fecha nroRemito nroFactura Factura Remito tieneAsociada

Modelo Entidad / Relación Extendido: Multiplicidad Relaciones Binarias Multiplicidad / Cardinalidad 1 - n importeTotal fechaEntrega fecha nroRemito nroFactura Factura Remito tieneAsociada

Modelo Entidad / Relación Extendido: Multiplicidad Relaciones Binarias Multiplicidad / Cardinalidad n - 1 importeTotal fechaEntrega fecha nroRemito nroFactura Factura Remito tieneAsociada

Modelo Entidad / Relación Extendido: Multiplicidad Relaciones Binarias Multiplicidad / Cardinalidad n - m importeTotal fechaEntrega fecha nroRemito nroFactura Factura Remito tieneAsociada

Ejemplos de entidades con sus atributos? Modelo Entidad / Relación Extendido: Atributos - entidades - relaciones Atributos Ejemplos de entidades con sus atributos? Ejemplos de relaciones con atributos?

¿Podríamos confundir un atributo con una entidad? Modelo Entidad / Relación Extendido: Atributos vs Entidades ¿Podríamos confundir un atributo con una entidad? Supongamos que debemos representar entidades Persona, específicamente su dni, nombre, dirección, y la localidad correspondiente: Podríamos pensar en dos soluciones:

Modelo Entidad / Relación Extendido: Atributos vs Entidades 1) Considerar localidad como un atributo: localidad nombre dni Persona

Modelo Entidad / Relación Extendido: Atributos vs Entidades 2) Considerar localidad como una entidad: nombre nombre dni Codigo_postal Persona Localidad habita

Modelo Entidad / Relación Extendido: Atributos vs Entidades ¿Cuál es la principal diferencia entre las dos representaciones presentadas? En el caso 1 cada localidad no tiene atributos propios En el caso 2 cada localidad podría tener atributos propios

? Modelo Entidad / Relación Extendido: Atributos vs Entidades Entonces, ¿qué constituye un atributo y qué un conjunto de entidades? Realidad que modele Depende Semántica asociada ?

Modelo Entidad / Relación Extendido Hasta el momento hemos definido los conceptos propios del Modelo Entidad/Relación Otros conceptos incorporados Entidades Débiles Agregación Generalización-Especialización

Modelo Entidad / Relación Extendido: Entidades fuertes y débiles Una entidad es débil cuando sus atributos no son suficientes para poder identificarla unívocamente clave de entidad fuerte de la cual depende + discriminador de la entidad débil (distingue las entidades débiles que dependen de dicha entidad fuerte) clave entidad débil

Modelo Entidad / Relación Extendido: Entidades fuertes y débiles ciudad telefono tipo direccion piso nombre nroHab cuit Hotel posee Habitación Clave Hotel = cuit Clave Habitación = cuit + nroHab

y es una entidad dominante x es una entidad subordinada Modelo Entidad / Relación Extendido: Entidades: Dependencias de existencias Si la existencia de la entidad x depende de la existencia de la entidad y y es una entidad dominante x es una entidad subordinada si se suprime y se suprime x operativamente

Modelo Entidad / Relación Extendido: Entidades: Dependencias de existencias Toda entidad débil tiene dependencia de existencia sobre la entidad fuerte relacionada Una entidad débil, además de estar relacionada con la entidad fuerte de la que depende, puede estar relacionada con otra entidad

Modelo Entidad / Relación Extendido: Entidades fuertes y débiles ciudad telefono tipo direccion piso nombre nroHab cuit Hotel posee Habitación ocupa Persona

La agregación considera una relación como una entidad Modelo Entidad / Relación Extendido: Agregación La agregación considera una relación como una entidad Permite vincular relaciones

Modelo Entidad / Relación Extendido: Agregación laboratorio descripción nombre Medicamento Presentación tiene posee nombre cuit Farmacia

Modelo Entidad / Relación Extendido: Agregación continente nombre nombre Pais Ciudad tiene posee precio nombre AtraccionTurística

Modelo Entidad / Relación Extendido: Generalización - Especialización marca patente Vehículo cantPuertas pesoMax personasMax Automóvil Camión Colectivo relacionA relacionB

Modelo Entidad / Relación Extendido El Modelo Entidad/Relación Extendido nos permite construir el modelo conceptual de la realidad Reglas de transformación Base para el modelo lógico Base para el modelo físico

Ejercicio Una empresa que posee sucursales en diferentes ciudades del país, necesita generar una pequeña base de datos que mantenga información de los empleados que trabajan en ella. En cuanto a las sucursales, se necesita registrar número, nombre, teléfonos y ciudad donde se ubica. De los empleados, DNI, nombre, fecha de nacimiento, trabajo que desempeña, comisión (en caso de que corresponda), y la sucursal en la que trabaja. Además es necesario conocer el gerente de cada sucursal (es un empleado más).

Diseño Lógico Conversión del Modelo ERE a tablas

Entidades Cada entidad del esquema conceptual se transforma en una tabla base. Atributos: Los atributos (simples) de la entidad se convierten en los atributos de la tabla. Cada componente de un atributo compuesto se convierte en un atributo de la tabla. Clave: La clave primaria de la tabla es la identificada para la entidad.

Entidades Los atributos multivaluados generan una tabla adicional. El atributo multivaluado La clave de la entidad Clave: La clave de esta tabla será (en general) la unión de ambos atributos

Entidades vinculadas con una Relación Generalización - Especialización Se pueden implementar alguna de las siguientes opciones, según corresponda: Una tabla por cada entidad (superclase y subclases): Sirve para cualquier tipo de jerarquía. Una tabla por cada subclase: Sólo sirve para jerarquías totales y exclusivas. Integrar todas las entidades en una tabla: Genera Nulos Se debe agregar un atributo que indique el tipo de entidad. Relacion exclusiva y total: se puede implementar las tablas de las 2 subclases. Relacion no exclusiva y total: si implementaramos solo las 2 subclases, tendriamos redundancia. Relacion exclusiva y no total: si implementaramos solo las 2 subclases, no podriamos incluir las instancias de los que no son ninguna de las subclase vehiculo auto camion persona docente alumno

Entidades vinculadas con una Relación Generalización - Especialización Opción 1: Es la mas general. Sirve para cualquier tipo de jerarquía. Tabla de la superclase: La tabla contendra todas las instancias. Atributos: Todos los atributos de la superclase Clave: El atributo clave de la superclase Tablas de cada subclase: Cada tabla contendra solo las instancias de la subclase correspondiente. Todos los atributos de la subclase Relacion exclusiva y total: se puede implementar las tablas de las 2 subclases. Relacion no exclusiva y total: si implementaramos solo las 2 subclases, tendriamos redundancia. Relacion exclusiva y no total: si implementaramos solo las 2 subclases, no podriamos incluir las instancias de los que no son ninguna de las subclase vehiculo auto camion persona docente alumno

Entidades vinculadas con una Relación Generalización - Especialización Opción 2: Sólo sirve para jerarquías totales y exclusivas. Una tabla por cada subclase: Cada tabla contendra las instancias de la subclase correspondiente. Atributos: Todos los atributos de la superclase Todos los atributos de la subclase Clave: El atributo clave de la superclase Relacion exclusiva y total: se puede implementar las tablas de las 2 subclases. Relacion no exclusiva y total: si implementaramos solo las 2 subclases, tendriamos redundancia. Relacion exclusiva y no total: si implementaramos solo las 2 subclases, no podriamos incluir las instancias de los que no son ninguna de las subclase vehiculo auto camion persona docente alumno

Entidades vinculadas con una Relación Generalización - Especialización Opción 3: Integrar todas las entidades en una tabla: La tabla contendrá las todas las instancias Atributos: Todos los atributos de la superclase Todos los atributos de la subclase Un atributo que indique el tipo correspondiente a la subclase a la que pertenece Clave: El atributo clave de la superclase OBSERVACIONES: Genera Nulos Se debe agregar un atributo que indique el tipo de entidad. Relacion exclusiva y total: se puede implementar las tablas de las 2 subclases. Relacion no exclusiva y total: si implementaramos solo las 2 subclases, tendriamos redundancia. Relacion exclusiva y no total: si implementaramos solo las 2 subclases, no podriamos incluir las instancias de los que no son ninguna de las subclase vehiculo auto camion persona docente alumno

Entidades Debiles Al igual que una entidad (fuerte) se transforma en una tabla base. Atributos: Los atributos (simples) de la entidad se convierten en los atributos de la tabla. Se agrega como atributo, la clave de la entidad fuerte a la que esta vinculada Clave: La clave primaria de la entidad fuerte a la que se vincula + La clave primaria de la tabla correspondiente a la entidad debil (discriminador)

Relaciones o Vinculaciones Relaciones binarias 1-n No generan tabla A la tabla correspondiente a la entidad del lado n de la vinculación, se le agrega la clave de la entidad del lado 1 de la relación. Si la relación tiene atributos, esos atributos se colocaran en la tabla a la que se le agrego la clave.

Relaciones o Vinculaciones Relaciones binarias 1- 1 No generan tabla Se agrega el atributo clave en alguna de las dos tablas de las entidades vinculadas Si tiene atributos, se coloca en la tabla a la que se le agrego la clave NOTA: Las 2 entidades vinculadas podría reunirlas en una sola tabla .

Relaciones o Vinculaciones Relaciones binarias m-n Generan tabla La tabla contendrá las claves de las entidades vinculadas, mas los atributos propios (si los tuviera): Atributos: Las claves de las entidades vinculadas Los atributos propios de la relacion, si los tuviera Clave: En caso de no tener atributos propios: La unión de las dos claves de las entidades vinculadas En caso de tener atributos propios: Idem anterior, pero además puede necesitar agregar algun/nos de los atributos de la relación

Agregación La relacion m-n agregada genera tabla tal como se menciono en el caso de cualquier relacion m-n La relacion vinculada a la agregacion se implementa según corresponda al tipo de vinculacion (1-1, 1-n, m-n). Tener cuidado con la clave!!! Justamente en el caso de tener atributos que formen parte de la clave en la agregacion

Diseño Logico Estas reglas de conversión son generales Debieran ser aplicadas con criterio critico a la luz de las consultas y la evolución probable de la realidad que se esta modelando.

Diseño Fisico Este debe realizarse en base a las formas de almacenamiento y técnicas de acceso provistas por el motor especifico en el que se implementara la base de datos (como muestra el grafico) Por ello, no se describe en forma especifica en la materia. En la unidad del Nivel Interno se ven en forma general algunos aspectos generales que debieran tenerse en cuenta en esta etapa de la construcción de una base de datos.

Diseño Conceptual y Logico Minimundo Especificación de Requerimientos OBTENCION Y ANALISIS DE REQUERIMIENTOS ANALISIS FUNCIONAL DISEÑO CONCEPTUAL Modelo Entidad Relación Extendido Diagrama ERE Independiente del SGBD Especificación tablas “lógicas”: atributos, claves primarias, foráneas DISEÑO LOGICO Específico para cada SGBD Implementación tablas “físicas”: clustering, indices, hashing, etc IMPLEMENTACION DE LA APLICACIÓN DISEÑO FISICO

Proceso de Construcción de una base de datos FIN