Base de Datos Orientada Objetos

35
Base de Datos Orientada Objetos Visión Global del Curso Evolución e Historia de los Sistemas de Gestión de Base de Datos Requisitos de Gestión de base de Datos Orientados a Objetos

description

Base de Datos Orientada Objetos. Visión Global del Curso Evolución e Historia de los Sistemas de Gestión de Base de Datos Requisitos de Gestión de base de Datos Orientados a Objetos. ORGANIZACION. Michael Grossniklaus ETH Zurich Politecnico di Milano - PowerPoint PPT Presentation

Transcript of Base de Datos Orientada Objetos

Jerarquas de Generalizacin

Base de Datos Orientada ObjetosVisin Global del CursoEvolucin e Historia de los Sistemas de Gestin de Base de DatosRequisitos de Gestin de base de Datos Orientados a ObjetosORGANIZACIONMichael GrossniklausETH Zurich Politecnico di MilanoIFW D 46.2 Campus Bassini, Room 18/103+41 44 632 72 73 +39 022 399 [email protected] [email protected] Alexandre de SpindlerETH ZurichIFW D 47.1+41 44 632 74 16 [email protected]:Este curso estar acompaado por los siguientes ejercicios.Trabajo con las tecnologas tratadas en el curso de sesiones.Tutora por semana.A partir del 03 de octubre del 2008IFW UN 32,1,11,12Alexandre de SpindlerOpcional, pero muy recomendable

EXAMEN:CONVOCATORIA19 de ENERO del 2009 13 de FEBRERO del 2009.Las excepciones se pueden organizar para estudiantes de intercambio.Examen Oral de InglsDuracin 15 minutos.5 ECTSVisin general del curso

I. Fundamentos de bases de datos orientadas a objetos1. introduccin2. La persistencia de objetos3. db4oII. Conceptos avanzados de bases de datos orientadas a objetos4. Normas y Sistemas Comerciales5. De almacenamiento e indexacin6. modelos de la versinIII. Los datos objeto semntico de gestin7. OM Modelo de datos y Lenguaje Modelo de Datos8. Diseo e Implementacin de OMS Avon9. Context-Aware Data ManagementDiseo

Diseo de la Base de Datos

Sistema de Gestin de bd

Evolucin y su Historia

Bases de Datos jerrquicasLos datos organizados en un rbolUn padre puede tener muchos hijos.Un nio slo puede tener uno de los padres. Los registros descritos por los tipos de entidad1: N (uno a muchos) las relacionesConsulta por el recorrido de navegacin EjemplosEl sistema de archivosLDAPdel Registro de Windows y Active Directory documentos XML y XQuery

Bases de Datos de Red Los datos organizados en el grfico (red)un padre puede tener muchos hijos.un nio puede tener muchos padres.Bachmann diagramasLos tipos de registro definir las propiedadestipos de conjunto de relaciones definidasentre padres e hijos, (doble) lista enlazada, ...Consulta por el grfico de navegacinEjemplosCODASYL

Bases de Datos RelacionalesModelo relacional es muy simpleslo los conceptos bsicos referencias deben ser simuladas sistema de tipo restringido no definidos por el usuarioLa falta de modelado semntico datos complejos, control de versiones, los rolespoco apoyo para los datos y la evolucin del esquemaobjeto-relacional de impedancia desajuste.

Bases de Datos Relacionales Los datos organizados en las tuplas en las relacionesEnlace entre los datos de tuplas claves primarias y forneasEl lgebra relacionalproyecto, seleccione, se unenformas normales de relacinLenguaje declarativode definicin de datos, la consistencia, la manipulacin y la consultaEjemplosOracle 11g, Microsoft SQL Server, IBM DB2PostgreSQL, MySQL

Diferencia de impedancia objeto-relacionalEl desarrollo de aplicaciones orientadas a objetos y relacionales son resultado de la gestin de datos en el choque de dos modelos incompatibles.Cdigo de mapa entre los modelos es una sobrecarga considerable, costosa y difcil de mantener.

Base de datos orientadas a objetosLos datos representados como objetosObjeto de identidadAtributos y mtodosReferencias, relaciones, asociacionesJerarqua de tipos extensibleDefinidos por el usuario, tipos de datos abstractosHerencia simple o mltipleSobrecarga, anulacin, enlaceLenguaje declarativo para efectos especialesVinculante para lenguaje de programacin orientado a objetos

Base de datos orientadas a objetosModelo relacional extendidoRelaciones anidadasReferenciasConjuntosTipos de filas, tipos abstractosFuncionesLenguaje declarativo extendidoComputacionalmente completoEl desajuste de impedancia sigue siendo fundamentalMezcla de modelos

Base de datos orientadas a objetoscreate type TipoDireccin(calle varchar(10),ciudad varchar(10))create row type TipoPublicacion (titulo varchar(50))create row type TipoLibro(isbn varchar(10)) under TipoPublicacion create row type TipoAutor (nombre varchar(25),Libros setof(BookType),direccion AddressType)create table Book of type TipoLibrocreate table Author of type TipoAutorBase de datos emergentes y futurasBases de datos XMLCurso 251-0317-00LXML y bases de datosProf. Dr. Donald Kossmann, el Dr. Peter FischerSemestre de otoo, mircoles 13-15Bases de datos mviles y personalesCurso 251-0373-00LSistemas de Informacin mviles y personalesProf. Dr. Moira C. NorrieSemestre de otoo, jueves 09-11

Sistema Orientado a objetosSistema de base de datosBase de datos orientadas a objetosDiferencia de impedancia objeto-relacional evitaProporcionar un modelo uniforme de datosCombina las caractersticas y propiedades deSistemas orientados a objetos y lenguajesBase de datos de los sistemas de gestinOODBDefinicin de base de datos orientada a objetosUn enfoque diverso de los sistemas de bases de datos orientadas a objetosHacer lenguajes orientados a objetos de programacin persistenteGestin y almacenamiento de datos de objetosMuchos intentos de definir las bases de datos orientadas a objetosEl manifiesto de base de datos orientada a objetos13 funciones obligatorias5 caractersticas opcionales4 opciones abiertasManifiesto de las consecuenciasVarias refutaciones del campo relacionalNo se tratan varias propiedades importantesManifiesto de la base de datos orientada a objetos1. Los objetos complejos2. Objeto de identidad3. Encapsulacin4. Tipos y clases5. Tipo y clase de jerarquas6. Anulacin, sobrecarga y enlace en tiempo7. Integridad Computacional8. Extensibilidad9. Persistencia10. Eficiencia11. Concurrencia12. Confiabilidad13. Lenguaje de consulta declarativaSistema manejadoresde base de datos

Sistema orientadoa objetosObjetosObjetos complejosObjeto formado a partir de otras ms simples por los constructoresRegistro, bolsa, lista y conjunto de constructores de objetos complejosIdentidad e igualdad del objetoCada objeto tiene un nico e inmutable identificador de objeto (OID)El intercambio de objetos a travs de referenciasDos objetos son idnticos si tienen el mismo OIDDos objetos son iguales si tienen el mismo estadoIgualdad superficial y profundoObjetosEncapsulacinEl objeto consiste en la interfaz y la implementacinLa interfaz define las firmas de los mtodos pblicosLa aplicacin incluye datos de los objetos y mtodosEl estado de objeto slo se modifica a travs de mtodos pblicosObjeto en la estructura de datos pueden estar expuestos para las consultas declarativas

Interfaz publicaTipo registroEstablecimiento del tipoTipos de datosDefinicin de las propiedades del objetoLa parte esttica describe la estructura del objetoLa parte dinmica describe el comportamiento dinmico de objetosSeparacin de la interfaz y la implementacinUtiliza para comprobar la correccin de los programas en tiempo de compilacinLas clases de objetosContenedor para los objetos del mismo tipoLos objetos se pueden agregar y quitarUtiliza para crear y manipular objetos en tiempo de ejecucin

Tipos y clasesclaseobjetovalortipotienedescribecontienetieneJerarquas de GeneralizacinVentajasHerramienta de modelado de gran alcance.Garantiza complejidad semntica.Reutilizacin de especificacin y la implementacin.

HerenciaLos objetos de la subclase pertenecen automticamente a la superclase.Los atributos y mtodos se heredan de la superclase.La subclase puede introducir nuevos atributos y mtodos.

La migracin entre las clasesMover objetos entre los niveles de jerarquaObjeto de especializacin () y generalizacin ()Clase instanciada contra miembro de la clase.

Jerarquas de GeneralizacinSustitucin de herenciaUn subtipo tiene ms operaciones que un supertipo.Un subtipo puede estar sustituido en donde se espera supertipo.Basada en el comportamiento en lugar de valores.

Inclusin de herenciaTodo objeto de subtipo es tambin objeto de supertipo.Basado en la estructura en lugar de las operaciones

Restriccin de herenciaCaso especial de herencia de inclusin.Subtipo es expresado por la fuerza de supertipo.

Especializacin herenciaLos objetos subtipo contienen informacin ms especfica.Anulacin, sobrecarga y enlace tiempo.Reemplazo de mtodosMtodo se redefine en el subtipo.Garantiza la especializacin de los mtodos.Conserva uniforme la interface del mtodo.

Sobrecarga de mtodosEfecto causado por el reemplazo de mtodos.La versin varios de un mtodo puede existir en paralelo.

El enlaceVersin adecuada para el mtodo sobrecargado seleccionado en tiempo de ejecucin.Tambin conocido como mtodo virtual de envo.

Integridad Computacional y extensibilidadIntegridad ComputacionalRequerido para el mtodo de implementacin de lenguaje.Cualquier computable puede ser expresada.Se puede realizar a travs de conexin con el lenguaje actual

ExtensibilidadLa base de datos tiene un conjunto de tipos predefinidos.Los desarrolladores pueden definir nuevos tipos de acuerdo a los requerimientos.Sin distincin de uso entre el sistema y los tipos de usuario.

Durabilidad y EficienciaPersistenciaLos datos tienen que sobrevivir a la ejecucin del programa.Persistencia ortogonal.Persistencia implcita.

La gestin del almacenamiento secundarioManejador de ndice.Agrupacin de datos.Almacenamiento temporal de datos.Seleccin de la ruta de acceso.Optimizacin de consultas.

Control de concurrencia y recuperacinConcurrenciaGestin de mltiples usuarios al mismo tiempo que interactan.Atomicidad, coherencia, aislamiento y durabilidad.Serialibilidad de operaciones.

Confiabilidad.Capacidad de recuperacin ante fallos del usuario, de software y hardware.Las transacciones se pueden confirmar o abortar.Restaurar el estado anterior coherente de los datos.Rehacer y deshacer las transaccionesRegistro de las operaciones

Lenguaje de consulta declarativaLenguaje de alto nivelExpresa preguntas no-triviales de forma concisa.Interfaz basada en texto o grficos.Declarativo.

Ejecucin EficientePosibilidad de optimizar consultas.

Independiente de la aplicacinTrabaja en cualquier base de datos posible.Sin necesidad de mtodos adicionales definidos sobre los tipos de usuario.Caractersticas opcionales y opciones abiertasCaractersticas opcionalesHerencia mltiple.La comprobacin de tipos y la inferencia.Distribucin.Operaciones de diseo, transacciones largas, transacciones anidadas.Versiones

Opciones abiertasParadigma de programacin.Representacin del sistema.Tipo de sistema.Uniformidad.Ms all del ManifiestoAdministracin de base de datos para empresas deservicios pblicos. Ver datos de definicin y derivados.

Los roles de objetoLos objetos tienen funciones, adems de tipos.Los roles se pueden ganar y perder de forma dinmica

Evolucin de base de datos.Esquema y datos deben evolucionar con gracia en el tiempo.

RestriccionesIntegridad, semntica y la evolucin de las restricciones.Definicin, gestin y ejecucin de las restricciones.BibliografaM. Atkinson, F. Bancilhon, D. DeWitt, K. Dittrich, D. Maier,and S. Zdonik: The Object-Oriented Database SystemManifesto, In: Building an Object-Oriented DatabaseSystem, Morgan Kaufmann 1992

M. Stonebraker, L. A. Rowe, B. Lindsay, J. Gray, M. Carey,M. Brodie, P. Bernstein, and D. Beech: Third-GenerationDatabase System Manifesto, In: ACM SIGMODRECORD, 19(3), 1990

H. Darwen and C. J. Date: The Third Manifesto, In: ACMSIGMOD RECORD, 24(1), 1995Siguiente semanaSerializacin Los objetos relacionales Asignaciones y marcos Los lenguajes de programacin persistentes