Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Modelo Entidad/Interrelacin
Objetivos
Conocer el Modelo Entidad/Interrelacin (ME/R), que es el Modelo de Datos Conceptual ms utilizado desde hace bastante aos debido a su sencillez y amigabilidad. Abordar en detalle la esttica del ME/R bsico y del ME/R extendido. Presentar brevemente los aspectos dinmicos del modelo.
Referencias
Bibliografa:
[de Miguel et al, 1999]
cap. 2 De Miguel, A.; Piattini, M.; Marcos, E.; Diseo de Bases de Datos Relacionales. RaMa, 1999.
ndice
1. 2. Presentacin del modelo. Esttica.
2.1 2.2 2.3 2.4 Entidades. Interrelaciones. Dominios y valores. Atributos. Identificadores. Cardinalidades de atributos. Cardinalidades. Dependencias en existencia y en identificacin.
3.
Restricciones.
3.1 3.2
4.
5. 6. 7.
8.
La dimensin temporal.
5
Entre los MD conceptuales, destaca el Modelo Entidad/Interrelacin (ME/R), propuesto por Chen en dos artculos ya histricos, en 1976 y 1977. Segn Chen, El ME/R puede ser usado como una base para una vista unificada de los datos, adoptando el enfoque ms natural del mundo real que consiste en entidades e interrelaciones. Posteriormente otros autores lo han ampliado con importantes aportaciones, formndose en realidad una familia de MDs. En este tema vamos a exponer tanto los conceptos del modelo E/R bsico, como las principales aportaciones (modelo E/R extendido). El ME/R ha tenido una gran difusin en la comunidad informtica dedicada a las bases de datos, prueba de ello es que ha sido el modelo ms extendido en las herramientas CASE de ayuda al diseo de bases de datos.
2. Esttica
En el ME/R, tal como fue propuesto por Chen, se distinguen los siguientes elementos para la componente esttica: Entidad (entity), Interrelacin (relationship), Dominio (domain), y Atributo (atribute).
2.1 Entidades
2. Esttica
Definiciones de Entidad:
Cualquier objeto (real o abstracto) que existe en la realidad y acerca del cual queremos almacenar informacin en la base de datos. Algo con realidad objetiva que existe o puede ser pensado; Hall (1976). Una persona, lugar, cosa, concepto o suceso, real o abstracto, de inters para la empresa.
2.1 Entidades
2. Esttica
Una entidad pertenece a un tipo de entidad si cumple el predicado asociado a ese tipo de entidad.
Matemticamente, un conjunto de ejemplares de un tipo de entidad se define como: { e : p(e) } siendo e un ejemplar del tipo de entidad E y p el predicado asociado a E. Ejemplo: el tipo de entidad PROFESOR, cuyo predicado asociado es Persona
que ejerce o ensea una materia o arte tiene un ejemplar Snchez que pertenece a el, ya que cumple dicho predicado.
9
2.1 Entidades
2. Esttica
DOCUMENTO
2.1 Entidades
2. Esttica
LIBRO
EJEMPLAR
11
2.1 Entidades
2. Esttica
Uno de los problemas que existirn en el diseo E/R es la decisin de si un determinado objeto o concepto se modela como un tipo de entidad o no.
Por ejemplo, el color es habitualmente una propiedad de una entidad (como es el caso del color de un coche), pero en una fbrica de pinturas probablemente sera apropiado modelar el color como una entidad con sus propias propiedades.
Por esta razn, algunos autores han intentado precisar el concepto de entidad. As, TARDIEU et al. (1979) propone tres reglas generales que debe cumplir una entidad:
tiene que tener existencia propia, cada ejemplar de un tipo de entidad debe poder distinguirse de las dems, y todos los ejemplares de un tipo de entidad deben tener las mismas propiedades.
Pero ...
La primera de estas reglas no es aplicable a las entidades dbiles. La segunda supone la obligacin de un identificador que permita distinguir los distintos ejemplares de un tipo de entidad, lo que tampoco es universalmente aceptado (ni por los autores, ni por los modelos, ni por los productos). Y La tercera es relativa: exactamente las mismas?, las mismas entre las que nos interesan?, ...
12
2.2 Interrelaciones
2. Esttica
Se entiende por interrelacin una asociacin, vinculacin o correspondencia entre entidades. Igual que en el caso de las entidades, distinguiremos entre
el tipo de interrelacin o estructura genrica que describe un conjunto de interrelaciones, y cada interrelacin, es decir, cada uno de los ejemplares concretos.
Matemticamente, el conjunto de interrelaciones de un tipo de interrelacin I se define como: { <e1, e2, ..., en > }
donde ei es un ejemplar del tipo de entidad Ei y n el grado del tipo de interrelacin, es decir, el nmero de tipos de entidades participantes (que estn asociados en el tipo de interrelacin).
Ejemplo:
IMPARTE es un tipo de interrelacin que vincula los tipos de entidad PROFESOR y CURSO; un ejemplar del tipo de interrelacin IMPARTE es la vinculacin entre el profesor Snchez y el curso Diseo de Bases de Datos Relacionales.
13
2.2 Interrelaciones
Conjunto de interrelaciones POSEE
2. Esttica
111 Juan Fernndez 5876589 C. Real 222 Antonio Muz 67412021 Madrid 333
12000 pts
Mara Alonso
4821998
Toledo
444
8500 pts
555 Luis Martnez 2045678 Albacete 666 Jos Diaz 54622119 Madrid 777 Jaime Garca 75645321 Cuenca
34000 pts
888
200 pts
2.2 Interrelaciones
2. Esttica
PROFESOR
PROFESOR
ESTUDIANTE
Dirige
1:1
Imparte
1:N
Se_matricula N:N
CURSO
CURSO
CURSO
Rol,
2.2 Interrelaciones
2. Esttica
a1
b1
1
b1 a1
1 1
A
1
a2
1
b2
1
A
1
b2 a2
1 1
a3
1
b3
1
b3 a3
1
B
b4
1
a4
b4
b5
Interrelacin 1:1
Interrelacin 1:N
a1
b1
1
A
1
a2
1
b2
1
Interrelacin N:M
B
a3
1
b3
1
a4
b4
2.2 Interrelaciones
2. Esttica
Muchas veces es importante indicar el rol, es decir, la funcin que desempea un tipo de entidad en una interrelacin.
Los roles suelen ser implcitos y no se especifican, pero pueden ser tiles si se necesita aclarar el significado de una interrelacin. Un caso tpico en que se necesita precisar el rol de cada tipo de entidad participante es cuando existe una interrelacin reflexiva (un tipo de entidad asociado consigo mismo);
por ejemplo, si tenemos el tipo de interrelacin MADRE_DE, en el cual participa repetido dos veces el tipo de entidad PERSONA; cada elemento del conjunto de interrelaciones MADRE_DE es del tipo (p1, p2) siendo pi instancias de tipo PERSONA. En este caso se hace necesario indicar el papel de cada entidad participante, es decir, indicar que p1 es el hijo y p2 es la madre o viceversa.
17
2.2 Interrelaciones
principal LIBRO escribe AUTOR TEMA
2. Esttica
secundario
consta
edita
INSTITUCION
escribe
Dos tipos de entidad entre los que existen dos tipos de interrelaciones
Interrelacin ternaria
TEMA
2. Esttica
Las distintas propiedades o caractersticas de un tipo de entidad o de interrelacin toman valores para cada ejemplar de stas. Un dominio se define como un conjunto de valores homogneos con un nombre que lo identifica. Una cierta caracterstica o propiedad de un objeto toma valores que pertenecen a un determinado dominio. Un dominio lleva siempre asociado un predicado que permite comprobar si un determinado valor pertenece al dominio: D = { vi : p(vi) }
donde D es el dominio, vi es un valor y p es el predicado asociado a dicho dominio.
Un dominio puede definirse por intensin, especificando el tipo de datos (por ejemplo, carcter 30 para el Nombre); o por extensin, enumerando los valores que pertenecen al dominio (por ejemplo, los das de la semana).
19
2.4 Atributos
2. Esttica
Atributo: cada una de las propiedades o caractersticas que tiene un tipo de entidad o un tipo de interrelacin.
Los atributos toman valores de u o varios dominios (*). Por tanto, podemos decir que el atributo le da una determinada interpretacin al dominio (o dominios) en el contexto de un tipo de entidad o de un tipo de interrelacin. Matemticamente, un atributo consiste en una funcin de un tipo de entidad o de interrelacin sobre todos los posibles subconjuntos de los valores de un dominio (o de un conjunto de dominios):
A : E S(D) A : E S(D1) x S(D2) x ... x S(Dn) A : I S(D) A : I S(D1) x S(D2) x ... x S(Dn) donde A es el atributo, S(Di) todos los posibles subconjuntos de los valores de los dominios, E el tipo de entidad e I el tipo de interrelacin.
A diferencia de los dominios que existen por s mismos, la existencia de un atributo est ligada a la del correspondiente tipo de entidad.
(*) se refiere a los atributos compuestos.
20
2.4 Atributos
TIPO DE ENTIDAD Ei ATRIBUTOS Fi DOMINIOS Vi
V1
2. Esttica
(Libro)
F1: cdigo V2
333
CDIGOS
Ei
F2: ttulo
SGBDR
TITULOS
F3: idioma V3
espaol
IDIOMAS
F4: ao_edicin V4
1989 1994
AOS
F5: ao_compra
2.4 Atributos
2. Esttica
Atributos de interrelaciones:
MUJER
(0,1)
fecha
EDICIN
En interrelaciones 1:n el atributo se puede poner en la interrelacin, pero casi siempre es mejor ponerlo en la entidad con cardinalidad mxima n:
Tiene Fecha_Imparte
CURSO
22
2.4 Atributos
2. Esttica
nombre
atributo
fecha
dia mes ao
EJEMPLAR
tiene
LIBRO
Representacin de atributos
23
3. Restricciones
Restricciones
nicamente consideramos las restricciones especficas, distinguiendo entre: Las restricciones sobre valores, que se establecen mediante la definicin de dominio. Las restricciones estructurales, que se refieren a:
Atributos:
Identificadores Cardinalidades
de
integridad:
e Interrelaciones:
Cardinalidades mnima y mxima Dependencias en existencia y en identificacin Otras restricciones
24
3.1 Identificadores
3. Restricciones
Entre todos los atributos de un tipo de entidad han de existir uno o varios (simples y/o compuestos) que identifiquen unvocamente cada una de los ejemplares de ese tipo de entidad. Cada uno de estos conjuntos de atributos se denomina Identificador Candidato (IC).
Todo IC debe cumplir la condicin de ser unvoco y mnimo: cuando un IC es compuesto, el nmero de los atributos que lo componen debe ser mnimo, en el sentido de que la eliminacin de cualquiera de ellos le hara perder su carcter de identificador.
Entre los IC se elige uno como Identificador Principal (IP) y el resto sern Identificadores Alternativos (IA).
DNI NSS DNI NSS atributo identificador principal atributo identificador alternativo
25
3. Restricciones
26
3. Restricciones
CURSO
Ejemplares
Introduccin a las BD Nombres 30 Espaol Ingls Francs 10 2 Enero 1980 1999 Horas Idiomas Das Meses Aos
CURSO 1
Fecha_1_edicin Fecha_ult_edicin
4.1 Cardinalidades
Definicin: nmero mximo y mnimo de ejemplares de un tipo de entidad que pueden estar interrelacionados con un ejemplar del otro u otros tipos de entidad que participan en el tipo de interrelacin. Notacin: I(E1(n1,m1)):E2(n2,m2))
siendo:
I un tipo de interrelacin binaria, E1 y E2 los tipos de entidad asociados por ella, n1 y n2 las cardinalidades mnimas de E1 y E2 respectivamente, y m1 y m2 las cardinalidades mximas de E1 y E2 respectivamente.
Semntica:
un ejemplar de E2 puede estar relacionado con un mnimo de n1 y un mximo de m1 ejemplares de E1.. un ejemplar de E1 puede estar relacionado con un mnimo de n2 y un mximo de m2 ejemplares de E2..
Los valores de las cardinalidades mximas coinciden con el tipo de correspondencia definido por Chen (ya comentado); pero, !Cuidado!, algunos autores dan una definicin diferente => valores diferentes.
28
4.1 Cardinalidades
Representacin Grfica:
E1
E2
({0,1},1)
({0,1},n)
E1
E2
Ejemplo:
29
Los tipos de interrelacin se clasifican tambin en regulares y dbiles, segn estn asociando dos tipos de entidad regulares, o un tipo de entidad dbil con un tipo de entidad (regular o dbil), respectivamente. Dentro del tipo de interrelacin dbil, se distinguen dos tipos especiales de restricciones:
Dependencia en existencia: los ejemplares de un tipo de entidad (entidad dbil) no pueden existir si desaparece el ejemplar del tipo de entidad regular del cual dependen. Dependencia en identificacin: adems de cumplirse la condicin anterior, los ejemplares del tipo de entidad dbil no se pueden identificar por s mismos, es decir, mediante los atributos propios del tipo de entidad y es necesario aadir el IP del tipo de entidad regular del cual dependen.
Una dependencia en identificacin es siempre una dependencia en existencia.
30
EMPLEADO
LIBRO
ISBN
(1,1) E depende
(1,1) ID tiene
(0,N)
(0,N) EJEMPLAR
FAMILIAR
Signatura Id-Ejemplar
Dependencia en existencia
Dependencia en identificacin
31
5. Control de redundancias
En los esquemas E/R, y en general en los de cualquier MD, es necesario evitar las redundancias para no tener problemas de inconsistencias de la representacin. Un elemento de un esquema es redundante si puede ser eliminado sin prdida de semntica. Existen dos formas principales de redundancia:
En los atributos (atributos derivados o calculados):
Aunque son redundantes, no dan lugar a inconsistencias siempre que en el esquema se indique su condicin de derivados y la frmula mediante la que han de ser calculados.
5. Control de redundancias
escribe
redundante
publica
(1,n)
EDITORIAL
edita
escribe
(1,n)
ARTICULO
33
5. Control de redundancias
La existencia de un ciclo no implica la existencia de interrelaciones redundantes. Para que una interrelacin pueda ser eliminada por redundante se tiene que cumplir :
a) que exista un ciclo, b) que las interrelaciones que componen el ciclo sean equivalentes semnticamente, c) que se puedan asociar los ejemplares de las dos entidades que estaban interrelacionadas, an habindose eliminado la interrelacin, y d) que la interrelacin no tenga atributos o que stos puedan ser transferidos a otro elemento del esquema a fin de no perder su semntica.
34
6. Interrelaciones n-arias
Las interrelaciones de grado mayor de 2 son bastante ms difciles de manejar que las binarias. Casi nunca se utilizan interrelaciones de grado igual o superior a 4. Algunas veces es posible transformar una interrelacin ternaria a varias binarias (lo mismo para n=4, 5, ...) que recogen la misma semntica. !Otras veces no es posible! La determinacin de las cardinalidades mnimas y mximas de cada tipo de entidad participante debe realizarse con cuidado. Segn la definicin dada de cardinalidades, una interrelacin ternaria
I ( E1(n1,m1) : E2(n2,m2) : E3(n3,m3) )
significa que:
Cada pareja de ejemplares (e2i,e3i) pertenecientes a E2 y E3 respectivamente- se puede asociar a un mnimo de n1 y un mximo de m1 ejemplares e1i de E1. Cada pareja de ejemplares (e1i,e3i) pertenecientes a E1 y E3 respectivamente- se puede asociar a un mnimo de n2 y un mximo de m2 ejemplares e2i de E2. Cada pareja de ejemplares (e1i,e2i) pertenecientes a E1 y E2 respectivamente- se puede asociar a un mnimo de n3 y un mximo de m3 ejemplares e3i de E3.
35
6. Interrelaciones n-arias
6
nombre
cantidad
nombre
(0,n) PROYECTO
cdigo
(0,n)
PIEZA
Una pieza Y en un proyecto Z una pareja (pieza, proyecto) la suministran 0 o 1 proveedores. Un proveedor X en un proyecto Z una pareja (proveedor, proyecto) suministra 0, 1, 2, .., n piezas. Un proveedor X suministra una pieza Y una pareja (proveedor, pieza) en 0, 1, 2, .., n proyectos.
36
6. Interrelaciones n-arias
6
nombre
cantidad
nombre
(0,n) PROYECTO
cdigo
(0,n)
PIEZA
6
nombre
nombre
(1,n) PROYECTO
cdigo
(1,n)
(1,n)
PIEZA (1,n)
utiliza
37
6. Interrelaciones n-arias
PROFESOR
( 1,n ) ( 1,n ) ( 1,n )
Trata
Imparte
Imparte1
( 1,n ) ( 1,n )
TEMA
Trata
CURSO CURSO
6. Interrelaciones n-arias
PROFESOR
( 1,1 ) ( 1,1 ) ( 1,n )
Imparte1
Imparte
Da_clase
( 1,n ) ( 1,n )
CURSO
Asiste
ESTUDIANTE
6. Interrelaciones n-arias
Precio_mximo** ( 0,n )
( 0,n )
Interviene S2
PROVEEDOR
( 1,n )
Puede_suministrar S1
( 0,n ) ( 1,n )
( 1,n )
PROYECTO
( 0,n )
Suministra
( 1,n ) Precio Cantidad
PIEZA
( 1,n )
Necesita S3
Cantidad_total*
* Cantidad_total(Proyectoi, Pezaj) = k.Cantidad(Proyectoi, Pezaj, Proveedork) en Suministra ** Precio_max Precio
Existen, adems de las vistas hasta ahora, otras restricciones que afectan a los tipos de interrelacin y a sus ejemplares, como son:
Restriccin de exclusividad, Restriccin de exclusin, Restriccin de inclusividad, y Restriccin de inclusin.
Tambin, en el ME/R extendido se ha definido un mtodo para utilizar el mecanismo de Generalizacin y poder incorporar la herencia de propiedades de unos tipos de entidades desde otros tipos. Otro mecanismo de abstraccin incorporado es la Agregacin, en dos variantes:
Agregacin compuesto/componente. Agregacin miembro/coleccin.
41
Percibe
(0,1)
BECA
PROFESOR (1,n)
(0,n)
Contratado
(1,n)
PROYECTO
Dos (o ms) tipos de interrelaciones tienen una restriccin de Exclusividad con respecto a un tipo de entidad que participa en ambas interrelaciones si cada ejemplar de dicho tipo de entidad slo puede participar en uno de los tipos de la interrelacin a la vez (en el momento en que participa en uno ya no podr formar parte del otro).
(1,n) => Un ejemplar de PROFESOR participa en alguna de las dos
(1,1)
Imparte
(0,n) {exclusin}
PROFESOR (1,n)
CURSO
(0,n)
Recibe
(0,n)
Restriccin de Exclusin: un profesor no puede estar impartiendo y recibiendo el mismo curso a la vez.
=>Todo ejemplar de profesor que est unido a un ejemplar de curso mediante la interrelacin imparte, no podr estar unido al mismo ejemplar de curso mediante la interrelacin recibe.
43
(1,1)
Imparte
(0,n)
PROFESOR
(1,n)
(3,n)
CURSO
(0,n)
(0,n)
Recibe
Restriccin de Inclusividad: todo ejemplar del tipo de entidad afectado que participa en uno de los tipos de interrelacin tiene necesariamente que participar en la otra:
si un profesor participa en imparte tiene necesariamente que participar en recibe
(1,1)
Imparte
(0,n)
PROFESOR
{inclusin} (1,n)
CURSO
(0,n)
(0,n)
Recibe
Restriccin de Inclusin: todo ejemplar de profesor que est unido a un ejemplar de curso, mediante la interrelacin imparte, tiene necesariamente que estar unido al mismo ejemplar de curso mediante la interrelacin recibe.
45
La Generalizacin se considera como un caso especial de interrelacin entre uno o varios tipos de entidad (subtipos) y un tipo ms general (supertipo), cuyas caractersticas son comunes a todos los subtipos. La interrelacin que se establece entre los subtipos y el supertipo es de la forma ES_UN:
Un ejemplar de un subtipo ES_UN ejemplar (tambin) del supertipo. !OJO!, al contrario no es seguro.
E E
ES-UN discriminante
E1
E2
E1
E2
....
E3
Representacin de la Generalizacin/Especializacin
47
TRABAJADOR
TRABAJADOR FIJO
fecha de confirmacin
48
La divisin en subtipos (especializacin) puede venir determinada por una condicin predefinida (por ejemplo, en funcin de los valores de un atributo llamado discriminante). La Generalizacin/Especializacin tiene dos restricciones semnticas asociadas:
Totalidad (todo ejemplar del supertipo tiene que pertenecer a algn subtipo). El caso contrario se llama Parcialidad. Solapamiento (un mismo ejemplar del supertipo puede pertenecer a ms de un subtipo). El caso contrario se llama Exclusividad.
49
ES-UN
tipo
LIBRO
REVISTA
materia ES-UN
etc
LIBRO DE INFORMTICA LIBRO DE MATEMTICA S DIARIO SEMANARIO
...
Jerarqua de Generalizaciones
50
PERSONA
ES-UN
ESTUDIANTE
jornada
clase de trabajo
ES-UN
tipo
ES-UN
DOCENTE
NO DOCENTE
BECARIO
NO BECARIO
empleado.jornada
G
(p,s)
G
discriminante
ES_UN
E1
E2 E1 E2
G
(t,e)
ES_UN
discriminante
E1
E2 E1 E2
(t,e)
(p,e)
VARON
HEMBRA
DIRECTOR
ADMINISTRATIVO
PERSONA
EMPLEADO
(t,s)
(p,s)
EMPLEADO
ESTUDIANTE
DOCENTE
INVESTIGADOR
7.3 Agregacin
Miembro/Coleccin:
Abstraccin que permite representar un todo o agregado como una coleccin de miembros, todos de un mismo tipo de entidad y todos jugando el mismo rol. Esta agregacin puede incluir una restriccin de orden de los miembros dentro de la coleccin (indicando el atributo de ordenacin).
54
7.3 Agregacin
COCHE
Agregacin Compuesto/Componente
(1,1) CHASIS (1,1) MOTOR RUEDA (4,4)
FLOTA
(1 , n ) {ord en p or N u m_ b a r c o }
BARCO
55
7.3 Agregacin
PROFESOR
Explica
ASIGNATURA CURSO
Utiliza
MEDIO
7.3 Agregacin
PROFESOR
Explica
ASIGNATURA
EXPLICACION
Utiliza
MEDIO
57
8. La Dimensin Temporal
Es necesario de establecer un mtodo semntico y grfico que recoja de algn modo, en el esquema conceptual, el transcurso del tiempo y su influencia en la forma en que cambian los datos. Existen varias aproximaciones:
La ms simple la constituyen los atributos de tipo fecha asociados a algunas entidades o interrelaciones:
Para sucesos instantneos, es decir, sin duracin, bastar con un slo atributo de este tipo. Para poder almacenar hechos que transcurren en un intervalo de tiempo determinado necesitaremos una fecha_inicio y una fecha_fin. En las bases de datos histricas, en las que una interrelacin entre dos ejemplares concretos se pueda repetir en el tiempo, el atributo fecha ser multivaluado.
Cuando es necesario representar la evolucin de un tipo de entidad a lo largo del tiempo se utiliza un atributo de estado, que indicar en qu estado concreto se encuentra la entidad.
En muchos casos lleva asociado otro atributo, que es la fecha en la que se ha producido el cambio de estado o el intervalo de tiempo en que ha permanecido en dicho estado.
58
8. La Dimensin Temporal
fecha_prstamo (1,n)
fecha_devolucin (0,n)
(0,n) USUARIO
a) Base de datos con informacin histrica y posibilidad de varios prstamos del mismo ejemplar al mismo usuario
fecha_prstamo
(1,n) prestamo
(0,n) USUARIO
59