Sunteți pe pagina 1din 68

DISEO DE BASES DE

DATOS RELACIONALES

Objetivo
En general, el objetivo del diseo de
una base de datos relacional es
generar un conjunto de esquemas de
relaciones que permitan almacenar
la informacin con un mnimo de
redundancia, pero que a la vez
faciliten la recuperacin de la
informacin.
Diseo de Bases de datos.

Problemas en el diseo de
Redundancia de informacin
bases de datos
Incoherencia de datos
Valores nulos

Complicada actualizacin
(insercin, eliminacin y
modificacin)
Desperdicio de espacio
Diseo de Bases de datos.

Fases del diseo de bases


de datos
Mundo Real
RECOLECCIN Y ANALISIS DE
REQUERIMIENTOS

DISEO CONCEPTUAL
DISEO LGICO

DISEO FISICO
Diseo de Bases de datos.

Recoleccin y anlisis de
requerimientos:
Los diseadores entrevistan a los futuros
usuarios de la base de datos para
recoger y documentar sus necesidades
de informacin. En paralelo, conviene
definir los requerimientos funcionales
que consisten en operaciones
(transacciones) que se aplicarn a la
base de datos, e incluyen la obtencin
de datos y la actualizacin.
Diseo de Bases de datos.

Diseo conceptual
Crear un esquema conceptual mediante un
modelo de datos conceptual de alto nivel.
El esquema conceptual contiene una
descripcin detallada de los requerimientos de
informacin de los usuarios, y contiene
descripciones de los tipos de datos, relaciones
entre ellos y restricciones.
Se utiliza para el diseo de esquemas
conceptuales el MER (modelo entidad-relacin
Diseo de Bases de datos.

Diseo lgico de la base


de datos
Transformar el modelo conceptual
al modelo de datos empleados por
el S.G.B.D. (relacional).

Diseo de Bases de datos.

Diseo fsico de la base de


datos
En este paso se especifican las
estructuras de almacenamiento
internas y la organizacin de los
archivos de la base de datos.

Diseo de Bases de datos.

Diseo de Bases de datos.

Generalidades
El modelo E-R fue propuesto por Peter P. Chen
entre los aos 1976-1977. Posteriormente otros
muchos autores han investigado y escrito sobre
el modelo, proporcionando importantes
aportaciones, por lo que realmente no se puede
considerar que exista un nico modelo E-R.
El modelo E-R describe los datos como
entidades, relaciones (vnculos) y atributos y
permite representar el esquema conceptual de
una base de datos de forma grfica mediante
los diagramas E-R.

Diseo de Bases de datos.

Esquema conceptual
Descripcin concisa de los requisitos
de informacin de los usuarios
Descripciones detalladas de
TIPOS DE DATOS
RELACIONES ENTRE DATOS
RESTRICCIONES que los DATOS deben cumplir

Sin detalles de implementacin


Ms fcil de entender
Comunicacin con el usuario no tcnico

Diseo de Bases de datos.

Entidades y atributos
Una entidad puede ser un objeto con existencia
fsica o un objeto con existencia conceptual
Se representa por un rectngulo, dentro de la
cual va el nombre en singular
Persona, lugar, cosa, concepto o suceso, real o abstracto, de inters para la
empresa (ANSI, 1977)

CLIENTE
Diseo de Bases de datos.

PROVEEDOR

CURSO

Tipos de entidades
Fuertes (o regulares), que son aquellas
que tienen existencia por si mismas
EMPLEADO

Dbiles, cuya existencia depende de


otro tipo de entidad Estas entidades
normalmente no tienen suficientes
atributos para formar una clave
primaria.
FAMILIAR
Diseo de Bases de datos.

Atributos:
Cada entidad tiene propiedades
especificas, que la describen.
Los atributos se representan por elipses
que estn conectadas a su entidad o
relacin mediante una lnea recta.
Cod

Nombre
PROVEEDOR

Diseo de Bases de datos.

Telef

...Atributos
Una entidad particular es descrita
por los valores de sus atributos:

Diseo de Bases de datos.

...Atributos
Al conjunto de valores que puede tomar un atributo se le
llama dominio del atributo.
Cada atributo simple est asociado a un dominio, que
especifica sus valores vlidos

Diseo de Bases de datos.

...Atributos
Toda entidad debe tener al menos un atributo que permita
diferenciar unas entidades particulares de otras. A estos
atributos se les llaman claves.

[EN 2002] Elmasri, R.; Navathe, S.B. Fundamentos de Sistemas de Bases de


Datos. 3 ed. Addison-Wesley, (Cap. 3 y 4)
[MPM 1999] De Miguel, A.; Piattini, M.; Marcos, E. Diseo de bases de datos
relacionales. Ra-Ma. (Cap. 2)
Diseo de Bases de datos.

...Atributos Clave
Una clave puede estar formada por
varios atributos --> clave compuesta
Combinacin de valores distinta para cada instancia
(nombre, fechanacim) en el tipo de entidad EMPLEADO

Una clave compuesta debe ser mnima

Un tipo de entidad puede tener


ms de una clave --> claves candidatas
Claves o Identificadores Candidatos de EMPLEADO:
nit Nmero de identificacin tributaria
C.C Nmero de Cdula de ciudadania
(nombre, fechanacim)

Diseo de Bases de datos.

Tipos de atributos
a) Simples o compuestos: Los compuestos
estn formados por un conjunto de atributos,
mientras que los simples no se pueden dividir.

Diseo de Bases de datos.

...Tipos de Atributo
b) Monovaluados o multivaluados: Los monovaluados slo pueden tener un
valor para una entidad particular, mientras que los multivaluados pueden
tener ms de un valor.
Pueden tener lmites superior e inferior del nmero de valores por entidad
nacionalidad (1-2)
telefono (0-3)

Placa

Modelo

AUTO

Diseo de Bases de datos.

Color

... Tipos de atributos


Almacenados o derivados: Los derivados son atributos
cuyo valor para una entidad particular puede obtenerse
en funcin de los valores almacenados en otros atributos.
Se representan mediante una elipse con trazo discontinuo.

DNI

Nombre

FechaN

PERSONA
Diseo de Bases de datos.

Edad

Notaciones

Diseo de Bases de datos.

...Notaciones

Diseo de Bases de datos.

Vinculo o relacin
Tambin interrelacin
Asociacin, vnculo o correspondencia entre
instancias de entidades relacionadas de alguna
manera en el mundo real
El director Alejandro Amenbar ha rodado la pelcula
Mar adentro
El empleado 87654321 trabaja en el local de videoclub
principal
La pelcula El imperio contraataca es una continuacin
de la pelcula La guerra de las galaxias

Diseo de Bases de datos.

Vnculo o relacin
Se puede definir como una correspondencia,
asociacin o conexin entre dos o ms entidades.
En los diagramas E-R se representa grficamente como
un rombo y sus nombres son verbos.

Una relacin puede tener atributos


fecha
descriptivos.
PROVEEDOR
Diseo de Bases de datos.

Vende

ARTICULO

... Vnculo o relacin


Grado de una relacin es el nmero de entidades
que participan en la relacin.
Binaria: grado 2 (el ms frecuente)
Ternaria: grado 3
Reflexiva (o recursiva): grado 1
Se puede restringir el MER para incluir solo conjuntos de
relaciones binarias, es decir de grado 2 (es aconsejable).

Diseo de Bases de datos.

...Vinculo o Relacin
Correspondencia de cardinalidad, expresa el nmero
mximo de entidades que estn relacionadas con una
nica entidad del otro conjunto de entidades que
interviene en la relacin.

Diseo de Bases de datos.

... Vnculo o relacin


Notacin [EN-2000]
Etiqueta en la lnea que une entidad y relacin

Diseo de Bases de datos.

... Vnculo o relacin


Notacin [MPM-1999]

Diseo de Bases de datos.

... Vnculo o relacin


Notacin [SKS-1998]

[SKS 1998] Silberschatz, A;Korth, H; Sudarshan, S. Fundamentos


dedatos.
Datos. 3 edicin. Madrid: McGraw-Hill. (Cap. 2)
Diseode
de Bases
Bases de

Tipos de participacin de las


entidades en una relacin

Opcional (parcial): No todas las ocurrencias de una entidad


tienen que estar relacionadas con alguna de la otra entidad.

PERSONA

Posee

ANIMAL

Obligatoria (total): Todas las ocurrencias de una entidad


deben estar relacionadas con alguna de la entidad con la
que esta relacionada. Se dice tambin, que existen una
participacin total de ese conjunto de entidades en el
conjunto de relaciones.

PROVEEDOR

Diseo de Bases de datos.

Vende

ARTICULO

Tipos de participacin de las


entidades en una relacin

Diseo de Bases de datos.

Cardinalidad de tipo de entidad [EN2002]

Diseo de Bases de datos.

Notaciones

Diseo de Bases de datos.

Relacin Dbil
Tipo de relacin dbil (o dependencia) :Relaciona un tipo
de entidad dbil y otro regular.
Clases de dependencia:
En existencia: Si desaparece una instancia del tipo de
entidad regular deben desaparecer las instancias de la
entidad dbil que dependen de ella
Etiqueta E en el tipo de relacin dbil
En identificacin: Adems de la dependencia en
existencia...
Una instancia del tipo de entidad dbil no se puede
identificar por s misma
Su clave es (clave_entidad_regular, clave_parcial)
Etiqueta ID en el tipo de relacin dbil
Diseo de Bases de datos.

Relacin Dbil

Diseo de Bases de datos.

... Relacin Dbil

Diseo de Bases de datos.

... Relacin Dbil

Diseo de Bases de datos.

Modelo Entidad-Relacin
Extendido MERE
Enhanced Entity-Relationship model, EER
Aportaciones de diversos autores al
modelo Entidad-Relacin bsico.
Permiten representar...
Relaciones exclusivas entre s
Jerarquas de Especializacin/Generalizacin
Agregacin de entidades

Diseo de Bases de datos.

Relaciones Exclusivas
Dos (o ms) tipos de relacin son exclusivos,
respecto de un tipo de entidad que participa en
ambos, si cada instancia del tipo de entidad slo
puede participar en uno de los tipos de relacin

Diseo de Bases de datos.

Generalizacin y Especializacin
Caso especial de relacin entre un tipo de
entidad y varios otros tipos de entidad
La jerarqua o relacin que se establece entre
uno y otros corresponde a la nocin de es_un o
de es_un_tipo_de
Estas jerarquas pueden formarse por
especializacin o bien por generalizacin

Diseo de Bases de datos.

Generalizacin y Especializacin
Agrupacin de instancias dentro de un tipo de entidad, que
debe representarse explcitamente debido a su
importancia para el diseo o aplicacin
Subtipos del tipo de entidad VEHCULO:

CAMIN
TURISMO
AUTOBS
CICLOMOTOR

Subtipos del tipo de entidad EMPLEADO:


SECRETARIO
GERENTE
COMERCIAL

El tipo de entidad que se especializa en otros se llama


Supertipo ( VEHICULO, EMPLEADO )

Diseo de Bases de datos.

E/G: Supertipos y subtipos


Un supertipo es todo tipo entidad sobre el
que se definen subclases. Como se trata
de entidades.
Un subtipo es un subconjunto del tipo
entidad que tiene sentido en el minimundo
ya que tiene atributos particulares.

Diseo de Bases de datos.

El tipo relacin entre una supertipo y sus subtipos,


se dice que es un tipo ES_UN (IS_A). Este tipo
relacin se representa a diferencia del resto de
relaciones con un tringulo. El tipo ES_UN puede
ser disjunto (disjunct) o solapado (overlap)

supertipo
Relacion IS_A
subtipo
Diseo de Bases de datos.

...cuando usar?
Especializacin: es el proceso de definir un conjunto de
subclases a partir de un tipo entidad.
Generalizacin: es el proceso de suprimir las diferencias entre
varios tipo entidad, identificando sus cualidades comunes.

Diseo de Bases de datos.

E/G: Supertipos y subtipos

Diseo de Bases de datos.

E/G: Herencia de tipo


Un subtipo puede tener atributos propios (especficos) y
participar en relaciones por separado
Un subtipo hereda todos los atributos del supertipo, y toda
relacin en la que participa el supertipo
Un subtipo, con sus atributos y relaciones especficos,
ms los atributos y relaciones que hereda del supertipo, es
untipo de entidad por derecho propio

Diseo de Bases de datos.

..cuando usar?
Cuando los subtipos tienen atributos particulares que no tiene el supertipo.
Cuando existen tipos relacin en los que participan solo algunos subtipos.
Cuando hay Atributos que slo tienen sentido para algunas instancias de
un tipo y no para todas (atributos especficos)
Ejemplo: especialidadMdica no es aplicable a CELADOR

Diseo de Bases de datos.

..Especializacin

Diseo de Bases de datos.

..Generalizacin
Proceso inverso de la especializacin
Suprimir diferencias entre varios tipos de entidad:
identificar atributos y relaciones comunes, y formar
un supertipo que los incluya

Diseo de Bases de datos.

Generalizacin vs. Especializacin

Diseo de Bases de datos.

Restricciones de E/G
Definicin
Qu instancias del supertipo pertenecen a cada subtipo?

Disyuncin/Solapamiento
A cuntos subtipos puede pertenecer (a la vez) una instancia
del supertipo?

Completitud/Parcialidad
Debe toda instancia del supertipo pertenecer a algn subtipo?

Diseo de Bases de datos.

...Restricciones: Definicin
Subtipos definidos por predicado o condicin
Condicin de pertenencia a cada subtipo con base en el valor de
algn atributo del supertipo
Restriccin que especifica que...
Las instancias del subtipo deben satisfacer la condicin
Todas las instancias del supertipo que cumplen la condicin, deben
pertenecer al subtipo

Diseo de Bases de datos.

...Restricciones: Definicin
Subtipos definidos por atributo
Todas las subclases definen la condicin de pertenencia en
trminos del mismo atributo
... es el discriminante de la especializacin

Diseo de Bases de datos.

...Restricciones: Definicin
Subtipos definidos por el usuario
No existe (o no interesa definir) ninguna condicin de pertenencia
a los subtipos
El usuario, al insertar una instancia, elige a qu subtipo
pertenece

Diseo de Bases de datos.

...Restricciones:
Disyuncin/solapamiento
Subtipos disjuntos si una instancia del supertipo
puede ser miembro de, como mximo, uno de los
subtipos

Diseo de Bases de datos.

...Restricciones:
Completitud/parcialidad
Especializacin total (completa) indica que toda
instancia del supertipo tambin debe ser instancia de
algn subtipo

Diseo de Bases de datos.

...Restricciones:
Completitud/parcialidad
Especializacin parcial indica que es posible que alguna
instancia del supertipo no pertenezca a ninguno de los subtipos
La unin de las extensiones de los subtipos no es la extensin
del supertipo en su totalidad

Diseo de Bases de datos.

E/G:Reglas de Insercin
Deben aplicarse a la Especializacin y la
Generalizacin, debido a las restricciones definidas
Insertar una instancia en un supertipo implica insertarla en
todos los subtipos definidos por predicado o por atributo, para
los cuales satisface el predicado de definicin.
Insertar una instancia en un supertipo de una
especializacin total implica insertarla en, al menos, un subtipo
Y si la especializacin es disjunta, entonces la instancia se
insertar en un nico subtipo.

Diseo de Bases de datos.

E/G:Reglas de Insercin
Eliminar una instancia de un supertipo implica eliminarla de todos
los subtipos a los que pertenece
Eliminar una instancia de un subtipo implica eliminarla del supertipo
si la especializacin es ...
Disyunta y total, o bien
Solapada y total, y la instancia ya slo pertenece al subtipo (se elimin del
resto)

En el resto de casos, la instancia slo se elimina del subtipo


No del supertipo ( lo hara el usuario, si fuese necesario)

Diseo de Bases de datos.

Agregado
Restriccin inherente del MER:
No puede expresar relaciones
entre varias relaciones, ni
entre un tipo de relacin y un tipo de entidad

La agregacin...
Permite combinar varios tipos de entidad, relacionados mediante un tipo de relacin, para formar un
tipo de entidad agregada de nivel superior
til cuando el tipo de entidad agregado debe relacionarse con otros tipos de entidad

Diseo de Bases de datos.

Agregado
Es un elemento que nos permite relacionar una relacin con otra
entidad. Hasta el momento solo se podan relacionar entidades.
Este nuevo elemento permite relacionar relaciones con entidades,
o relaciones entre si siempre que el caso lo requiera.

PERSONA

Participa

Supervisa

Diseo de Bases de datos.

ORGANISMO

PROYECTO

Agregado

Diseo de Bases de datos.

Agregado: ejemplo
Esquema en el MERE que almacena informacin sobre las
entrevistas que una Bolsa de Empleo organiza entre solicitantes de
empleo y diferentes empresas

Algunas entrevistas dan lugar a un empleo y otras no.


Cmo modelamos esto?
Diseo de Bases de datos.

... Agregado: ejemplo


Solucion1: Relacin Ternaria

ERROR!!!

Toda entrevista da lugar a conseguir un empleo?

Diseo de Bases de datos.

... Agregado: ejemplo


Solucion 2:

ERROR!!!

No es posible establecer una relacin entre varias


relaciones ni entre relaciones y entidades.
Diseo de Bases de datos.

... Agregado: ejemplo

OK !!!
OFERTA_EMPLEO tiene dependencia en existencia
respecto de RESULTA_EN.
Diseo de Bases de datos.

... Agregado: ejemplo

OK !!!

Diseo de Bases de datos.

S-ar putea să vă placă și