0% encontró este documento útil (0 votos)
32 vistas34 páginas

DF FN

R1. La descomposición de relaciones consiste en sustituir el esquema de una relación por dos o más esquemas de relación. R2. Esto puede causar problemas como la pérdida de instancias o el incumplimiento de dependencias funcionales. R3. Las formas normales son conjuntos de restricciones sobre esquemas de relaciones que evitan problemas de redundancia mediante el análisis de dependencias funcionales.
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
32 vistas34 páginas

DF FN

R1. La descomposición de relaciones consiste en sustituir el esquema de una relación por dos o más esquemas de relación. R2. Esto puede causar problemas como la pérdida de instancias o el incumplimiento de dependencias funcionales. R3. Las formas normales son conjuntos de restricciones sobre esquemas de relaciones que evitan problemas de redundancia mediante el análisis de dependencias funcionales.
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
Está en la página 1/ 34

Refinamiento de Esquemas

Base de Datos
Valeria Beratto Ulloa
[email protected]
Introducción
Autor País Cod-Libro Título Editorial
Date, C USA 01 DB AD
Date, C USA 02 SQL AD
Kim, W China 03 PL/SQL ACM
Gardarin Chile 04 SQL(I) Verlag
Gardarin Chile 05 SQL(II) Verlag

 Problemas??
1. Redundancia de datos
2. Anomalías de modificación de datos
3. Anomalías de inserción de datos
4. Anomalías de borrados de datos
Introducción (II): Descomposición
de Relaciones
 Consiste en sustituir Autor País
el esquema de la Date, C USA
relación por dos o Kim, W China

más esquemas de Gardarin Chile

relación.

Cod- Autor Título Editorial


Libro
01 Date, C DB AD
02 Date, C SQL AD
04 Kim, W PL/SQL ACM
05 Gardarin SQL(I) Verlag
06 Gardarin SQL(II) Verlag
Introducción (III): Problemas con
la Descomposición de Relaciones
1. Hace falta descomponer la relación??
2. Qué problemas provoca la
descomposición??
 Resp:
1. Las formas normales
2. Se deben tener dos propiedades:
1. Reunión sin pérdida: Recuperar todas las
instancias.
2. Conservación de las dependencias: Cumplir
cualquier restricción de la relación origina
Introducción (IV)

 Formas Normales (FN): Conjunto de


restricciones sobre tablas relacionales
que evitan los problemas de
redundancia de datos.
 Dependencias Funcionales (DF): Es
un tipo de RI que generaliza el
concepto de clave y son dadas por las
reglas de negocio.
Dependencias Funcionales

 Sea R el esquema de una relación y sean


X, Y conjuntos no vacíos de atributos de R.
 Diremos que Y depende funcionalmente de
X (X→Y) o X determina a Y. Si para cada
par de tuplas t1 y t2 de R
t1.X = t2.X , entonces t1.Y = t2.Y
Dependencias Funcionales
La siguiente relación satisface la A B C D
DF AB→C.??
AB es clave??
a
1 b
1 c
1 d
1

Si se inserta la tupla a


1 b
1 c
1 d
2

< a ,b ,c ,d >, se viola la DF??


2 1 1 1 a
1 b
2 c
2 d
1

Una instancia de R es legal, si a


2 b
1 c
3 d
2

satisface todas las RI.


Las DF no exige que el conjunto
X sea mínimo, pero para que sea
X clave debe ser mínimo.
Dependencias Funcionales

 Al tener el LIBRO (código, título,


editorial, páginas).
código→ código, título, editorial, páginas (1)
 Código es mínimo, por que no es redundante.
 Si agregamos código, título→ editorial, páginas, no es
minimal, por que es un subconjunto de la DF (1).
 Para que sea clave de ser mínimo
Dependencias Funcionales
Si tenemos:
A→C

C→B

Si dos tuplas tiene el mismo valor en A, debe tener el


mismo valor C, y por lo tanto debe tener el mismo B.
Entonces podemos decir que se cumple A→B.

Una DF d está implícita en un conjunto D, si se cumple


en todas las instancias que satisfacen todas DF de D.
Dependencias Funcionales

 Diremos que Y tiene dependencia


funcional trivial de X, si Y forma parte
del conjunto de atributos de X
 autor, cod →autor
 alumno, nota→ nota
 libro→ libro
Axiomas de Armstrong
 El conjunto de todas las DF implícitas en un
conjunto D dado de DF se denomina cierre de D y
se denota por D+.

 Para obtener D+, con los axiomas de Armstrong.

 Consideramos X,Y y Z conjunto de atributos no


vacíos.

 Reflexividad: Si Y es subconjunto de X, entonces X→Y.


 Aumentatividad: Si X→Y, entonces XZ→YZ.
 Transitividad: Si X→Y e Y→Z entonces X→Z
Axiomas de Armstrong

 Otras reglas
 Unión: Si X→Y e X→Z, entonces X→YZ.
 Descomposición: Si X→YZ, entonces X→Y e
X→Z.
 Ejemplo: Considere R(A,B,C) con: A→B y
B→C
 Por reflexividad: A→A, B→B, C→C
 Por transitividad: A→C
 Por aumentatividad A→B con C, AC→BC
Ejercicio
Dada la siguiente relación R(A,B,C,D,E) y las siguientes
dependencias funcionales determine:
 AC
 BD
 CB
 BDE
 Demuestre ABE, por axiomas de Armstrong
 Determine clave o claves candidatas
Teoría de Normalización
 Técnica formal de análisis y organización de datos; trata de
evitar la redundancia y anomalías de actualización.

 Introduce formalización en el diseño lógico de BDR.


 Además permite mecanizar parte del proceso al disponer de
instrumentos algorítmicos de ayuda al diseño.
 Proceso de normalización: disminuye las anomalías de
actualización, pero penaliza las consultas (combinación
consume muchos recursos).
Formas normales
 Un esquema de relación está en una determinada forma normal si
satisface un determinado conjunto específico de restricciones
definidas sobre los atributos del esquema (dependencias).

 1ª FN (Codd, 1970)
 Concepto de relación normalizada.
 2ª, 3ª FN (Codd, 1970), FNBC (Boyce/Codd, 1974)
 Basadas en análisis de dependencias funcionales.
 4ª FN. Fagin, 1977
 Basada en análisis de dependencias multivaluadas.
 5ª FN. Fagin, 1979
 Basada en análisis de dependencias de proyección / combinación.
Formas Normales ()
Toda relación en FNBC está en la 3FN, toda relación en 3FN está en
2FN, y toda relación en 2FN está en 1FN.

Una relación o tabla está en 1FN si cada atributo no contiene


campos multivaluados.

 Por la propia definición del modelo de datos relacional, NO se admiten


campos multivaluados. En consecuencia, TODAS las relaciones del
modelo de datos relacional están automáticamente en 1FN.
Ejemplo 1FN
Cliente

IDCl Nombre Apellido Teléfono

123 Rachel Ingram 555-861-2025

555-403-1659
456 James Wright
555-776-4100

789 Cesar Dure 555-808-9633

Cliente
ID Cliente Nombre Apellido Teléfono 1 Teléfono 2
123 Rachel Ingram 555-861-2025
456 James Wright 555-403-1659 555-776-4100
789 Cesar Dure 555-808-9633
Formas Normales (2FN)

Una relación R está en 2FN si está en


1FN y cada atributo no clave depende
por completo de los atributos claves.

Atributo no clave o no primos: si no pertenece


a alguna de las claves candidatas de R.
Atributo clave o primos: pertenece a alguna
de las claves candidatas de R.
Formas Normales (2FN)
 Ejemplo:
Eval (alumno, edad, asignatura, dpto, nota)
y DF son:
alumno →edad
asignatura → dpto.
alumno,asignatura →nota

Está en 2FN??

• La clave candidata es: (alumno,asignatura), por que todos


los atributos depende funcionalmente de ella.
• Pero se encuentra en 2FN??, no porque edad depende en
forma parcial de la clave candidata.
Formas Normales (2FN)

 Ejemplo:
Qué debemos hacer?? Descomponer
R1(alumno,edad), donde alumno→edad
R2(asignatura,dpto), donde asignatura→depto
R3(alumno, asignatura, nota), donde
alumno,asignatura→nota
Formas Normales (2FN)
 Dada R(A,B,C,D) con DFs:
AB→ C
C→D
A→C
Está R en 2FN?
No, por que B no depende de la clave

 Dada R(A,B,C,D,E) con DFs:


AB → CD
C→E
Está R en 2FN ?
Si, todos los atributos no claves depende por completo de los atributos claves.

 Dada Libro(código, isbn, título, autor, país)


código→isbn
isbn→código, título, autor
autor→país
Está Libro en 2 FN ?
Formas Normales (3FN)
Una relación está en 3FN si está en 2FN y cada
atributo no clave depende de manera no transitiva de
alguna de las claves.

Si tenemos Libro(código, isbn, título, autor, país)


código→isbn
isbn→código, título, autor
autor→país

País depende transitivamente de código o isnb, por lo


tanto no se encuentra en 3 FN
Formas Normales (3FN)
Para que quede en 3FN debemos
descomponer:
R1 (autor, país)
R2(código, isbn, título, autor)
Formas Normales (3FN)
Dada R(A,B,C,D,E) con DFs:
AB → CDE
C→E
Está R en 3FN?
No, por que E igual depende transitivamente de la
clave candidata

Dada R(A,B,C,D,E) con DFs:


AB → CDE
Está R en 3FN?
Sí, por que todos los atributos no claves dependen
por completo de la clave
Formas Normales (Boyce –Codd)
• Una relación R está FNBC si se cumplen
algunas de las siguientes afirmaciones,
para cada DF en D X→A:
• A es subconjunto de X o
• X es una super clave
• Una relación está en FNBC si los
determinantes de las DFs son claves
candidatas.

• Toda relación FNBC también está en 3FN


Formas Normales (Boyce –Codd)

• Ejemplo:
• Considere R (A,B,C)
• AB→C
• C→A
Está en FNBC??
Claves Candidatas: AB o BC
No está en FNBC, por qué??
C no es llave candidata
Formas Normales (Boyce –Codd)

 En general, una relación no está en


FNBC cuando existen dos o más
llaves candidatas para la relación,
éstas son llaves compuestas (con más
de un atributo) y su intersección no es
vacía
Formas Normales (Boyce –Codd)

 R(A,B,C) y DF
 AC→B
 B→C
 está en FNBC??
 No, porque las llaves candidatas son:
AC o AB y la intersección es A
Formas Normales: Ejercicios

 R (ABCDE) y las DF:


 A→B
 BC→E
 ED→A
 Cuáles son las claves candidatas??
 Está R en 3FN?
 Está R en FNBC?
Descomposición de relaciones

Esquema relación universal R

 R = (A1, A2, ..., An), que contiene todos los atributos de


la BD

Descomposición de R en D

 D = (R1, R2, ..., Rm), que se obtiene mediante la


descomposición utilizando las dependencias funcionales
 Se debe verificar:
Ui=1..m Ri = R
Preservación de dependencias

Preservación de dependencias

 Se mantiene el conjunto dfs de R con


la unión de todas las dfs de Ri
Join sin Pérdida

Definición

 Una descomposición D = (R1, R2, ...,


Rm) de R tiene la propiedad de JSP
respecto al conjunto de dfs F sobre R, si
por cada instancia de relación r de R que
satisfaga F, se cumple lo siguiente:

(πR1(r), ..., πRm(r)) = r


Join sin Pérdida

Propiedad

 D = (R1, R2) de R tiene JSP respecto


a F sobre R sii
 la df (R1 ∩ R2) -> (R1 - R2) está en F+
ó
 la df (R1 ∩ R2) -> (R2 - R1) está en F+
Ejemplo JSP
 R (ABCDE) y las DF:
• A→B
• BC→E
• ED→A
R1(A,B) y R2(ACDE)
R1 ∩ R2 -> R1-R2 ó
R1 ∩ R2 -> R2-R1
A->B ó A->CDE

Como A->B existe o la puedo determinar, la


descomposición es JSP

También podría gustarte