diseño eficiente bd

20

Click here to load reader

Upload: bdatos

Post on 09-Jul-2015

1.554 views

Category:

Education


0 download

DESCRIPTION

Diseño Eficiente de Bases de Datos

TRANSCRIPT

Page 1: Diseño Eficiente BD

Diseño Eficiente deBases de Datos

Lic. Marcelo VinjoyGerman Viscuso

Page 2: Diseño Eficiente BD

¿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

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

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

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

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

• 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

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

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

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

******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

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

Algoritmo de detección de perdida de información (clase Tableaux)

Page 14: Diseño Eficiente BD

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

Algoritmo de detección de perdidade dependencias funcionales

Page 16: Diseño Eficiente BD

Algoritmo de detección de perdidade dependencias funcionales

Page 17: Diseño Eficiente BD

Algoritmo de descomposicióna 3FN sin perdida de información

Page 18: Diseño Eficiente BD

Algoritmo de descomposicióna FNBC

Page 19: Diseño Eficiente BD

F+

Page 20: Diseño Eficiente BD

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