Está en la página 1de 27

1

U4. Diseo de bases de datos relacionales


4.1 Diseo de esquemas relacionales de bases
de datos

Tipos de diseo

Diseo conceptual
Diseo lgico
Diseo fsico
Actividad
Estudie dependencias
Funcionales
2
U4. Diseo de bases de datos relacionales
4.1.1 Dependencias funcionales
Definicin:
El valor de un atributo en una tupla determina el valor de
otro atributo en la tupla. DF:A B, A determina
funcionalmente a B.

Dependencia transitiva:
Aparece cuando un atributo no clave es funcionalmente
dependiente de uno o ms atributos no claves.

Dependencia multievaluada (DMV).
Una restriccin que garantiza la independencia mutua de
atributos multievaluados.


Actividad
Estudie anomalas
3
U4. Diseo de bases de datos relacionales
4.1.1 Dependencias funcionales
Ejemplos:
Actividad
Estudie anomalas
Consideremos el esquema de la relacin EMP_PROY; a partir de la
semntica de los atributos, sabemos que deben cumplirse las
siguientes dependencias funcionales:
EMP_PROY
NSS NMEROP HORAS NOMBREE NOMBREPR LUGARP

Df1

Df2


Df3

(a) {NSS, NMEROP} HORAS
(b) NSS NOMBREE
(c) NMEROP {NOMBREPR, LUGARP}
4
U4. Diseo de bases de datos relacionales
4.1.2 Anomalas
Definicin:
Tipos de anomalas:
Actividad
Estudie objetivos y
Peligros de diseo en BD
Anomalas de actualizacin: Inconsistencia de los datos como resultado
de datos redundantes y actualizaciones parciales.
Anomalas de borrado: Prdida no intencionada de datos debido a que se
han borrado otros datos.
Anomalas de insercin: Imposibilidad de adicionar datos en la base de
datos debido a la ausencia de otros datos.

5
U4. Diseo de bases de datos relacionales
4.1.2 Anomalas
Uno de los retos en el diseo de la base de datos es el de obtener una
estructura estable y lgica tal que:

1.- El sistema de base de datos no sufra de anomalas de almacenamiento.
2.- El modelo lgico pueda modificarse fcilmente para admitir nuevos
requerimientos.
Objetivos de diseo de una B.D. Relacional :

Generar un conjunto de esquemas de relaciones que
permitan almacenar la informacin
Con un mnimo de redundancia
Y que a la vez facilite la recuperacin de la informacin

6
U4. Diseo de bases de datos relacionales
4.1.2 Anomalas
Propiedades indeseables de un diseo :

Repeticin de la informacin
Incapacidad para representar cierta informacin
Prdida de informacin

Repeticin de Informacin

Sucursal = {nom_sucursal, activo, cd_sucursal}
Prstamo = {nom_sucursal, no_prst, nom_cte, importe}

Suponga que desea sustituir los dos esquemas anteriores por :

Prestar = {nom_sucursal, activo, cd_sucursal, no_prst, nom_cte, importe}

7
U4. Diseo de bases de datos relacionales
4.1.2 Anomalas
Nom_Suc Activo Cd_Sucursal No_Prest Nom_Cte Importe
Centro 9 000 000 Brooklyn 17 Jones 1000
Redwood 2 100 000 Palo Alto 23 Smith 2000
Perryridge 1 700 000 Horseneck 15 Hayes 1500
Centro 9 000 000 Brooklyn 14 Jackson 1500
Mianus 400 000 Horseneck 93 Curry 500
Round Hill 8 000 000 Horseneck 11 Turner 900
Pownal 300 000 Bennington 29 Williams 1200
North Town 3 700 000 Rye 16 Adams 1300
Centro 9 000 000 Brooklyn 18 Johnson 2000
Perryridge 7 100 000 Horseneck 25 Gleen 2500
8
U4. Diseo de bases de datos relacionales
4.1.2 Anomalas
Si deseamos insertar un nuevo prstamo

En el primer diseo tendremos :

(Perryridge, 31, Turner, 1500)

En el segundo diseo tendremos :

(Perryridge,1 700 000, Horseneck, 31, Turner, 1500)




Repeticin de informacin

Adems de desperdiciar espacio, complica la actualizacin
9
U4. Diseo de bases de datos relacionales
4.1.2 Anomalas
Representacin de informacin

Si deseamos combinar los dos esquemas :

Depsito = {nom_sucursal, no_cuenta, nom_cte, saldo}

Prstamo = {nom_sucursal, no_prst, nom_cte, importe}


Para formar un esquema nuevo:

PD = { nom_sucursal, no_prst, importe, no_cuenta, saldo, nom_cte }

Cmo se representara un cliente que tiene cuenta en la sucursal
Perryridge pero no tiene prstamo o viceversa?. Con valores
vacos solamente
10
U4. Diseo de bases de datos relacionales
Prdida de informacin

Si descomponemos la relacin prstamo en dos relaciones :

Prst={nom_sucursal, no_prst, importe} Imp={importe, nom_cte}

Nom_Sucursal No_prest Importe Importe Nom_cte
======================= ==============
Centro 17 1000 1000 James
Redwood 23 2000 2000 Smith
Perryridge 15 1500 1500 Hayes
Centro 14 1500 1500 Jackson
Mianus 93 500 500 Curry
Round Hill 11 900 900 Turner
Pownal 29 1200 1200 Williams
North Town 16 1300 1300 Adams
Centro 18 2000 2000 Johnson
Perryridge 25 2500 2500 Glenn
Brighton 10 2200 2200 Brooks
4.1.2 Anomalas
11
U4. Diseo de bases de datos relacionales
4.1.2 Anomalas
Si es necesario reconstruir la relacin prstamo
Se podra utilizar IMP PREST
Con lo cual obtendramos lo siguiente :

Nom_Sucursal No_prest Importe Nom_cte
========================================
Centro 17 1000 James
Redwood 23 2000 Smith
Perryridge 15 1500 Hayes
Centro 14 1500 Jackson
Mianus 93 500 Curry
Round Hill 11 900 Turner
Pownal 29 1200 Williams
North Town 16 1300 Adams
Centro 18 1500 Johnson
Perryridge 25 2500 Glenn
Brighton 10 2200 Brooks
Centro 14 1500 Hayes
Perryridge 15 1500 Jackson
Redwood 23 2000 Johnson
Centro 18 2000 Smith
12
U4. Diseo de bases de datos relacionales
4.1.3 Descomposicin
Descomposicin de la relacin: Divisin de una relacin en
mltiples relaciones.
Actividad
Estudie Normalizacin
Y formas normales
En el proceso de descomposicin de relaciones debe
cumplir las siguientes reglas:
Sin prdida de informacin
Sin prdida de dependencias funcionales
En proyecciones independientes
13
U4. Diseo de bases de datos relacionales
4.1.4 Formas normales
Definicin:
Reglas para relaciones estructuradas que eliminan anomalas.
Formas normales
Forma normal dominio/clave (FN/DK)
Normalizacin: Es el proceso de conversin de una relacin en una forma
estndar
14
U4. Diseo de bases de datos relacionales
4.1.4 Formas normales
La normalizacin se lleva a cabo por cuatro razones:

* Estructurar los datos de forma que se puedan representar las relaciones
pertinentes entre los datos.
* Permitir la recuperacin sencilla de los datos en respuesta a las solicitudes de
consultas y reportes.
* Simplificar el mantenimiento de los datos actualizndolos, insertndolos y
borrndolos.
* Reducir la necesidad de reestructurar o reorganizar los datos cuando surjan
nuevas aplicaciones.
Pasos de la normalizacin:

1.- Descomponer todos los grupos de datos en registros bidimensionales.
2.- Eliminar todas las relaciones en la que los datos no dependan completamente
de la llave primaria del registro.
3.- Eliminar todas las relaciones que contengan dependencias transitivas.
15
U4. Diseo de bases de datos relacionales
4.2 Modelo E-R y la normalizacin
La primera forma normal se defini para prohibir los atributos
multivaluados, los atributos compuestos y sus combinaciones.

Una relacin est en 1FN si y solo si todos sus dominios simples
subyacentes contienen solo valores atmicos (o indivisibles).
DEPARTAMENTO
NOMBRED NMEROD NSSGTED LUGARESD
Investigacin 5 333445555 Beln, Sacramento,
Higueras
Administracin 4 987654321 Santiago
Direccin 1 888665555 Higueras
Esquema de relacin que no est en 1FN.
Actividad
Estudie segunda
Forma normal
16
U4. Diseo de bases de datos relacionales
4.2 Modelo E-R y la normalizacin
Un esquema de relacin est en segunda forma normal
2FN si y solo si est en 1FN y todos los atributos no clave
dependen funcionalmente de manera completa de la clave
primaria.
Actividad
Estudie tercera forma
normal
EMP_PROY
NSS NMEROP HORAS NOMBREE NOMBREPR LUGARP

Df1

Df2


Df3

Normalizacin 2FN
17
U4. Diseo de bases de datos relacionales
4.2 Modelo E-R y la normalizacin
NSS NMEROP HORAS
NSS NOMBRE
NMEROP NOMBREPR LUGARP
Esquema de Proyecto 1
Esquema de Proyecto 2
Esquema de Proyecto 3
Df 1
Df 2
Df 3
Actividad
Estudie tercera forma
normal
18
U4. Diseo de bases de datos relacionales
4.2 Modelo E-R y la normalizacin
La tercera forma normal de basa en el concepto de
dependencia transitiva.
De acuerdo con la definicin original de Codd, un esquema
de relacin R esta en 3FN si y solo si esta en 2FN y todos
los atributos no clave dependen de manera no transitiva de
la clave primaria.
La transitividad se da cuando un atributo no clave
depende funcionalmente de un atributo que a su vez
depende de la clave primaria.
19
U4. Diseo de bases de datos relacionales
4.2 Modelo E-R y la normalizacin
NOMBREE NSS FECHAN DIRECCIN NMEROD NOMBRED NSSGETD
EMP_DPTO
Transitividad
NOMBREE NSS FECHAN DIRECCIN NMEROD
NMEROD NOMBRED NSSGETD
Normalizacin 3 FN
ED1
ED2
Actividad
Estudie forma
Normal BCFN
20
U4. Diseo de bases de datos relacionales
4.2 Modelo E-R y la normalizacin
BCFN (Forma Normal de Boyce-Codd)
Un esquema de relacin est en FNBC si, y solo si todo
determinante es una clave candidata.
Relacin Proyecto-Pc-Programador
No-Proyecto
Programador
PC
Normalizacin BCFN
Relacin Programador-PC Relacin Proyecto-Programador
Programador PC No_proyecto Programador
21
U4. Diseo de bases de datos relacionales
4.2 Modelo E-R y la normalizacin
BCFN (Forma normal de Boyce-Codd)
Otro ejemplo
Relacin Alumno-Materia-Asesor
No-Control
Nombre-Asesor
Materia
Normalizacin BCFN
Relacin Alumno-asesor Relacin Asesor-materia
No-Control Nombre-asesor Nombre-asesor Materia
Actividad
Estudie cuarta
forma normal
22
U4. Diseo de bases de datos relacionales
Definicin
4.2 Modelo E-R y la normalizacin
Cuarta forma normal (4FN)
Un esquema de relaciones R est en 4FN con
respecto a un conjunto D de dependencias funcionales y de
valores mltiples s, para todas las dependencias de valores
mltiples en D de la forma X->->Y, donde X R y Y R, se
cumple por lo menos una de estas condiciones:

* X->->Y es una dependencia de valores mltiples trivial.
* X es una sperllave del esquema R.

23
U4. Diseo de bases de datos relacionales
4.2 Modelo E-R y la normalizacin
NOMBREE NOMBREPR NOMBRED
Silva X Jurdico
Silva Y Administrativo
Silva X Administrativo
Silva Y Jurdico
Normalizacin
4FN
NOMBREE NOMBRED
Silva Jurdico
Silva Administrativo
EMP-PROY EMP-DEP
NOMBREE NOMBREPR
Silva X
Silva Y
Actividad
Estudie quinta forma
normal y FN/DK
Cuarta forma normal (4FN)
NOMBREE NOMBREPR NOMBRED
EMPLEADOS
24
U4. Diseo de bases de datos relacionales
4.2 Modelo E-R y la normalizacin
La quinta forma normal (5FN) se refiere a dependencias que son extraas .
Tiene que ver con afinidades que pueden dividirse en subafinidades (como se
han venido haciendo), pero no pueden reconstruirse.
5FN elimina las dependencias de reunin (join y unin). Estas
dependencias son principalmente de inters torico y de muy dudoso valor
prctico.
FN/DK Fagin (1981) propuso esta forma normal pero no proporcion un
metodo general para convertir una relacin que no est en FN/DK en una
relacin que est en FN/DK.
Actividad
Estudie reduccin de
diagramas E-R a tablas

25
U4. Diseo de bases de datos relacionales
4.3 Reduccin de un esquema E-R a tablas
Empleado
Tcnico Ingeniero Secretaria
RapidezTecleo GradoT
TipoIng
Nombre NSS FechaNac Direccin TipoTrabajo
Nombre Inic
Apellido
E
S
Ejemplo reduccin de diagrama E-R a tablas
26
U4. Diseo de bases de datos relacionales
4.3 Reduccin de un esquema E-R a tablas
Empleado
NSS NombreP Inic Apellido FechaNac Direccin TipoTrabajo
Secretaria
NSS RapidezTecleo
Tcnico
NSS GradoT
Ingeniero
NSS Tipolng
Tablas resultantes
27
U4. Diseo de bases de datos relacionales
4.4 Anlisis de un caso prctico
Use el proceso de normalizacin para disear un modelo conceptual de base de datos para la siguiente relacin:
CLIENTE-ORDEN
No_Cte Nom_Cte Ciudad_Cte PagoxEntrega Precio_Unit No_Inv Cantidad Fecha
=================================================================================
C1 JUAN COLIMA 1.35 8.20 13 100 5-JUN
C1 JUAN COLIMA 1.35 8.20 13 200 12-OCT
C2 JANET TECOMAN 1.75 4.00 12 100 15-MAY
C2 JANET TECOMAN 1.75 8.20 13 100 15-MAY
C2 JANET TECOMAN 1.75 2.00 11 300 15-MAY
C3 MOISES COLIMA 1.35 4.00 12 100 10-AGO
C3 MOISES COLIMA 1.35 2.00 11 200 10-OCT
C4 RITA MANZANILLO 1.95 10.50 14 100 5-MAY

Responda a las siguientes preguntas:
1. Cul es la clave de esta relacin?
2. En cul forma normal est la relacin?
3. Contiene la relacin una dependencia transitiva? En caso afirmativo, cul es?
4. Contiene la relacin anomala de eliminacin?. En caso afirmativo descrbala.
5. Efecte la normalizacin de acuerdo a las DF. A qu forma normal paso la relacin?
6. Desarrolle el diagrama E-R para las relaciones resultantes.

También podría gustarte