MER - ignaciolasalvia

Download Report

Transcript MER - ignaciolasalvia

Sistemas de Bases de Datos I
José Pedro Rabinovich
[email protected]
Diseño Conceptual – Intro.
13/04/2015
Sistemas de Bs. de Ds. I 2do Año
Jose Pedro Rabinovich
1
2
Diseño Conceptual – Intro.

2
Que es la Modelización conceptual


Primer etapa en diseño de una BD.
Sub-etapas:



Resultado:


Esquema Conceptual
Lenguajes usados:

13/04/2015
Estudio del problema real.
Especificación usando un lenguaje de muy alto nivel.
Modelos Conceptuales. Nosotros usaremos el MER
(Modelo Entidad-Relación)
Sistemas de Bs. de Ds. I 2do Año
Jose Pedro Rabinovich
3
Diseño Conceptual – Intro.

3
Que son los modelos conceptuales?




13/04/2015
Modelos de datos de muy alto nivel.
En general se concentran en estructuras.
Tienen una representación gráfica asociada.
Permiten representar el “mundo real” de
forma abstracta.
Sistemas de Bs. de Ds. I 2do Año
Jose Pedro Rabinovich
4
Diseño Conceptual – Intro.
4
Que son los modelos conceptuales?

El E. C. asociado a un problema debe
representar todos los aspectos del mismo.

No debe incluir ningún elemento asociado
a la implementación del esquema, así
como ningún elemento orientado a la
performance de la futura BD.
13/04/2015
Sistemas de Bs. de Ds. I 2do Año
Jose Pedro Rabinovich
5
Diseño Conceptual
Modelo Entidad Relación





1
Modelo Conceptual más usado.
Propuesto por Chen en 1976.
Existe una gran variedad de “dialectos” y
variantes del Modelo Entidad Relación.
Se utiliza fundamentalmente para la
definición de datos.
Se base en representar objetos
(entidades) y relaciones entre ellos.
13/04/2015
Sistemas de Bs. de Ds. I 2do Año
Jose Pedro Rabinovich
6
Diseño Conceptual
Modelo Entidad Relación



2
Permite declarar gran cantidad de
restricciones tanto sobre relaciones como
sobre conjuntos de entidaddes.
Tiene DDL gráfico, no tiene DML.
Conceptos básicos:


13/04/2015
Entidad : objeto de la realidad. (Ej.:
Estudiantes, Cursos, Docentes)
Relación : asociación entre objetos (Ej.:
Cursa, Dicta)
Sistemas de Bs. de Ds. I 2do Año
Jose Pedro Rabinovich
7
Diseño Conceptual
Modelo Entidad Relación
3
Entidad:

Una “cosa” de la realidad. Objeto con existencia
física o conceptual (persona, auto, casa,
compañía, curso, puesto de trabajo).

Se representan gráficamente con un rectángulo,
con el nombre.

Los nombres de entidad no pueden repetirse.
Empleado
13/04/2015
Sistemas de Bs. de Ds. I 2do Año
Jose Pedro Rabinovich
8
Diseño Conceptual
Modelo Entidad Relación
4
Atributos:

Propiedades especificas de las entidades
(las describen).
CI
Empleado
Nombre
eMail
Teléfono
Fecha Nacimiento
Dirección
13/04/2015
Sistemas de Bs. de Ds. I 2do Año
Jose Pedro Rabinovich
9
Diseño Conceptual
Modelo Entidad Relación
5
Tipos de Atributos:

Atributos Compuestos

Se pueden dividir en componentes mas pequeños, que
representan atributos másicos con su propio
significado.
CI
Empleado
Nombre
eMail
Teléfono
Fecha Nacimiento
Dirección
13/04/2015
Sistemas de Bs. de Ds. I 2do Año
Jose Pedro Rabinovich
Calle
Numero
Esquina
10
Diseño Conceptual
Modelo Entidad Relación
6
Tipos de Atributos:

Atributos Monovaluados o Monovalorados

Atributos con un solo valor para una entidad en
particular. Por ej. CI
Atributos Multivaluados o Multivalorados


Atributos que tienen un conjunto de valores Por ej.
Color de auto, teléfono. Los representamos con un
asterizco.
Empleado
CI
*
Teléfono
13/04/2015
Sistemas de Bs. de Ds. I 2do Año
Jose Pedro Rabinovich
11
Diseño Conceptual
Modelo Entidad Relación
7
Atributos Clave de entidad:

Atributo cuyo valor es distinto para cada
elemento de la entidad.

Sirven para identificar de manera única cada
elemento de la entidad.
CI
Empleado
Nombre
eMail
Teléfono
Fecha Nacimiento
Dirección
13/04/2015
Sistemas de Bs. de Ds. I 2do Año
Jose Pedro Rabinovich
12
Diseño Conceptual
Modelo Entidad Relación
8
Dominios de los atributos.




13/04/2015
Conjunto de valores que puede tomar el
atributo.
Especifica que valores es posible asignar a un
atributo.
No se representan en los diagramas ER
Por ejemplo el nombre de empleado es una
cadena de caracteres.
Sistemas de Bs. de Ds. I 2do Año
Jose Pedro Rabinovich
13
Diseño Conceptual
Modelo Entidad Relación
9
Relaciones

Una relación define un conjunto de asociaciones
entre entidades.

Se representan gráficamente con un rombo con
el nombre.

Cada relación tiene un nombre que la describe.

Cada ejemplar de vínculo de una relación R es
una asociación de entidades, donde la asociación
incluye una y solo una entidad de cada tipo de
entidades participante.
13/04/2015
Sistemas de Bs. de Ds. I 2do Año
Jose Pedro Rabinovich
14
Diseño Conceptual
Modelo Entidad Relación
10
Relaciones

Por ejemplo: Los empleados pertenecen a
departamentos.
Empleado
Pertenece_A
CI
Nombre
Fecha nac
Dirección
13/04/2015
Departamento
Numero
Nombre
Sistemas de Bs. de Ds. I 2do Año
Jose Pedro Rabinovich
15
Diseño Conceptual
Modelo Entidad Relación
11
Relaciones
Grado de la relación:

Es la cantidad entidades que participan en
la relación.

En el ejemplo anterior el grado es 2.

Llamaremos relaciones binarias a las de
grado 2 y ternarias a las de grado 3. (Por
ahora nos centraremos en las binarias).
13/04/2015
Sistemas de Bs. de Ds. I 2do Año
Jose Pedro Rabinovich
16
Diseño Conceptual
Modelo Entidad Relación
12
Relaciones
Restricciones sobre las relaciones:

Distinguimos 2 tipos principales de
restricciones sobre relaciones:


13/04/2015
Cardinalidad
Participación o totalidad.
Sistemas de Bs. de Ds. I 2do Año
Jose Pedro Rabinovich
17
Diseño Conceptual
Modelo Entidad Relación
13
Relaciones - Restricciones

Cardinalidad 1:N

Especifica el numero de ejemplares de
vínculos en los que puede participar una
entidad en una relación.
Empleado
CI
Nombre
Fecha nac
Dirección
13/04/2015
N
Pertenece_A
1
Departamento
Numero
Nombre
Sistemas de Bs. de Ds. I 2do Año
Jose Pedro Rabinovich
18
Diseño Conceptual
Modelo Entidad Relación
14
Relaciones - Restricciones

Cardinalidad 1:N

En el ejemplo tenemos que:


13/04/2015
Cada departamento puede estar relacionado
con muchos empleados  N
Un empleado solo puede estar relacionado
(pertenecer a) con un departamento  1
Sistemas de Bs. de Ds. I 2do Año
Jose Pedro Rabinovich
19
Diseño Conceptual
Modelo Entidad Relación
15
Relaciones

Papeles o Roles en las relaciones



13/04/2015
Toda entidad que participe en una relación
desempeña un papel específico en la misma.
En el ejemplo, para la relación PERTENECE_A
EMPLEADO desempeña el rol de empleado o
trabajador y DEPARTAMENTO el de patrón.
No son necesarios los roles en las relaciones
en las que todas las entidades son diferentes.
Sistemas de Bs. de Ds. I 2do Año
Jose Pedro Rabinovich
20
Diseño Conceptual
Modelo Entidad Relación
15
Relaciones

Papeles o Roles en las relaciones y autorelaciones.

13/04/2015
Cuando una entidad participa mas de una vez
en una relación desempeñando diferentes
papeles.  Debemos diferenciar los roles.
Sistemas de Bs. de Ds. I 2do Año
Jose Pedro Rabinovich
21
Diseño Conceptual
Modelo Entidad Relación
16
Relaciones

Auto-relaciones (o relaciones recursivas)
Empleado
1
N
CI
Nombre
Fecha nac
13/04/2015
Jefe
Supervisión
Supervisado
Sistemas de Bs. de Ds. I 2do Año
Jose Pedro Rabinovich
22
Diseño Conceptual
Modelo Entidad Relación
17
Relaciones

Restricción de cardinalidad 1:1
Empleado
1
Dirige
1
CI
Nombre
Fecha nac
13/04/2015
Departamento
Numero
Nombre
Sistemas de Bs. de Ds. I 2do Año
Jose Pedro Rabinovich
23
Diseño Conceptual
Modelo Entidad Relación
18
Relaciones

Restricción de cardinalidad N:M
Empleado
N
Trabaja_en
M
CI
Nombre
Fecha nac
13/04/2015
Proyecto
Numero
Nombre
Sistemas de Bs. de Ds. I 2do Año
Jose Pedro Rabinovich
24
Diseño Conceptual
Modelo Entidad Relación
19
Relaciones - Restricciones

Participación o Totalidad

Especifica si la existencia de un ejemplar de
entidad depende de que esté relacionada con
otra entidad a través de la relación
Empleado
CI
Nombre
Fecha nac
Dirección
13/04/2015
N
Pertenece_A
1
Departamento
Numero
Nombre
Sistemas de Bs. de Ds. I 2do Año
Jose Pedro Rabinovich
25
Diseño Conceptual
Modelo Entidad Relación
20
Relaciones - Restricciones

Participación o Totalidad



13/04/2015
En el ejemplo estamos representando en
hecho de que todo empleado debe
pertenecer a un departamento.
Se dice que la participación de empleado es
TOTAL.
A veces recibe el nombre de “dependencia de
existencia”.
Sistemas de Bs. de Ds. I 2do Año
Jose Pedro Rabinovich
26
Diseño Conceptual
Modelo Entidad Relación
21
Relaciones
Atributos de Relaciones

¿Como represento la cantidad de horas
que un empleado dedica a un proyecto?
Empleado
N
Trabaja_en
M
CI
Nombre
Fecha nac
13/04/2015
Proyecto
Numero
Nombre
Sistemas de Bs. de Ds. I 2do Año
Jose Pedro Rabinovich
27
Diseño Conceptual
Modelo Entidad Relación
21
Relaciones
Atributos de Relaciones

¿Es atributo del empleado?

¿Es atributo del proyecto?
Empleado
CI
Nombre
Fecha nac
13/04/2015
N
Trabaja_en
M
Horas
Sistemas de Bs. de Ds. I 2do Año
Jose Pedro Rabinovich
Proyecto
Numero
Nombre
28
Diseño Conceptual
Modelo Entidad Relación
22
Relaciones y atributos de relaciones
Ejercicio 1:

Hay un conjunto de cines de los que se conoce el
nombre y la ciudad y se asume que la pareja
nombre-ciudad identifica al cine. Existe también
un conjunto de películas que se exhibe en los
cines y de las que se conoce un código que la
identifica y un nombre.

Una función, que se exhibe en un cine, queda
determinada por su fecha y hora.
13/04/2015
Sistemas de Bs. de Ds. I 2do Año
Jose Pedro Rabinovich
29
Diseño Conceptual
Modelo Entidad Relación
23
Relaciones y atributos de relaciones
Ejercicio 1 - solución:
Película
N
Cod
Nombre
Función
Fecha
13/04/2015
Exhibe
M
Hora
Sistemas de Bs. de Ds. I 2do Año
Jose Pedro Rabinovich
Cine
ID
Ciudad
Nombre
30
Diseño Conceptual
Modelo Entidad Relación
24
Ejercicio 2:

Una empresa de construcción realiza, a
partir del diseño de sus proyectos,
documentos de requerimientos de
materiales. Todo requerimiento da origen
a uno o mas pedidos de compras.

Modelar qué requerimientos originan qué
pedidos de compras solicitando
determinados materiales.
13/04/2015
Sistemas de Bs. de Ds. I 2do Año
Jose Pedro Rabinovich
31
Diseño Conceptual
Modelo Entidad Relación
25
Ejercicio 2 – solución 1:
Materiales
?
M-R-P
?
Requerimientos
?
Pedidos
13/04/2015
Sistemas de Bs. de Ds. I 2do Año
Jose Pedro Rabinovich
32
Diseño Conceptual
Modelo Entidad Relación
26
Agregaciones
Objetivos:







Representar asociaciones (Relaciones) entre elementos
de Relaciones y otras Entidades.
Representar relaciones entre múltiples Entidades pero
manteniendo relaciones binarias.
Constructor:
Se “re interpreta” una relación como si fuera una
Entidad.
La nueva Entidad se utiliza como cualquier otra.
Se represente enmarcando las 2 entidades y la
relación en cuestión.
13/04/2015
Sistemas de Bs. de Ds. I 2do Año
Jose Pedro Rabinovich
33
Diseño Conceptual
Modelo Entidad Relación
27
Agregaciones
Ejercicio 2 – solución 2:
Materiales
N
M-R
N Requerimientos
N
M-R-P
N
Pedidos
13/04/2015
Sistemas de Bs. de Ds. I 2do Año
Jose Pedro Rabinovich
34
Diseño Conceptual
Modelo Entidad Relación
28
¿Cómo procedemos a aplicar el Modelo a una
determinada realidad?

Identificar los objetos de nuestro problema.

Identificar las relaciones entre estos objetos.

Representar las propiedades que nos interesan
de dichos objetos.

Determinar otras restricciones que deseamos
imponer.
13/04/2015
Sistemas de Bs. de Ds. I 2do Año
Jose Pedro Rabinovich
35
Diseño Conceptual
Modelo Entidad Relación
29
Ejercicio 3:




Se desea guardar información sobre las
conferencias realizadas en una convención.
Cada conferencia trata sobre uno o mas temas.
Cada conferencia es dictada por uno o mas
conferencistas, y tiene asociados uno o mas
documentos.
Tales documentos son realizados por uno o mas
autores, cada uno de los cuales pudo haber
intervenido en mas de un documento.
13/04/2015
Sistemas de Bs. de Ds. I 2do Año
Jose Pedro Rabinovich
36
Diseño Conceptual
Modelo Entidad Relación
N
Conferencia
1
Ejercicio 3
Solución 1
Trata
Dicta
N
30
Conferencista
1
Tiene
N
Documento
N
N
Tema
13/04/2015
Escrito_Por
Sistemas de Bs. de Ds. I 2do Año
Jose Pedro Rabinovich
N Autor
37
Diseño Conceptual
Modelo Entidad Relación
30
Conferencia
1
1
N
Dicta
Ejercicio 3
Solución 2
Trata
Autores
N
N
Tema
Escrito_Por
N
Tiene
13/04/2015
Conferencista
N
1 Documento
Sistemas de Bs. de Ds. I 2do Año
Jose Pedro Rabinovich
38
Diseño Conceptual
Modelo Entidad Relación
31
Ejercicio 4:
Una empresa esta dividida en varios departamentos de los que
se conoce un nombre que los identifica.
De los funcionarios se conoce su numero, nombre y dirección. Si
el funcionario es chofer, se conoce su nro. de libreta y # de
accidentes que tuvo. Si es administrativo, los idiomas que
habla. Si es técnico, las especialidades en las que puede
trabajar.
La empresa tiene un cjto. de coches (conducidos por choferes)
de los que se conoce matrícula y marca. A cualquier chofer
se le puede asignar cualquier coche.
Además la empresa lleva adelante un conjunto de proyectos
(identificados por un numero) en los que trabajan los
empleados técnicos.
13/04/2015
Sistemas de Bs. de Ds. I 2do Año
Jose Pedro Rabinovich
39
Diseño Conceptual
Modelo Entidad Relación
32
Especialización o categorización.

Permiten representar subagrupaciones de
entidades.

Se utiliza cuando dichas subagrupaciones
son significativas y es necesario
representarlas en forma explícita por su
importancia para la aplicación de base de
datos.
13/04/2015
Sistemas de Bs. de Ds. I 2do Año
Jose Pedro Rabinovich
40
Diseño Conceptual
Modelo Entidad Relación
33
Especialización o categorización.
Entidad
Subentidad1
13/04/2015
Subentidad2
Sistemas de Bs. de Ds. I 2do Año
Jose Pedro Rabinovich
41
Diseño Conceptual
Modelo Entidad Relación
34
Ejercicio 4
Solución
13/04/2015
Sistemas de Bs. de Ds. I 2do Año
Jose Pedro Rabinovich
42
Diseño Conceptual
Modelo Entidad Relación

35
Entidad Débil.
13/04/2015
Sistemas de Bs. de Ds. I 2do Año
Jose Pedro Rabinovich
43
Diseño Conceptual
Modelo Entidad Relación

36
Entidad Débil.
13/04/2015
Sistemas de Bs. de Ds. I 2do Año
Jose Pedro Rabinovich
44
Diseño Conceptual
Modelo Entidad Relación

37
Entidad Débil.
13/04/2015
Sistemas de Bs. de Ds. I 2do Año
Jose Pedro Rabinovich
45
Diseño Conceptual
Modelo Entidad Relación
33
Nombre
Especialización o categorización.
#finc
Nombre
dirección
Funcionarios
N
1
Trab
Conferencista
choferes
Subentidad2
13/04/2015
Sistemas de Bs. de Ds. I 2do Año
Jose Pedro Rabinovich
46