1 / 35

Organización Michael Grossniklaus politécnico di Milano

Orientada a objetos de bases de datos I ntroducción •  Visión global del curso. • Evolución e Historia de los Sistemas de Gestión de bases de datos. • Requisitos de sistemas orientados a objetos de base de datos de gestión. Organización

Télécharger la présentation

Organización Michael Grossniklaus politécnico di Milano

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Orientada a objetos de bases de datosIntroducción• Visión global del curso.• Evolución e Historia de los Sistemas de Gestión de bases de datos.• Requisitos de sistemas orientados a objetos de base de datos de gestión. September 19,2008 | Michael Grossniklaus-Deparment of computer Science-grossniklaus@inf.ethz.ch |

  2. Organización • Michael Grossniklaus politécnico di Milano ETH Zurich Campus Bassini,Room18/103 IFW D 46.2 +39 022 399 347 +41 44 632 72 73 grossniklaus@elet.polimi.it grossniklaus@inf.ethz.ch • Alexandre de Spindler ETH Zurich IFW D 47.1 +41 44 632 74 16 despindler@inf.ethz.ch September 19,2008 | Michael Grossniklaus-Deparment of computer Science-grossniklaus@inf.ethz.ch |

  3. Ejercicios • Curso estará acompañado por los ejercicios • el trabajo con las tecnologías tratadas en el curso • sesiones tutoriales por semana • A partir del  3rd, 2008 • IFW Un 32,1, 11-12 • Alexandre de Spindler •  opcional, pero sí muy recomendable September 19,2008 Michael Grossniklaus-Deparment of computer Science-grossniklaus@inf.ethz.ch

  4. Examen • el examen de sesión • Enero 19th, 2009 – Febrero 13th, 2009 • Las excepciones se pueden organizar para los • estudiantes de intercambio • Examen oral en Inglés • duración de 15 minutos • 5 ECTS September 19,2008 | Michael Grossniklaus-Deparment of computer Science-grossniklaus@inf.ethz.ch |

  5. Visión general del curso I.Fundamentos de bases de datos orientadas a objetos1. introducción 2. La persistencia de objetos3.db4o II.Conceptos avanzados de bases de datos orientadas a objetos4.Normas y comercial Sistemas 5. De almacenamiento e indexación6. modelos de la versión III. Los datos objeto semántico de gestión7. OM OM Modelo de datos y Lenguaje Modelo de Datos 8. Diseño e Implementación de OMS Avon9.Context-Aware Data Management September 19,2008 | Michael Grossniklaus-Deparment of computer Science-grossniklaus@inf.ethz.ch |

  6. Base de datos de diseño September 19,2008 | Michael Grossniklaus-Deparment of computer Science-grossniklaus@inf.ethz.ch |

  7. Sistemas de gestión de bases de datos September 19,2008 | Michael Grossniklaus-Deparment of computer Science-grossniklaus@inf.ethz.ch |

  8. Red Relacional Orientado a objetos Objeto relacional Semi Estructurados Xml • Evolución y Historia jerárquica 1970 2000 1980 1990 September 19,2008 | Michael Grossniklaus-Deparment of computer Science-grossniklaus@inf.ethz.ch |

  9. Bases de datos jerárquicas • Los datos organizados en un árbol • un padre puede tener muchos hijos •  un niño sólo puede tener uno de los padres • Los registros describen los tipos de entidad • 1: N (uno a muchos) las relaciones •  Consulta por el recorrido de navegación • Ejemplos •  El sistema de archivo • LDAP • Windows Registro y Active Directory • documentos XML y Xquery September 19,2008 | Michael Grossniklaus-Deparment of computer Science-grossniklaus@inf.ethz.ch |

  10. Bases de datos de red • Los datos organizados en el gráfico (red) • un padre puede tener muchos hijos • un niño puede tener muchos padres • Bachmann diagramas • tipos de discos definir las propiedades • Establecer los tipos de relaciones se define • entre padres e hijos, (doble) lista enlazada, ... •  Consulta por el gráfico de navegación • Ejemplos  • CODASYL September 19,2008 | Michael Grossniklaus-Deparment of computer Science-grossniklaus@inf.ethz.ch |

  11. Bases de Datos Relacionales • Los datos organizados en las tuplas en las relaciones • Enlace entre los datos de tuplas • claves primarias y foráneas • El álgebra relacional • proyecto, seleccione, se unen • formas normales de relación • lenguaje declarativo • definición de datos, la consistencia, la manipulación y la consulta • Ejemplos • Oracle 11g, Microsoft SQL Server, IBM DB2 • PostgreSQL, MySQL • 19 de septiembre 2008 Michael Grossniklaus - Departamento de Ciencias de la Computación - September 19,2008 | Michael Grossniklaus-Deparment of computer Science-grossniklaus@inf.ethz.ch |

  12. Bases de Datos Relacionales • Modelo relacional es muy simple • sólo los conceptos básicos → referencias deben ser simuladas • sistema de tipo restringido → no definidos por el usuario • La falta de modelado semántico • datos complejos, control de versiones, los roles •  poco apoyo para los datos y la evolución del esquema •  objeto-relacional de impedancia desajuste September 19,2008 | Michael Grossniklaus-Deparment of computer Science-grossniklaus@inf.ethz.ch |

  13. Objeto-Relacional Impedancia No coinciden • Orientada a objetos de desarrollo de aplicaciones y relacional resultados de la gestión de datos en choque de dos incompatibles modelos • Código de mapa entre los modelos es una sobrecarga considerable, costoso y difícil de mantener el 19 de septiembre 2008 Michael Grossniklaus Departamento de Informática Scie September 19,2008 | Michael Grossniklaus-Deparment of computer Science-grossniklaus@inf.ethz.ch |

  14. Orientada a objetos de bases de datos • Los datos representados como objetos • objeto de identidad • atributos y métodos • Referencias, relaciones, asociaciones •  jerarquía de tipos extensible • definidos por el usuario, los tipos de datos abstractos •  herencia simple o múltiple • sobrecarga, la anulación, el enlace • lenguaje declarativo para ad-hoc con fines • vinculante para lenguaje de programación orientado a objetos September 19,2008 | Michael Grossniklaus-Deparment of computer Science-grossniklaus@inf.ethz.ch |

  15. Bases de datos relacionales • modelo relacional extendido •  relaciones anidadas •  referencias •  conjuntos • tipos de filas, tipos abstractos • Funciones • lenguaje declarativo extendido • computacionalmente completo •  desajuste de impedancia sigue siendo fundamental •  la mezcla de modelos September 19,2008 | Michael Grossniklaus-Deparment of computer Science-grossniklaus@inf.ethz.ch |

  16. Bases de datos relacionales createtypeAddressType ( streetvarchar(10), cityvarchar(10) ) createrowtypePublicationType ( titlevarchar(50) ) createrowtypeBookType ( isbnvarchar(10) ) underPublicationType createrowtypeAuthorType ( namevarchar(25), bookssetof(BookType), addressAddressType ) createtableBookof typeBookType createtableAuthorof typeAuthorType September 19,2008 | Michael Grossniklaus-Deparment of computer Science-grossniklaus@inf.ethz.ch |

  17. Bases de datos emergentes y futuras • bases de datos XML Curso 251-0317-00L XML y bases de datos Prof. Dr. Donald Kossmann, el Dr. Peter Fischer Semestre de otoño, miércoles 13-15 • bases de datos móviles y personales Curso 251-0373-00LMóviles y personales Sistemas de Información Prof. Dr. Moira C. Norrie Semestre de otoño, jueves 09.11 September 19,2008 | Michael Grossniklaus-Deparment of computer Science-grossniklaus@inf.ethz.ch |

  18. Orientada a objetos de bases de datos • Evite el objeto-relacional diferencia de impedancia •  Proporcionar un modelo uniforme de datos •  Combina las características y propiedades de • sistemas orientados a objetos y lenguajes • base de datos de los sistemas de gestión September 19,2008 | Michael Grossniklaus-Deparment of computer Science-grossniklaus@inf.ethz.ch |

  19. La definición orientada a objetos de bases de datos • diverso enfoque de los sistemas de bases de datos orientadas a objetos •  hacer lenguajes orientados a objetos de programaciónpersistentes •  gestión y almacenamiento de datos de objetos • muchos intentos de definir las bases de datos orientadas a objetos • El manifiesto de base de datos orientada a objetos •  13 funciones obligatorias • 5 características opcionales • 4 opciones abiertas • manifiesto las consecuencias • refutaciones varios del campo relacional • varias propiedades importantes no se tratan September 19,2008 | Michael Grossniklaus-Deparment of computer Science-grossniklaus@inf.ethz.ch |

  20. La base de datos orientada a objetos Manifiesto September 19,2008 | Michael Grossniklaus-Deparment of computer Science-grossniklaus@inf.ethz.ch |

  21. Objetos • Los objetos complejos • complejao objeto formado a partir de otras más simples por los constructores • registro, conjunto, la bolsa, de la lista y el conjunto deconstructores de objetos complejos •  constructor de ortogonalidad •  objeto de identidad y la igualdad •  cada objeto tiene única e inmutable identificador de objeto (OID) • el intercambio de objetos a través de referencias •  dos objetos son idénticos si tienen el mismo OID •  dos objetos son iguales si tienen el mismo estado • igualdad superficial y profundo September 19,2008 | Michael Grossniklaus-Deparment of computer Science-grossniklaus@inf.ethz.ch |

  22. Objetos • Encapsulación •  objeto consiste en la interfaz y la implementación • interfaz define las firmas de los métodos públicos • aplicación incluye datos de los objetos y métodos • estado de objeto sólo se modifica a través de • métodospúblicos •  objeto de la estructura de datos pueden estar • expuestos para las consultas declarativas September 19,2008 | Michael Grossniklaus-Deparment of computer Science-grossniklaus@inf.ethz.ch |

  23. Tipos y Clases • Los Tipos de Datos • definition de las Propiedades del Objeto •  la Parte Estática sí describir a La Estructura del Objeto •  instancia de parte SE DESCRIBE EL COMPORTAMIENTODinámico de Objetos •  Separación de la Interfaz y la Implementacion • banking párrafo comprobar la correccion de los Programas enTiempo de Compilación • Las Clases de Objetos • contenedor Para Los Objetos del Mismo Tipo • Los Objetos sí pueden buscas? Serie clave • Utilizada párr CREAR y manipular Objetos en Tiempo de ejecución resuelve September 19,2008 | Michael Grossniklaus-Deparment of computer Science-grossniklaus@inf.ethz.ch |

  24. Tipos y clases September 19,2008 | Michael Grossniklaus-Deparment of computer Science-grossniklaus@inf.ethz.ch |

  25. Jerarquías de Generalización • Ventajas •  herramienta de modelado de gran alcance • garantía de la complejidad semántica • reutilización de especificación y aplicación • Herencia • subclase automáticamente a superclase • atributos y los métodos se heredan de la superclase • subclase puede introducir nuevos atributos y los métodos •  La migración entre las clases • mover objetos entre los niveles de jerarquía •  objeto de especialización (↓) y generalización (↑) •  instancia de clase frente al miembro de la clase September 19,2008 | Michael Grossniklaus-Deparment of computer Science-grossniklaus@inf.ethz.ch |

  26. Generalización de herencia • La sustitución de herencia •  subtipo tiene más operaciones que supertipoSubtipo  •  puede estar sustituido en donde se espera supertipo • basada en el comportamiento en lugar de valores • La inclusión de herencia •  todos los objetos de subtipo es también objeto de supertipo • basado en la estructura en lugar de las operaciones • restricción de la herencia •  caso especial de la herencia de su inclusión •  subtipo se expresa por la fuerza de supertipo •  Especialización herencia •  subtipo objetos contienen información más específica September 19,2008 | Michael Grossniklaus-Deparment of computer Science-grossniklaus@inf.ethz.ch |

  27. Anulación, sobrecarga y enlace en tiempo • el reemplazo de métodos • método se redefine en el subtipo •  garantiza la especialización de los métodos de • conserva la interfaz método uniforme •  La sobrecarga de métodos • efecto causado por el reemplazo de métodos • versión varios de un método pueden existir en paralelo • el enlace •  la versión apropiada del método sobrecargado seleccionada en tiempo de ejecución • también conocido como método virtual despacho September 19,2008 | Michael Grossniklaus-Deparment of computer Science-grossniklaus@inf.ethz.ch |

  28. Integridad computacional y extensibilidad • integridad Computacional •  requisito de que el lenguaje de implementación del método •  cualquier función computable puede ser expresada •  se puede realizar a través de conexión con el lenguaje actual •  extensibilidad •  base de datos tiene un conjunto de tipos predefinidos •  los desarrolladores pueden definir nuevos tipos de acuerdo a los requerimientos •  ninguna distinción entre el uso del sistema y los tipos de usuarios September 19,2008 | Michael Grossniklaus-Deparment of computer Science-grossniklaus@inf.ethz.ch |

  29. La durabilidad y la eficiencia • La persistencia •  de datos tiene que sobrevivir a la ejecución del programa •  persistencia ortogonal •  persistencia implícita • gestión de almacenamiento secundario •  índice de gestión • la agrupación de datos •  datos de búfer •  acceso de selección de ruta •  la optimización de consultas September 19,2008 | Michael Grossniklaus-Deparment of computer Science-grossniklaus@inf.ethz.ch |

  30. Control de concurrencia y recuperación • concurrencia • gestión de múltiples usuarios al mismo tiempo que interactúan •  atomicidad, coherencia, aislamiento y durabilidad • serialisability de operaciones • La fiabilidad •  capacidad de recuperación ante fallos del usuario, de software y hardware • las transacciones se pueden confirmar o abortado •  restaurar el estado anterior coherente de los datos •  rehacer y deshacer de las transacciones •  registro de las operaciones September 19,2008 | Michael Grossniklaus-Deparment of computer Science-grossniklaus@inf.ethz.ch |

  31. Lenguaje de consulta declarativa •  lenguaje de alto nivel • expresas no triviales preguntas de forma concisa • interfaz basada en texto o gráficos • Declarativa •  correcta ejecución de los • posibilidad de que la optimización de consultas • aplicación independiente • trabajar en cualquier base de datos es posible • sin necesidad de métodos adicionales de los tipos definidos por el usuario September 19,2008 | Michael Grossniklaus-Deparment of computer Science-grossniklaus@inf.ethz.ch |

  32. Características opcionales y opciones abiertas • características opcionales • herencia múltiple •  la comprobación de tipos y la inferencia •  distribución • operaciones de diseño, las transacciones de largo, las transacciones anidadas • Versiones • opciones abiertas •  paradigma de programación • representación del sistema • sistema de tipos •  la uniformidad September 19,2008 | Michael Grossniklaus-Deparment of computer Science-grossniklaus@inf.ethz.ch |

  33. Más allá del Manifiesto • base de datos de administración de empresas de servicios públicos • Ver definición y los datos derivados • papeles de objetos • objetos tienen papeles, además de los tipos • papeles se puede ganar y perder de forma dinámica •  base de datos de la evolución • esquema y los datos tiene que evolucionar con gracia en el tiempo •  restricciones • la integridad, la semántica y la evolución de las restricciones • definición, gestión y observancia de las limitaciones September 19,2008 | Michael Grossniklaus-Deparment of computer Science-grossniklaus@inf.ethz.ch |

  34. Literatura • M. Atkinson, F. Bancilhon, D. DeWitt, K. Dittrich, D. Maier, and S. Zdonik: The Object-Oriented Database System Manifesto, In: Building an Object-Oriented Database System, Morgan Kaufmann 1992 • M. Stonebraker, L. A. Rowe, B. Lindsay, J. Gray, M. Carey, M. Brodie, P. Bernstein, and D. Beech: Third-Generation DatabaseSystemManifesto, In: ACM SIGMOD RECORD, 19(3), 1990 • H. Darwen and C. J. Date: The Third Manifesto, In: ACM SIGMOD RECORD, 24(1), 1995 September 19,2008 | Michael Grossniklaus-Deparment of computer Science-grossniklaus@inf.ethz.ch |

  35. Próxima semana La persistencia de objetos • serialización • Los objetos relacionales Asignaciones y marcos • Los lenguajes de programación persistentes

More Related