You are on page 1of 42

Lic.

José Luis Zeballos Abasto


Contexto
Problema a
Modelo
modelar  Entidades
(E)ER
 Atributos

Normalización
Modelo
 Relaciones
Normalización Relacional
(datos)

 Propiedades
Normalización
 Es un proceso que comprueba que cada tabla
cumple con determinadas condiciones
 Garantiza la no redundancia de información y la
coherencia con la representación del universo del
discurso
 Permite solucionar errores de diseño para
mejorarlos.
 Se realiza para evitar: pérdida de información,
redundancia entre los datos, pérdida de
dependencias funcionales.
EJEMPLO DE DISEÑO
INADECUADO
Dependencias
 Las dependencias son propiedades
inherentes al contenido semántico de
los datos
 son un tipo especial de restricción de
usuario en el modelo relacional, que
afecta únicamente a los atributos
dentro de una única relación y;
 Se debe cumplir para cualquier
extensión de un esquema de relación
Dependencias
 Un esquema de relación es un par de la
forma:
A: conjunto de atributos de la relación
R(A,DEP) DEP: conjunto de dependencias existentes entre
los atributos

DC
DF(dependencia funcional)
DJ como caso particular de:
DM DM(dependencia Multivaluada)
como caso particular de:
DF DJ(Dependencia Jerárquica)
como caso particular de:
DC(Dependencia de combinación)
DEPENDENCIA FUNCIONAL
Sea R(A,DF), y sean X, Y dos subconjuntos de A, a los que
llamamos descriptores. Se dice que Y depende
funcionalmente de X o que X implica o determina a Y, se
denota como X  Y sí, y solo sí, a cada valor de x del
atributo X, le corresponde un único valor de y del atributo Y.

Ejemplo:
Descriptores equivalentes
Ejemplo:
Ejemplo:
sucursal(nombre_sucursal,ciudad_sucursal,activo)
nombre_sucursal  ciudad_sucursal, activo
nombre_sucursal  activo

Inscripción(idestudiante, sigla, gestión, semestre, nota)


idestudiante, sigla, gestión, semestre  nota
Ejemplo:
De forma de Grafo:
IDestudiante Nombre_estudiante, dirección
Nota
Código_curso Nombre_curso, número_modulos

IDestudiante Nombre_estudiante, dirección

Nota

Codigo_curso Nombre_curso, número_modulos


EJERCICIOS
Para la siguiente relación identifique sus dependencias funcionales:

EMP_PROYECTO
(CI, CodPry, horas, nombre_Emp, nombre_Pry,
localización_Pry)
EJERCICIOS
Dependencia Funcional plena y
completa
 Se dice que Y tiene dependencia
funcional completa o plena de X, si
depende funcionalmente de X, pero no
depende de ningún subconjunto de
éste.
Dependencia funcional trivial

Dependencia funcional elemental


 Decimos que una dependencia funcional X  Y es
elemental si Y es un atributo único no incluido en X, y no
existe X’ incluido en X tal que X’  Y, es decir, la
dependencia funcional elemental es una dependencia
funcional completa, no trivial y en la que el implicado es
un atributo único.
EJERCICIOS
SE_HOSPEDA
( #cliente, Nombre_cliente, #habitación, precio_noche, tipo_habitación,
fecha_entrada)

(#habitación, fecha_entrada)  #cliente


(#habitación, fecha_entrada)  #Nombre_cliente
#habitación  #precio_noche
#habitación  #tipo_habitación
Dependencia funcional transitiva
 Dado el esquema de relación R(X, Y, Z)
en las que existen las siguientes
dependencias funcionales
EJEMPLO
Código_materia  Código_carrera
Código_carrera  Código_Facultad
Además Código_carrera --/ Código_materia,

entonces Codigo_materia  Codigo_Facultad

se_dicta

N:1
N
pertenece :
1
Implicación Lógica
 El conocimiento de ciertas dependencias funcionales nos puede
llevar a inferir otras que no se encontraban en el conjunto inicial.
Dada la R(A,DF) se puede deducir nuevas dependencias que sean:
consecuencia lógica del conjunto de partida (DF │= f)
derivación (DF │─ f): obtención de nuevas dependencias a
partir de la aplicación de reglas.
CIERRE (DF+) : es el conjunto de todas las dependencias que son
consecuencias lógicas de DF.
Axiomas de Armstrong
Axiomas de Armstrong son el conjunto completo de reglas
deductivas que nos permite deducir cualquier otra
dependencia cierta (teorema de la teoría ) .

Sean los descriptores X, Y, Z, W para los axiomas de


Armstrong, es decir, las reglas de derivación de
dependencias establecen:
Axiomas de Armstrong
TAREA
 Describa dos ejemplos de cada uno de
los axiomas anteriormente mencionados
(Proyecto de MULTICINE)
Ejemplo
A partir de la siguiente definición:
R=({A,B,C,G,H,I}, DF)
DF={ A B, A C, CG H,
CG  I, B  H}
Verificar las siguientes dependencias.
Cuales son los axiomas que se aplican para
verificar las siguientes dependencias?
1) A  H.
2) CG  HI
3) AG  I
Algoritmo para cálculo de
cerradura de atributos
1. Sea X un conjunto de atributos que terminarán por
convertirse en la cerradura. Primero inicializamos X para
que sea {A1, A2,…An}.
2. A continuación buscamos varias veces alguna
dependencia funcional B1, B2,…Bn  C tal que todos los
{B1, B2,…Bn} se encuentren en el conjunto de atributos X,
no así C. Agregamos entonces C al conjunto X
3. Repetimos el paso (2) cuantas veces sea necesario
hasta que no se pueda agregar más atributos a X. Como
X sólo puede crecer y como el número de atributos de
toda relación ha de ser finito, llega el momento en que no
podemos agregar más a X.
4. Una vez que no puedan agregarse más atributos al
conjunto X, éste será el valor correcto de {A1, A2,…An}
Ejemplo
Sea R({A, B, C, D, E , F },DF)
DF= { AB  C; BC  AD; D  E; CFB }

¿Cuál es la cerradura de {A,B}, es decir {A, B}+ ?


X = {A,B}
Comprobar si:
a) AB  D
b) D  A
Ejercicio 1.
Sea: R({A, B, C, D, E , F },DF)
DF= { A BC; B  E; CD  EF}

Aplicando los axiomas de Armstrong


demostrar AD  F
Ejercicio 2.
Sea: R({A, B, C, D, E , F },DF)
DF= { A BC; E  CF; B  E; CD 
EF}
Calcular {A,B}+
TEORÍA FORMAL DE LA NORMALIZACIÓN
DE ESQUEMAS RELACIONALES

R(A, DF) ----- {Ri(Ai, DFi)}ni=1


Son tres las propiedades que han de cumplir
los esquemas de relación Ri, para ser
equivalentes a R y mejores que R; éstas
propiedades son:

1. Conservación de la información
2. Conservación de las dependencias
3. Mínima redundancia de los datos
(normalización de las relaciones)
TEORÍA FORMAL . . .
Si se cumplen las dos primeras
propiedades, entonces:

{ Ri } es equivalente a R

Si las relaciones están en formas


normales

{ Ri } es “mejor” que R
Conservación de la información
Para que se cumpla esta propiedad son
precisas dos condiciones:
a) Conservación de los atributos
n
U Ai = A
i=1

b) Conservación del contenido (de las tuplas)


n
* ri = r
i=1
Conservación de las Dependencias

n
( U DFi )+ = DF+
i=1
FORMAS NORMALES
 COOD(1970): Propuso inicialmente tres formas
normales basadas en las dependencias funcionales:
1FN, 2FN, 3FN

 COOD(1974): Debido a que persistían problemas en


relaciones en 3FN. Cood introduce una definición
más restrictiva de la tercera forma normal,
denominado Forma Normal de Óbice-Cood (FNBC)

 FAGIN(1977 - 1979), introduce la 4FN o


posteriormente la 5FN. Basados en otro tipo de
dependencias (multivaluadas, proyección-
combinación)
PRIMERA FORMA NORMAL
 Definición 1: Se dice que una relación esta
1FN cuando cada atributo sólo toma una
valor del dominio simple subyacente
[Adoración de Miguel].

 Definición 2: Una relación R se encuentra


en 1FN si y solo sí por cada renglón
columna contiene valores atómicos
[Internet].
Ejemplo
SEGUNDA FORMA NORMAL
 Basado en el concepto de dependencia plena y
las interrelaciones existentes entre los atributos
principales (que se encuentran en alguna de las
claves) y no principales (que no se encuentran en
ninguna de las claves) de una relación.

 Definición 1[Adoración de Miguel]: Se dice que


una relación está en 2FN si:
 Esta en 1FN
 Cada atributo no principal tiene dependencia funcional
completa respecto de cada una de las claves.
2FN…
Afirmaciones
 Cualquier relación binaria siempre está en
2FN.
 Cualquier relación que tiene una clave
simple(es decir con un solo atributo), está
en 2FN.
 Cualquier relación en la que todos sus
atributos son principales( es decir, forman
parte de alguna clave) está en 2FN.
Ejemplo

SOLUCIÓN
TERCERA FORMA NORMAL
 Se basa en el concepto de dependencia transitiva
 Definición 1:
 Está en 2FN
 No existe ningún atributo no principal que depende
transitivamente de alguna clave R.

 Afirmaciones
 La 3FN no se cumple cuando existen atributos no
principales que dependan funcionalmente de otros no
principales.
 Toda relación binaria se encuentra automáticamente en
3FN
 Toda relación con atributos principales o con un único
atributo no principal está en 3FN.
Ejemplo:
R({c, e, a, b, d, f}, DF)
DF={ c, e  b; c, e  d; b  a, d  f}

Solución:
FNBC (Forma Normal de Boyce –
Codd)
 Una relación está en BCNF:
 Si está en 3FN
 Si y solo sí, todo determinante es una clave
candidata
FNBC . . .
Ejemplo 1

R({a,b,c},DF) DF={a, b  c
c  b}
b: es determinante pero no es clave candidata,
porque no determina c. Entonces R no está
en FNBC.
R1( a, c) DF={a  c}
R2( c, b) DF={c  b}
FNBC . . .
Ejemplo 2:

R({a,b,c,d},DF) DF={a ↔ b
a, c  d}

c: es determinante pero no es clave candidata,


porque no determina a d. Entonces R no está
en FNBC.

R1(a,b) DF1: {a ↔ b}
R2(a, c, d) DF2: {a, c  d}

You might also like