Diseño Eficiente BD
Click here to load reader
description
Transcript of Diseño Eficiente BD
![Page 1: Diseño Eficiente BD](https://reader037.fdocumento.com/reader037/viewer/2022100605/559e2ac11a28abed0b8b4700/html5/thumbnails/1.jpg)
Diseño Eficiente deBases de Datos
Lic. Marcelo VinjoyGerman Viscuso
![Page 2: Diseño Eficiente BD](https://reader037.fdocumento.com/reader037/viewer/2022100605/559e2ac11a28abed0b8b4700/html5/thumbnails/2.jpg)
¿Que se busca en el diseño de una BD?
• Conservación de la información.• Conservación de las dependencias funcionales.• Mínima redundancia de datos (forma normales).
![Page 3: Diseño Eficiente BD](https://reader037.fdocumento.com/reader037/viewer/2022100605/559e2ac11a28abed0b8b4700/html5/thumbnails/3.jpg)
A continuación se muestra un ejemplo de diseño inadecuado de un esquema de base de datos.
Surgen problemas de redundancia que implican anomalías de altas, bajas y modificaciones.
![Page 4: Diseño Eficiente BD](https://reader037.fdocumento.com/reader037/viewer/2022100605/559e2ac11a28abed0b8b4700/html5/thumbnails/4.jpg)
17/09/98LLXXXA223HaedoLanesJulio13235555
12/11/98LLXXXA223MoronHacheCarlos13230001
10/10/98LLYYB44CastelarGarciaLuis13240009
11/11/98LLYYB44MoronHacheCarlos13230001
21/09/98MMZZZC564CastelarGarciaLuis13240009
17/09/98MMZZZC564MoronHacheCarlos13230001
15/09/98MMZZZC564HaedoLanesJulio13235555
14/10/98LLXXXA223HaedoLanesJulio13235555
12/11/98LLYYB44HaedoLanesJulio13235555
10/10/98LLXXXA223MoronHacheCarlos13230001
fecharequisitoNom_cursoCod_cursolocalidadapellidonombrematricula
Tabla ALUMNO_REALIZA_CURSO(alto grado de redundancia de datos)
![Page 5: Diseño Eficiente BD](https://reader037.fdocumento.com/reader037/viewer/2022100605/559e2ac11a28abed0b8b4700/html5/thumbnails/5.jpg)
Se trata, por tanto, de buscar un conjunto de esquemas Ri que sean equivalentes a R (para lo cual será preciso definir el concepto de equivalencia de esquemas) y que sean también mejores (en el sentido que enunciaremos) que el esquema origen.
![Page 6: Diseño Eficiente BD](https://reader037.fdocumento.com/reader037/viewer/2022100605/559e2ac11a28abed0b8b4700/html5/thumbnails/6.jpg)
Las propiedades que han de cumplir los esquemas de relación R i para ser equivalentes a R y mejores que R son:
C. Conservación de la información.D. Conservación de las dependencias funcionales (rest.).E. Mínima redundancia de datos (formas normales).
![Page 7: Diseño Eficiente BD](https://reader037.fdocumento.com/reader037/viewer/2022100605/559e2ac11a28abed0b8b4700/html5/thumbnails/7.jpg)
• Si se cumplen a) y b), es decir, la transformación de R en {Ri} se hace sin pérdida de información ni de dependencias, se dice que {Ri} es equivalente a R.
• Y si las relaciones resultantes {Ri} están en formas normales más avanzadas que el esquema origen R, se dice que {Ri} es mejor que R.
![Page 8: Diseño Eficiente BD](https://reader037.fdocumento.com/reader037/viewer/2022100605/559e2ac11a28abed0b8b4700/html5/thumbnails/8.jpg)
La información contenida en la relación origen debe ser la misma que la contenida en el conjunto {Ri} de esquemas resultantes.También se llama equivalencia de datos.Para que se cumpla esta propiedad es necesario satisfacer dos condiciones:
1) Conservación de los atributos.El conjunto de atributos de {Ri} ha de ser igual al conjunto de atributos del esquema origen R:
2) Conservación del contenido (de las tuplas).Para toda extensión r de R , la combinación (join) de las relaciones resultantes ri ha de producir la relación origen r: (reversibilidad por junta)
![Page 9: Diseño Eficiente BD](https://reader037.fdocumento.com/reader037/viewer/2022100605/559e2ac11a28abed0b8b4700/html5/thumbnails/9.jpg)
17/09/98HaedoLanesJulio13235555
12/11/98MoronHacheCarlos13230001
10/10/98CastelarGarciaLuis13240009
11/11/98MoronHacheCarlos13230001
21/09/98CastelarGarciaLuis13240009
17/09/98MoronHacheCarlos13230001
15/09/98HaedoLanesJulio13235555
14/10/98HaedoLanesJulio13235555
12/11/98HaedoLanesJulio13235555
10/10/98MoronHacheCarlos13230001
fechalocalidadapellidonombrematricula
Tabla Alumno (nueva)
![Page 10: Diseño Eficiente BD](https://reader037.fdocumento.com/reader037/viewer/2022100605/559e2ac11a28abed0b8b4700/html5/thumbnails/10.jpg)
Tabla Curso (nueva)
17/09/98LLXXXA223
12/11/98LLXXXA223
10/10/98LLYYB44
11/11/98LLYYB44
21/09/98MMZZZC564
17/09/98MMZZZC564
15/09/98MMZZZC564
14/10/98LLXXXA223
12/11/98LLYYB44
10/10/98LLXXXA223
fecharequisitoNom_cursoCod_curso
![Page 11: Diseño Eficiente BD](https://reader037.fdocumento.com/reader037/viewer/2022100605/559e2ac11a28abed0b8b4700/html5/thumbnails/11.jpg)
******17/09/98MMZZZC564HaedoLanesJulio13235555
17/09/98LLXXXA223HaedoLanesJulio13235555
******12/11/98LLYYB44MoronHacheCarlos13230001
12/11/98LLXXXA223MoronHacheCarlos13230001
******10/10/98LLXXXA223CastelarGarciaLuis13240009
10/10/98LLYYB44CastelarGarciaLuis13240009
11/11/98LLYYB44MoronHacheCarlos13230001
21/09/98MMZZZC564CastelarGarciaLuis13240009
******17/09/98LLXXXA223MoronHacheCarlos13230001
17/09/98MMZZZC564MoronHacheCarlos13230001
15/09/98MMZZZC564HaedoLanesJulio13235555
14/10/98LLXXXA223HaedoLanesJulio13235555
******12/11/98LLXXXA223HaedoLanesJulio13235555
12/11/98LLYYB44HaedoLanesJulio13235555
******10/10/98LLYYB44MoronHacheCarlos13230001
10/10/98LLXXXA223MoronHacheCarlos13230001
fecharequisitoNom_cursoCod_cursolocalidadapellidonombrematricula
Se realiza la junta entre las tablas Alumnos y Curso
![Page 12: Diseño Eficiente BD](https://reader037.fdocumento.com/reader037/viewer/2022100605/559e2ac11a28abed0b8b4700/html5/thumbnails/12.jpg)
APARECEN FILAS ILEGALES AL NO CUMPLIRSE LA 2º CONDICION (conservación de tuplas).
• La tercera propiedad que debe cumplir el conjunto {R i} de esquemas resultantes en un proceso de descomposición, es que estas relaciones alcancen un nivel de normalización superior al del esquema origen R, a fin de eliminar en lo posible lasredundancias y, por tanto, las anomalías de actualización.
• Se dice que un esquema de relación está en una determinada forma normal, si satisface un cierto conjunto específico de restricciones.
• Cuanto más alta sea la forma normal en la que se encuentran los esquemas de relación, menores serán los problemas que aparecen en el mantenimiento de la BD.
![Page 13: Diseño Eficiente BD](https://reader037.fdocumento.com/reader037/viewer/2022100605/559e2ac11a28abed0b8b4700/html5/thumbnails/13.jpg)
Algoritmo de detección de perdida de información (clase Tableaux)
![Page 14: Diseño Eficiente BD](https://reader037.fdocumento.com/reader037/viewer/2022100605/559e2ac11a28abed0b8b4700/html5/thumbnails/14.jpg)
Algoritmo de detección de perdidade dependencias funcionales
Sea un esquema de relación R, un conjunto de dfs F sobre R, y una descomposición de R p={R1,...,Rk}. Sea Fi el conjunto de todas las dfs en F+ que presentan solamente atributos de Ri. Simbólicamente:
Fi ={ X->Y / (X->Y E F+) ^ (XY c Ri) }
Como puede observarse las dfs (Fi's) aplicables a cada Ri son las que no escapan del dominio de Ri (a ambos lados de la df) siempre obtenidas de F+ (no de F).
Por ello si no hay perdida de dependencias se cumple: kF+ = (U Fi)+ (F equivale a U Fi) i=1
![Page 15: Diseño Eficiente BD](https://reader037.fdocumento.com/reader037/viewer/2022100605/559e2ac11a28abed0b8b4700/html5/thumbnails/15.jpg)
Algoritmo de detección de perdidade dependencias funcionales
![Page 16: Diseño Eficiente BD](https://reader037.fdocumento.com/reader037/viewer/2022100605/559e2ac11a28abed0b8b4700/html5/thumbnails/16.jpg)
Algoritmo de detección de perdidade dependencias funcionales
![Page 17: Diseño Eficiente BD](https://reader037.fdocumento.com/reader037/viewer/2022100605/559e2ac11a28abed0b8b4700/html5/thumbnails/17.jpg)
Algoritmo de descomposicióna 3FN sin perdida de información
![Page 18: Diseño Eficiente BD](https://reader037.fdocumento.com/reader037/viewer/2022100605/559e2ac11a28abed0b8b4700/html5/thumbnails/18.jpg)
Algoritmo de descomposicióna FNBC
![Page 19: Diseño Eficiente BD](https://reader037.fdocumento.com/reader037/viewer/2022100605/559e2ac11a28abed0b8b4700/html5/thumbnails/19.jpg)
F+
![Page 20: Diseño Eficiente BD](https://reader037.fdocumento.com/reader037/viewer/2022100605/559e2ac11a28abed0b8b4700/html5/thumbnails/20.jpg)
FPlus (con fuentes incluidas) puede bajarse de:Aplicación Java de Sun con una gran cantidad de utilidades
para Bases de Datos
http://fplus.sourceforge.net
El material de la cátedra puede bajarse de:
http://bdatos.ya.st