Sie sind auf Seite 1von 29

Tema 4A

Diseo lgico relacional


Diseo y Desarrollo de Sistemas de Informacin
Grado en Ingeniera Informtica

Gabriel Navarro (gnavarro@ugr.es)

ndice
Introduccin
Diseo lgico relacional
Conceptos
Paso a tablas

Problemas del diseo lgico resultante

Gabriel Navarro

Tema 4 Diseo en bases de datos relacionales

Diseo lgico relacional


Esquema relacional
Conjunto de relaciones en el Modelo Lgico de Datos
Relacional, conectadas entre s, que permiten
almacenar la informacin y mantener la semntica
relacionadas con un sistema dado.

Gabriel Navarro

Tema 4 Diseo en bases de datos relacionales

Diseo lgico relacional


Diseo Lgico Relacional
Proceso que permite generar un esquema relacional a
partir de una representacin conceptual (esquema
entidad-relacin) de la informacin relacionada con un
sistema dado. Tambin se le conoce como paso a
tablas

Gabriel Navarro

Tema 4 Diseo en bases de datos relacionales

Paso a tablas
Entidad con atributos simples

Gabriel Navarro

Tema 4 Diseo en bases de datos relacionales

Paso a tablas
Entidad con atributos compuestos (concatenacin de
valores en una cadena de caracteres)

Gabriel Navarro

Tema 4 Diseo en bases de datos relacionales

Paso a tablas
Entidad con atributos compuestos (eliminacin del
atributo compuesto)

Gabriel Navarro

Tema 4 Diseo en bases de datos relacionales

Paso a tablas
Entidad dbil

Gabriel Navarro

Tema 4 Diseo en bases de datos relacionales

Paso a tablas
Especializacin

Gabriel Navarro

Tema 4 Diseo en bases de datos relacionales

Paso a tablas
Relacin uno a uno con participaciones 0

10

Gabriel Navarro

Tema 4 Diseo en bases de datos relacionales

Paso a tablas
Relacin uno a uno con participaciones distintas

11

Gabriel Navarro

Tema 4 Diseo en bases de datos relacionales

Paso a tablas
Relacin uno a uno con participaciones 1

12

Gabriel Navarro

Tema 4 Diseo en bases de datos relacionales

Paso a tablas
Relacin uno a uno con participaciones 1

13

Gabriel Navarro

Tema 4 Diseo en bases de datos relacionales

Paso a tablas
Relacin uno a muchos con participaciones 0

14

Gabriel Navarro

Tema 4 Diseo en bases de datos relacionales

Paso a tablas
Relacin uno a muchos con participaciones distintas

15

Gabriel Navarro

Tema 4 Diseo en bases de datos relacionales

Paso a tablas
Relacin uno a muchos con participaciones distintas

16

Gabriel Navarro

Tema 4 Diseo en bases de datos relacionales

Paso a tablas
Relacin uno a muchos con participaciones 1

17

Gabriel Navarro

Tema 4 Diseo en bases de datos relacionales

Paso a tablas
Relacin muchos a muchos con cualquier combinacin
de participaciones

18

Gabriel Navarro

Tema 4 Diseo en bases de datos relacionales

Problemas
Ejemplo 1. Consideremos la relacin:

MATRICULA (nombre_alumno, DNI, email, tlf, asig#)

19

Gabriel Navarro

Tema 4 Diseo en bases de datos relacionales

Problemas
Anomalas de actualizacin: Si la informacin de

contacto de un alumno cambia, hay que actualizar varias


tuplas, redundancia que puede degradar el rendimiento
de la base de datos y causar problemas de integridad.
Anomalas de insercin: Si queremos aadir un nuevo
alumno, ste debe estar matriculado en alguna
asignatura: tal como est diseada la relacin, no puede
haber alumnos sin matricular en ninguna asignatura.
Anomalas de borrado: Si una asignatura deja de
impartirse y queremos borrarla, todas las tuplas
asociadas a esa asignatura han de eliminarse, con el
efecto colateral de que se puedan perder datos acerca
de alumnos.
20

Gabriel Navarro

Tema 4 Diseo en bases de datos relacionales

Problemas
Debido a la interaccin extraa entre los atributos de
MATRICULA, MATRICULA es una relacin mal diseada
Solucin:
MATRICULA (nombre_alumno, DNI, email, tlf, asig#)
MATRICULA (DNI, asig#)
ALUMNO (DNI, nombre_alumno, email, tlf)

21

Se ha resuelto el problema de redundancia


mediante descomposicin y reunin

Gabriel Navarro

Tema 4 Diseo en bases de datos relacionales

Problemas
Ejemplo 2. Consideremos la relacin:

ASIGNATURA (curso, nombre, asig#, plan, ct, cp, coste)


donde

nombre = Nombre de la asignatura


plan = Plan de estudios al que pertenece la asignatura
ct = Crditos tericos de la asignatura
cp = Crditos prcticos de la asignatura
22

Gabriel Navarro

Tema 4 Diseo en bases de datos relacionales

Problemas
Supuesto que plan, ct y cp establecen el coste,

cuando cambia la forma de calcular el coste de una


asignatura, hay que actualizar toda la tabla asignatura.

Debido a la interaccin entre sus atributos, ASIGNATURA es

una relacin mal diseada.

Diseo correcto:

ASIGNATURA

ASIGNATURA(curso,nombre,asig#,plan,ct,cp)

PRECIO(plan, ct, cp, coste)

Se ha resuelto el problema de redundancia mediante


descomposicin y reunin
23

Gabriel Navarro

Tema 4 Diseo en bases de datos relacionales

Problemas
Ejemplo 3. Consideremos la relacin:
RECOMIENDA (libro, asignatura, profesor)
donde todo libro recomendado para una asignatura
lo est por todos los profesores y viceversa (todo
profesor de una asignatura recomienda todos los libros
de sta)

24

Gabriel Navarro

Tema 4 Diseo en bases de datos relacionales

Problemas
Una instancia de la relacin RECOMIENDA podra ser:
Libro
Date
Wirth
Aho
Wirth
Date
Date
Ullman
Ullman
Ullman
Korth
Korth
Korth
Date

25

Asignatura
Po1
Po1
Po2
Po2
Bd1
Bd1
Bd1
Bd1
Bd1
Bd1
Bd1
Bd1
Bd1

Gabriel Navarro

Profesor
Prof1
Prof1
Prof2
Prof2
Prof1
Prof2
Prof3
Prof1
Prof2
Prof3
Prof1
Prof2
Prof3

Libros
Date
Ullman
Korth
Dale
Wirth
Aho

Asignaturas
Po1
Po2
Bd1

Profesores
Prof1
Prof2
Prof3

Tema 4 Diseo en bases de datos relacionales

Problemas
Cada modificacin de libros o profesores implica

modificar varias tuplas (anomala de actualizacin).


Debido a la interaccin entre sus atributos,
RECOMIENDA es una relacin mal diseada.
Diseo correcto:
RECOMIENDA

ENSEA(asignatura, profesor)
RECOMIENDA(asignatura, libro)

Se ha resuelto el problema de redundancia


mediante descomposicin y reunin
26

Gabriel Navarro

Tema 4 Diseo en bases de datos relacionales

Observaciones
La intuicin no siempre conduce a un buen diseo
El mal diseo de una BDR puede generar problemas de:
Redundancia de datos
Prdida de informacin
Inconsistencia
La mayora de estos problemas se deben a interacciones

existentes entre los atributos de una relacin


La solucin: descomposicin basada en las operaciones
de proyeccin y reunin (normalizacin)
Se hace necesaria una metodologa de diseo de BDR
27

Gabriel Navarro

Tema 4 Diseo en bases de datos relacionales

Diseo de bases de datos relacionales


Modelado
semntico

E/R
Mundo real

Proceso
algortmico
Normalizacin

Conjunto de tablas
parcialmente correctas

28

Gabriel Navarro

Tablas correctas

Tema 4 Diseo en bases de datos relacionales

Bibliografa
BATINI, CERI, NAVATHE. Diseo Conceptual de

Bases de Datos. Addison-Wesley /Diaz de Santos,


1994, captulo 6

ELMASRI, NAVATHE. Fundamentos de Sistemas de

Bases de Datos, Addison-Wesley, 2007, captulos 15 y


16.

29

Gabriel Navarro

Tema 4 Diseo en bases de datos relacionales

Das könnte Ihnen auch gefallen