La descarga está en progreso. Por favor, espere

La descarga está en progreso. Por favor, espere

Dependencias Funcionales

Presentaciones similares


Presentación del tema: "Dependencias Funcionales"— Transcripción de la presentación:

1 Dependencias Funcionales
Francisco Moreno 02/04/2017 Bases de Datos I

2 Introducción La normalización de relaciones pretende diseñar “buenas” relaciones El concepto de dependencia funcional (DF) es un paso esencial para el proceso de normalización Bajo los criterios de minimizar la redundancia* y evitar cierto tipo de anomalías (se ven posteriormente) * Hasta cierto punto 02/04/2017 Bases de Datos I

3 DF: Definición 1 Dada una relación R, el atributo y  R depende funcionalmente del atributo x  R si y solo si: - Un único valor de y en R está asociado con cada valor de x en R (en cualquier momento dado) x y y pueden ser atributos compuestos 02/04/2017 Bases de Datos I

4 DF: Definición 2 Dada una relación R, el atributo y  R depende funcionalmente del atributo x  R si y solo si siempre que dos tuplas concuerden en su valor de x, deben por fuerza concordar en su valor de y Las definiciones 1 y 2 son equivalentes 02/04/2017 Bases de Datos I

5 Representación de DF x  y Lectura: x determina funcionalmente a y
O también: y depende funcionalmente de x 02/04/2017 Bases de Datos I

6 Ejemplo Sea: PROVEEDOR NIT nombre calif ciudad 101 Colanta A Bello
201 Pakita A Rionegro 301 Zarzal B- Bello Analizar si en esta muestra se cumplen las siguientes DF: NIT  nombre nombre  calif calif  ciudad NIT  calif nombre  ciudad ciudad  calif NIT  ciudad nombre  NIT NIT  {calif,ciudad} CP CA Nota: una muestra de datos por sí sola es insuficiente para determinar si una DF se cumple en una relación. 02/04/2017 Bases de Datos I

7 Observaciones Sea c una clave candidata (CC)  R y atr un atributo  R entonces siempre se cumple que: c  atr;  atr  R Por lo tanto, la CP de una relación R determina funcionalmente a todos los atributos de R ¿Puede un atributo que NO sea CC determinar funcionalmente a otro? ¿Pueden dos atributos determinarse mutuamente? 02/04/2017 Bases de Datos I

8 Ejemplo CP compuesta Sea: ENVÍO
año_fundación NIT prod cantidad tipo_prod Leche Lácteo Chorizo Embutido Yogur Lácteo Pasas Fruta Leche Lácteo Pasas Fruta Leche Lácteo 02/04/2017 Bases de Datos I

9 NIT  año_fundación Verdadero (V) NIT  cantidad Falso(F)
Note que NIT por sí solo NO es CC. Obsérvese que: NIT  año_fundación Verdadero (V) NIT  cantidad Falso(F) prod  tipo_prod V {NIT, prod}  cantidad V {NIT, prod}  año_fundación V {NIT, prod}  tipo_prod V {NIT, prod}  {NIT, cantidad, tipo_prod} V tipo_prod  NIT F Note que producto por sí solo no es CC. 02/04/2017 Bases de Datos I

10 DF Completa: Definición
El atributo y  R es dependiente POR COMPLETO del atributo x  R, si depende funcionalmente de x y no depende funcionalmente de ningún z, donde z  x. Ejemplo. Sean las DFs de ENVÍO en la muestra dada: NIT año_fundación {NIT, producto}  año_fundación De estas dos DFs ¿cuál es completa? Para llevar a cabo el proceso de normalización se deben encontrar las DF completas 02/04/2017 Bases de Datos I

11 Axiomas de Armstrong para DFs
Sean A,B,C,D atributos (pueden ser compuestos) de una relación R. 1. Reflexión Si B  A, entonces A  B 2. Aumento Si A  B entonces AC  BC 3. Transitividad Si A  B y B  C entonces A  C AC representa la unión de A y C. Por simplicidad, se escribirá sin las llaves {A, C} 02/04/2017 Bases de Datos I

12 Teoremas A  A Demostración Si A  BC, entonces: A  B
1. Autodeterminación A  A Demostración 2. Descomposición Si A  BC, entonces: A  B A  C 02/04/2017 Bases de Datos I

13 Teoremas 3. Unión Si A  B y A  C entonces A  BC 4. Composición
Demostración 4. Composición Si A  B C  D entonces AC  BD 02/04/2017 Bases de Datos I

14 5. Teorema de Unificación de Darwen Si A  B C  D
Entonces: A  {C – B}  BD Tarea: Demostrarlo. A partir de un conjunto dado de DFs en una relación R, por medio de los teoremas y axiomas se pueden derivar otras DFs existentes en R Los axiomas son completos y confiables* * Del inglés “sound”. 02/04/2017 Bases de Datos I

15 Ejemplo Dado el conjunto S de DFs en R: CD  EF B  E A  BC S
¿Se cumple que AB  EC? ¿CDA  F? ¿AB  FC? S 02/04/2017 Bases de Datos I

16 Cierre de un atributo K bajo S: K
+ S Cierre (K, S) { cierre  K FOREVER ∀ FD  S: x  y DO IF x  cierre THEN cierre = cierre  y END IF END ∀ IF cierre no cambió THEN RETURN cierre END FOREVER Nota: K puede ser un atributo compuesto 02/04/2017 Bases de Datos I

17 S Ejemplo: Sea A  BC B  E CD  EF Determinar K , para K = AB
¿Cuál es el significado de K ? ¿Cuál es su utilidad? S + S + S 02/04/2017 Bases de Datos I

18 S-: Recubrimiento (cierre) mínimo (canónico) de S.
S+: Cierre de S. Conjunto de todas las posibles DFs que se pueden derivar a partir de S. S-: Recubrimiento (cierre) mínimo (canónico) de S. Subconjunto mínimo de DFs  S a partir del cual se puede generar S. ¿Utilidad de estos cierres? Algoritmos para generarlos… 02/04/2017 Bases de Datos I

19 Atributos Extraños (Raros)
Si S es un conjunto de DFs en una relación R y x  y  S, entonces el atributo a es extraño (raro) en x  y si: x = az, y S implica a {S – {x  y}}  {z  y} o y = aw, y {S – {x  y}}  {x  w} implica a S 02/04/2017 Bases de Datos I

20 Algoritmo para calcular S-
S-(S) { Repeat { - Si existen x  y  x  z sustituir por x  yz - Si existe alguna DF con un atributo extraño, eliminarlo de dicha DF } Until S no cambie } 02/04/2017 Bases de Datos I


Descargar ppt "Dependencias Funcionales"

Presentaciones similares


Anuncios Google