Diseño conceptual de bases de datos Anexo: control de ... · Control de redundancia Redundancia en...

26
Introducci´ on Situaciones complejas Conclusiones Biblio Dise˜ no conceptual de bases de datos Anexo: control de redundancia Luis Valencia Cabrera ([email protected]) Research Group on Natural Computing Departamento de Ciencias de la Computaci´ on e Inteligencia Artificial Universidad de Sevilla 02-10-2019, Bases de Datos Luis Valencia Cabrera ([email protected]) Bases de Datos Dise˜ no conceptual de bases de datosAnexo: control de redundancia

Transcript of Diseño conceptual de bases de datos Anexo: control de ... · Control de redundancia Redundancia en...

Page 1: Diseño conceptual de bases de datos Anexo: control de ... · Control de redundancia Redundancia en el DER En el esquema conceptual, un diagrama obtenido en nuestro caso mediante

Introduccion Situaciones complejas Conclusiones Biblio

Diseno conceptual de bases de datosAnexo: control de redundancia

Luis Valencia Cabrera ([email protected])

Research Group on Natural ComputingDepartamento de Ciencias de la Computacion e Inteligencia Artificial

Universidad de Sevilla

02-10-2019, Bases de Datos

Luis Valencia Cabrera ([email protected]) Bases de DatosDiseno conceptual de bases de datosAnexo: control de redundancia

Page 2: Diseño conceptual de bases de datos Anexo: control de ... · Control de redundancia Redundancia en el DER En el esquema conceptual, un diagrama obtenido en nuestro caso mediante

Introduccion Situaciones complejas Conclusiones Biblio

Indice

1 Introduccion

2 Situaciones complejas

3 Conclusiones

4 Bibliografıa

Luis Valencia Cabrera ([email protected]) Bases de DatosDiseno conceptual de bases de datosAnexo: control de redundancia

Page 3: Diseño conceptual de bases de datos Anexo: control de ... · Control de redundancia Redundancia en el DER En el esquema conceptual, un diagrama obtenido en nuestro caso mediante

Introduccion Situaciones complejas Conclusiones Biblio

Indice

1 Introduccion

2 Situaciones complejas

3 Conclusiones

4 Bibliografıa

Luis Valencia Cabrera ([email protected]) Bases de DatosDiseno conceptual de bases de datosAnexo: control de redundancia

Page 4: Diseño conceptual de bases de datos Anexo: control de ... · Control de redundancia Redundancia en el DER En el esquema conceptual, un diagrama obtenido en nuestro caso mediante

Introduccion Situaciones complejas Conclusiones Biblio

Control de redundancia

Redundancia en el DER

En el esquema conceptual, un diagrama obtenido en nuestrocaso mediante el modelo Entidad-Interrelacion (E-R), sepueden dar redundancias.Un elemento de un diagrama es redundante cuando puede sereliminado sin perdida de semantica.Hay que tratar de eliminar redundancias, ya que estas puedendar lugar a inconsistencias.

Luis Valencia Cabrera ([email protected]) Bases de DatosDiseno conceptual de bases de datosAnexo: control de redundancia

Page 5: Diseño conceptual de bases de datos Anexo: control de ... · Control de redundancia Redundancia en el DER En el esquema conceptual, un diagrama obtenido en nuestro caso mediante

Introduccion Situaciones complejas Conclusiones Biblio

Tipos de redundancia

Existen dos tipos principales, segun el elemento al que estanasociadas:

Redundancia en los atributos (atributos derivados).

Redundancia en las interrelaciones (interrelacionesderivadas).

Luis Valencia Cabrera ([email protected]) Bases de DatosDiseno conceptual de bases de datosAnexo: control de redundancia

Page 6: Diseño conceptual de bases de datos Anexo: control de ... · Control de redundancia Redundancia en el DER En el esquema conceptual, un diagrama obtenido en nuestro caso mediante

Introduccion Situaciones complejas Conclusiones Biblio

Atributos derivados

Atributos derivados o calculados: son aquellos que seobtienen o se pueden obtener a partir de otros existentes.No dan lugar a inconsistencias siempre que se indique en elesquema que son derivados (y la formula para calcularlos).

Luis Valencia Cabrera ([email protected]) Bases de DatosDiseno conceptual de bases de datosAnexo: control de redundancia

Page 7: Diseño conceptual de bases de datos Anexo: control de ... · Control de redundancia Redundancia en el DER En el esquema conceptual, un diagrama obtenido en nuestro caso mediante

Introduccion Situaciones complejas Conclusiones Biblio

Atributos derivadosMotivacion

Incluir atributos derivados puede ser interesante:Por razones semanticas.

Por razones de eficiencia (en ese caso serıa mejor colocarlo enel diagrama logico, o mejor aun en el fısico).

Puede calcularse en dos momentos:al insertar/actualizar, o

al consultar

Luis Valencia Cabrera ([email protected]) Bases de DatosDiseno conceptual de bases de datosAnexo: control de redundancia

Page 8: Diseño conceptual de bases de datos Anexo: control de ... · Control de redundancia Redundancia en el DER En el esquema conceptual, un diagrama obtenido en nuestro caso mediante

Introduccion Situaciones complejas Conclusiones Biblio

Interrelaciones redundantes

Interrelacion redundante

Una interrelacion es redundante cuando su eliminacion noimplica perdida de semantica.

Esto se da cuando existe la posibilidad de realizar la mismaasociacion de los ejemplares por medio de otras relaciones.

Condicion necesaria para que la interrelacion sea redundante:que forme parte de un ciclo → Estudiar detenidamente losciclos en los diagramas E-R.

Luis Valencia Cabrera ([email protected]) Bases de DatosDiseno conceptual de bases de datosAnexo: control de redundancia

Page 9: Diseño conceptual de bases de datos Anexo: control de ... · Control de redundancia Redundancia en el DER En el esquema conceptual, un diagrama obtenido en nuestro caso mediante

Introduccion Situaciones complejas Conclusiones Biblio

Interrelaciones redundantesEjemplos

En el diagrama de este ejemplo, con profesores impartiendo cursos,¿detecta alguna interrelacion redundante? Razone su respuesta.

Luis Valencia Cabrera ([email protected]) Bases de DatosDiseno conceptual de bases de datosAnexo: control de redundancia

Page 10: Diseño conceptual de bases de datos Anexo: control de ... · Control de redundancia Redundancia en el DER En el esquema conceptual, un diagrama obtenido en nuestro caso mediante

Introduccion Situaciones complejas Conclusiones Biblio

Interrelaciones redundantesEjemplos

Respuesta (clara): NO.Explicacion (sencilla):

No pueden existir interrelaciones redundantes en el diagrama, dadala inexistencia de ciclos, que como hemos comentado era unacondicion necesaria para que se de la redundancia.

Luis Valencia Cabrera ([email protected]) Bases de DatosDiseno conceptual de bases de datosAnexo: control de redundancia

Page 11: Diseño conceptual de bases de datos Anexo: control de ... · Control de redundancia Redundancia en el DER En el esquema conceptual, un diagrama obtenido en nuestro caso mediante

Introduccion Situaciones complejas Conclusiones Biblio

Indice

1 Introduccion

2 Situaciones complejas

3 Conclusiones

4 Bibliografıa

Luis Valencia Cabrera ([email protected]) Bases de DatosDiseno conceptual de bases de datosAnexo: control de redundancia

Page 12: Diseño conceptual de bases de datos Anexo: control de ... · Control de redundancia Redundancia en el DER En el esquema conceptual, un diagrama obtenido en nuestro caso mediante

Introduccion Situaciones complejas Conclusiones Biblio

Interrelaciones redundantesEjemplos

En este diagrama, con profesores asociados a departamentos eimpartiendo cursos de master, ¿detecta alguna interrelacionredundante? Razone su respuesta.

Luis Valencia Cabrera ([email protected]) Bases de DatosDiseno conceptual de bases de datosAnexo: control de redundancia

Page 13: Diseño conceptual de bases de datos Anexo: control de ... · Control de redundancia Redundancia en el DER En el esquema conceptual, un diagrama obtenido en nuestro caso mediante

Introduccion Situaciones complejas Conclusiones Biblio

Interrelaciones redundantesEjemplos

La respuesta mas acertada es...

como en muchos otroscontextos: DEPENDE.Va a depender del mini-mundo, del Universo de Discursoque queramos representar, es decir, del escenario concreto,que marcara:

Las cardinalidades y tipos de las entidades.Los atributos involucrados.La semantica a reflejar, que nos dictara (junto con lo anterior)la posible existencia de redundancia, es decir: si la asociacionbajo estudio puede darse por medio de otras interrelacionesdistintas de la interrelacion en cuestion, posiblementeredundante.

Luis Valencia Cabrera ([email protected]) Bases de DatosDiseno conceptual de bases de datosAnexo: control de redundancia

Page 14: Diseño conceptual de bases de datos Anexo: control de ... · Control de redundancia Redundancia en el DER En el esquema conceptual, un diagrama obtenido en nuestro caso mediante

Introduccion Situaciones complejas Conclusiones Biblio

Interrelaciones redundantesEjemplos

La respuesta mas acertada es...como en muchos otroscontextos: DEPENDE.Va a depender del mini-mundo, del Universo de Discursoque queramos representar, es decir, del escenario concreto,que marcara:

Las cardinalidades y tipos de las entidades.Los atributos involucrados.La semantica a reflejar, que nos dictara (junto con lo anterior)la posible existencia de redundancia, es decir: si la asociacionbajo estudio puede darse por medio de otras interrelacionesdistintas de la interrelacion en cuestion, posiblementeredundante.

Luis Valencia Cabrera ([email protected]) Bases de DatosDiseno conceptual de bases de datosAnexo: control de redundancia

Page 15: Diseño conceptual de bases de datos Anexo: control de ... · Control de redundancia Redundancia en el DER En el esquema conceptual, un diagrama obtenido en nuestro caso mediante

Introduccion Situaciones complejas Conclusiones Biblio

Analizando en detalleEscenario 1 - Requisitos

Requisitos

Un profesor solo puede impartir cursos de master que estenadscritos al departamento al que el pertenece.

Cuestiones:¿Que cardinalidades tendremos sobre nuestro diagrama inicial?

¿Hay alguna interrelacion redundante?

Luis Valencia Cabrera ([email protected]) Bases de DatosDiseno conceptual de bases de datosAnexo: control de redundancia

Page 16: Diseño conceptual de bases de datos Anexo: control de ... · Control de redundancia Redundancia en el DER En el esquema conceptual, un diagrama obtenido en nuestro caso mediante

Introduccion Situaciones complejas Conclusiones Biblio

Analizando en detalleEscenario 1 - Cardinalidades y tipos

Tras analizar las cardinalidades y tipos, el diagrama quedarıa de lasiguiente manera:

¿Hay alguna interrelacion redundante?Luis Valencia Cabrera ([email protected]) Bases de DatosDiseno conceptual de bases de datosAnexo: control de redundancia

Page 17: Diseño conceptual de bases de datos Anexo: control de ... · Control de redundancia Redundancia en el DER En el esquema conceptual, un diagrama obtenido en nuestro caso mediante

Introduccion Situaciones complejas Conclusiones Biblio

Analizando en detalleEscenario 1 - ¿Redundante?

Si se conocen los cursos de master que imparte un profesor, y eldepartamento al que esta escrito cada curso → Se puede deducir aque departamento pertenece el profesor.

Dado un departamento, si sabemos sus cursos, y sabemos losprofesores que imparten los cursos → conoceremos los profesoresasociados al departamento.

Conclusion

La asociacion simbolizada por la interrelacion PERTENECE, entrePROFESOR y DEPARTAMENTO, puede deducirse a partir deotras interrelaciones, luego es redundante, ya que su eliminacion noproducirıa perdida de informacion.

Luis Valencia Cabrera ([email protected]) Bases de DatosDiseno conceptual de bases de datosAnexo: control de redundancia

Page 18: Diseño conceptual de bases de datos Anexo: control de ... · Control de redundancia Redundancia en el DER En el esquema conceptual, un diagrama obtenido en nuestro caso mediante

Introduccion Situaciones complejas Conclusiones Biblio

Analizando en detalleEscenario 2 - Requisitos

Requisitos

Un departamento puede no tener adscritos cursos de master.Un mismo curso puede estar adscrito a distintosdepartamentos.Puede haber profesores que no impartan ningun curso demaster.

Cuestiones:¿Que modificaciones tendremos que hacer sobre nuestrodiagrama anterior?

¿Hay alguna interrelacion redundante?Luis Valencia Cabrera ([email protected]) Bases de DatosDiseno conceptual de bases de datosAnexo: control de redundancia

Page 19: Diseño conceptual de bases de datos Anexo: control de ... · Control de redundancia Redundancia en el DER En el esquema conceptual, un diagrama obtenido en nuestro caso mediante

Introduccion Situaciones complejas Conclusiones Biblio

Analizando en detalleEscenario 2 - Cardinalidades y tipos

Tras analizar las cardinalidades y tipos, el diagrama quedarıa de lasiguiente manera:

¿Hay alguna interrelacion redundante?Luis Valencia Cabrera ([email protected]) Bases de DatosDiseno conceptual de bases de datosAnexo: control de redundancia

Page 20: Diseño conceptual de bases de datos Anexo: control de ... · Control de redundancia Redundancia en el DER En el esquema conceptual, un diagrama obtenido en nuestro caso mediante

Introduccion Situaciones complejas Conclusiones Biblio

Analizando en detalleEscenario 2 - ¿Alguna interrelacion redundante?

Como en el escenario anterior existe un ciclo, condicion necesariapero no suficiente para que haya interrelacion redundante.

Si sabemos los cursos que imparte un profesor, y los departamentosa los que estan adscritos los cursos, ¿sabemos a que departamentopertenece el profesor? No, ya que el curso puede estar adscrito avarios. → Ya esta claro que no es redundante la interrelacionPERTENECE.

¿Y si un curso solamente estuviera adscrito a un departamento?Aun ası, un profesor puede no impartir ningun curso, luego nopodrıamos saber su departamento. → Si eliminamos PERTENECEperderıamos informacion, luego de nuevo no serıa redundante lainterrelacion PERTENECE.

Luis Valencia Cabrera ([email protected]) Bases de DatosDiseno conceptual de bases de datosAnexo: control de redundancia

Page 21: Diseño conceptual de bases de datos Anexo: control de ... · Control de redundancia Redundancia en el DER En el esquema conceptual, un diagrama obtenido en nuestro caso mediante

Introduccion Situaciones complejas Conclusiones Biblio

Analizando en detalleEscenario 2 - ¿Alguna interrelacion redundante?

¿Y la interrelacion IMPARTE?Un curso puede estar adscrito a varios departamentos, y estospueden tener varios profesores, luego no se puede saber el profesorconcreto que imparte el curso. → En conclusion: no es redundantela interrelacion IMPARTE.

¿Y la interrelacion ESTA ADSCRITO A?Dado un curso impartido por un profesor, y este perteneciendo a undepartamento, no podemos saber que otros departamentos tienenasociado el curso. → En conclusion: no es redundante lainterrelacion ESTA ADSCRITO A.

En resumen, el escenario 2 no contiene ningun elementoredundante.

Luis Valencia Cabrera ([email protected]) Bases de DatosDiseno conceptual de bases de datosAnexo: control de redundancia

Page 22: Diseño conceptual de bases de datos Anexo: control de ... · Control de redundancia Redundancia en el DER En el esquema conceptual, un diagrama obtenido en nuestro caso mediante

Introduccion Situaciones complejas Conclusiones Biblio

Indice

1 Introduccion

2 Situaciones complejas

3 Conclusiones

4 Bibliografıa

Luis Valencia Cabrera ([email protected]) Bases de DatosDiseno conceptual de bases de datosAnexo: control de redundancia

Page 23: Diseño conceptual de bases de datos Anexo: control de ... · Control de redundancia Redundancia en el DER En el esquema conceptual, un diagrama obtenido en nuestro caso mediante

Introduccion Situaciones complejas Conclusiones Biblio

Interrelaciones redundantesReflexion previa

¿Hemos cubierto todos los casos posibles?No, existen muchas otras situaciones. Por ejemplo: si lainterrelacion puede ser deducida de otras presentes en elesquema, pero posee atributos propios, y estos no pueden serpasados a alguna de las entidades de la relacion, entonces nose puede eliminar.Por tanto, es necesario que exista un ciclo, pero nosuficiente, debe ademas:

estudiarse las cardinalidades mınimas y maximasprofundizar en la semantica que aportan las interrelacionesanalizar si al eliminar la relacion siempre se puede llegar a lamisma asociacion (en un sentido y en el inverso);comprobar la existencia de atributos en la interrelacion.

Luis Valencia Cabrera ([email protected]) Bases de DatosDiseno conceptual de bases de datosAnexo: control de redundancia

Page 24: Diseño conceptual de bases de datos Anexo: control de ... · Control de redundancia Redundancia en el DER En el esquema conceptual, un diagrama obtenido en nuestro caso mediante

Introduccion Situaciones complejas Conclusiones Biblio

Interrelaciones redundantesConclusion

Para que una interrelacion pueda ser eliminada por redundante setiene que cumplir:

Que exista un ciclo.Que las interrelaciones que queden tras eliminarla mantenganuna semantica equivalente a la existente incluyendo el ciclocompleto.Que se puedan asociar las ocurrencias de las dos entidadespreviamente interrelacionadas, tras eliminar la relacion.Que la interrelacion:

no tenga atributos, o bienestos puedan transferirse a alguna de las entidades sin perdersu semantica.

Luis Valencia Cabrera ([email protected]) Bases de DatosDiseno conceptual de bases de datosAnexo: control de redundancia

Page 25: Diseño conceptual de bases de datos Anexo: control de ... · Control de redundancia Redundancia en el DER En el esquema conceptual, un diagrama obtenido en nuestro caso mediante

Introduccion Situaciones complejas Conclusiones Biblio

Indice

1 Introduccion

2 Situaciones complejas

3 Conclusiones

4 Bibliografıa

Luis Valencia Cabrera ([email protected]) Bases de DatosDiseno conceptual de bases de datosAnexo: control de redundancia

Page 26: Diseño conceptual de bases de datos Anexo: control de ... · Control de redundancia Redundancia en el DER En el esquema conceptual, un diagrama obtenido en nuestro caso mediante

Introduccion Situaciones complejas Conclusiones Biblio

Bibliografıa I

Adoracion de Miguel, Mario Piattini, Esperanza MarcosDiseno de Bases de Datos Relacionales.RA-MA Editorial (1999)ISBN: 978-84-7897-385-9

Luis Valencia Cabrera ([email protected]) Bases de DatosDiseno conceptual de bases de datosAnexo: control de redundancia