Está en la página 1de 32

Bases de Datos Introduccin

Orientada a Objetos

Descripcin del Curso Evolucin e Historia de los Sistemas de Gestin de Base de Datos Requisitos de Sistemas de Gestin orientada a objetos de base de datos

Descripcin
I.

del curso

Conceptos bsicos de bases de datos orientada a objetos

1. Introduccin 2. Persistencia de Objetos 3 . db4o


II.

Conceptos avanzados de bases de datos orientada a objetos.


4. Normas y sistemas comerciales 5. Almacenamiento e indexacin 6. Versin Modelos

III.

Gestin de datos de objeto semntica


7. Modelo de datos de OM y lenguaje de modelo de datos de OM g 8. Diseo e implementacin de OMS Avon 9. Gestin de datos consciente de contexto

Diseo
Diseo

de Base de Datos

conceptual

Aplicacin de diseo

Diseo Fisico

Sistema

de Gestin de Base de

Datos
Modelo conceptual Representacin y acceso a datos

Capa de interfaz de cliente

F/R

SQL,

JDBC, ODBC

Datos

de la semntica Operacin de la semntica

Datos

de la capa de modelo

Modelo

Relacional

Persistencia ACIDO Distribucin

Capa

de almacenamiento

RDBMS

Historia

1960
Modo de datos CODASYL Estndar

Jerrquica

y Evolucin
s e l a n o i c a l e r

1970
Red
SQL

Entidad relacion Modelo de la cadera

1980
SQL-86

Relacionales

1990
Object

ODMG 1.0 OM Modelo de Datos


Oriented
-

SQL:199

9 XML

Objeto-Relacional

Semi-estructurados

2000
XML

ODMG 3.0

Base

de Datos jerrquica

Datos organizados en un rbol


Un padre pude tener muchos hijos Un nio solo pueden un padre

Documentos descritos por los tipos de entidad 1:N (uno a muchos) las relaciones Consulta de navegacin de directorio Ejemplos

Sistemas de archivos LDAP Registro de Windows y Activacion de Directorio XML documentos y XQuery

Red

de Base de Datos

Datos organizan en grfico (red)


Padre puede tener muchos hijps Un nio puede tener muchos padres

Diagrama de Bachmann Tipos de registros definen propiedades Relaciones de los tipos de conjunto definidos

padre e hijo, lista enlazada (doble)...

Consulta de navegacin grfica Ejemplos

CODASYL

Datos organizan como tuplas en relaciones

Vnculo entre tuplas de datos


claves primarias y foraneas project, select, join

Algebra Relacional Formas Normales Relacionales Lenguaje Declarativo

definicin de datos, la coherencia, la manipulacin y la consulta


Oracle 11g, Microsoft SQL Server, IBM DB2 PostgreSQL, MySQL

Ejemplos

Base

de Datos Relacionales

Modelo relacional es muy sencillo


Solo referencias basicas conceptos deben ser simuladas Sistema de tipo restringido ningun tipo definido por el usuario datos complejos, control de versiones, funciones

Falta de modelos semnticos

Poco apoyo para la evolucin de datos y el esquema Discrepancia de impedancia objeto-relacional

Objeto-relacional

desajuste de impedancia

Desarrollo de aplicaciones orientadas a objetos y resultados de la gestin de datos relacionales en choque de dos modelos incompatibles Cdigo para asignar entre modelos est sobrecarga considerable, costosa y difcil de mantener

Base

de Datos Orientada a Objetos

Datos representados como objetos


Objeto de identidad Atributos y metodos Referencias, relaciones , asociaciones

Jerarqua de tipo extensible


tipos definidos por el usuario, tipos de datos abstractos solo o herencia mltiple enlace de sobrecargas, primordial, final

Lenguaje declarativo para fines especiales Vinculante para el lenguaje de programacin orientado a objetos

Base

de Datos Objeto-Relacional

Modelo Relacional Extendido

relaciones anadidas referencias conjuntos tipos de fila, tipos abstractos funciones

Declarativa del idioma extendido

computacionalmente completo

Falta de concordancia fundamental sigue siendo Mezcla de modelos

Base

de Datos Objeto-Relacional
(

create type AddressType street varchar(10), city varchar(10)


)

create row type PublicationType ( titlevarchar(50)

create row type BookType ( isbnvarchar(10) ) under PublicationType


create row type AuthorType namevarchar(25), bookssetof(BookType), address AddressType
)

create

table Book of type BookType create table Author of type AuthorType

Bases

de Datos nuevas y futuras

XML Base de Datos


Curso 251-0317- 00L XML y Base de Datos Prof. Dr. Donald Kossmann, Dr. Peter Fischer

Semestre de Otoo, Wed 13-15

Movil y Bases de Datos personales


Cuso 251-0373-00L Mviles y sistemas de Informacin Personal Prof. Dr. Moira C. Norrie Semestre

de Otoo, Thu 9 - 11

Base

de Datos Orientada a Objetos

Orientada a Sistemas

Objetos

Base de

Datos Sistemas

Evitar el desajuste de impedancia objeto-relacional Proporcionar un modelo de datos uniforme

Combinar caractersticas y propiedades de


idiomas y sistemas orientados a objetos sitema de gestin de Bases de Datos

Definicin

de Bases de Datos Orientada a Objetos

Enfoque diverso sistemas de base de datos orientada a objetos


haciendo orientado a objetos lenguajes de programacin persistentes Administracin y almacenamiento de datos de objeto Muchos intentos para definir las bases de datos orientada a objetos

El manifiesto de la base de datos orientada a objetos


13 funciones obligatorias 5 caracteristicas opcionales 4 opciones abiertas varios refutaciones del campo relacional varias propiedades importantes no dirigidas

Manifiesto despus

El

manifiesto de Base de Datos Orientada a Objetos


Objetos complejos 2. Objetos de entidad 3. Encapsulamiento 4 . Tipos y clases 5. Tipos y jerarquas de clases 6. Reemplazar, sobrecarga y enlace 7. Computacional completo 8. Extensibilidad 9. Persistente 10. Eficiencia 11. Concurrencia 12. Fiabilidad 13. Lenguaje de consulta declarativa
1.

Sistema

Orientada a Objetos

Sistema de Gestin

de Base de Datos

September 19, 2008 Michael Grossniklaus Department

of Computer Science grossniklaus@inf.ethz.ch20

Objetos

Objetos complejos

objeto complejo formado desde las ms simples por constructores constructores de objeto complejo de registro, conjunto, bolsa, lista y matriz constructor de otorgonalidad

La igualdad y la identidad de objeto


cada objeto tiene identificador de objetos nico e inmutable (OID) uso compartido de objetos a travs de referencias dos objetos son iguales si tienen el mismo OID dos objetos son iguales si tienen el mismo Estado igualdad superficial y profunda

Objetos

Encapsulacin

consiste en la implementacin de la interfaz interfaz define las firmas de mtodos pblicos la implementacin incluye mtodos y datos de objeto Estado de objeto slo se modifica a travs de mtodos pblicos estructura de datos de objeto puede estar expuesto para consultas declarativas

Interfa

tipo

de registro

z pblica
establecer

el tipo de

Tipos

y Clases

Tipos de datos
definicin de propiedades de objeto elemento esttico describe la estructura de objeto parte dinmica describe el comportamiento del objeto separacin de interfaz e implementacin utilizado para comprobar la correccin de programas en tiempo de compilacin

Clases de objetos

contenedor de objetos del mismo tipo pueden aadir y eliminar objetos para crear y manipular objetos en tiempo de ejecucin

Clase

Tipo

contiene

describe

Objetos

Valor

Generalizacin Jerarqucas

Ventajas

Publicacion
-I-getName()

herramienta de modelado gran enlace garantizar la complejidad semntica reutilizacin de especificacin y aplicacin

-I-getAuthors()

Artculo
-I-getPages()

Libro
getISBN()

Herencia

-I-getJournal()

objetos de subclase pertenecen automticamente a la superclase atributos y mtodos heredados de la superclase subclase puede introducir nuevos atributos y mtodos mover objetos entre los niveles de la jerarqua especializacin de objeto () y generalizacin () instancia de la clase frente a miembros de clase

Procedimiento
getConference()

Migracin entre las clases

Generalizacin Jerarqucas
Cambio en la herencia

Internet has more operations than supertype subtipo puede sustituirse donde se espera supertipo basado en el comportamiento, en lugar de valores

Inclusin de la herencia

cada objeto de subtipo es tambin objeto de supertipo based on structure rather than operations

Restriccin de la herencia

caso especial de herencia de insercin subtipo se expresa por la restriccin de supertipo


subtipo objetos contienen informacin ms especfica

Especializacn de herencia

Reemplazar, sobrecarga y tarde vinculante


Method overriding
mtodo se redefine en subtipo especializacin de garantas de mtodos interfaz de mtodo uniforme de conservas
interface

Shape
+draw(Graphics g)

Rectangulo
+draw(Graphics g)

Mtodo de sobrecarga El enlace

efecto causado por reemplazar el mtodo puede existir varios versin de un mtodo en paralelo

Rectangulo con Relleno


+draw(Graphics g)

versin apropiada de mtodo sobrecargado seleccionado en tiempo de ejecucin tambin conocido como envo de mtodo virtual

Integridad

Computacional y Extensibilidad

Computacional completo

requisitos para el lenguaje de implementacin del mtodo puede expresar cualquier funcin computable pueden realizarse a travs de la conexin con el lenguaje existente

Extensibilidad

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 tipos de sistema y de usuario

Durabilidad

y Eficiencia

Persistencia

datos tienen que sobrevivir la ejecucin del programa persistenia ortogonal persistencia implicita indice de gstion datos de clustering almacenamiento temporal de datos seleccin de rutas de acceso optomizacin de la consulta

Gestin de almacenamiento secundario


Recuperacin

y Control de concurrencia

Concurrencia

Administracin de mltiples usuarios interactuar simultneamente atomicidad, coherencia, aislamiento y durabilidad seriabilizacin de las operaciones

Fiabilidad

resistencia a fallos de hardware, software y usuario las transacciones pueden comprometidas o anuladas restaurar el estado anterior de coherente de los datos Rehacer y deshacer de transacciones registro de las operaciones

Lenguaje

de Consulta Declarativa

Lenguaje de alto nivel


expresar de forma concisa consultas no triviales interfaz basada en texto o grfica declarativo

Eficiente ejecucin

posibilidad de optimizacin de la consulta


trabajar en cualquier base de datos posible no hay necesidad de mtodos adicionales de tipos definidos por el usuario

Aplicacin independiente

Abrir

Opciones y caractersticas opcionales

Caractersticas opcionales
herencia mltiple comprobacin de tipos y la inferencia distribucin diseo de transacciones, las transacciones largas, transacciones anidadas versiones paradigma de programacin sistema de representacin sistemas de tipos uniformidad

Abrir opciones

Ms

all del Manifiesto

Base de Datos de utilidades de admnistracin Definicin de la vista y datos derivados


Objeto funciones

los objetos tienen funciones adems de tipos funciones pueden gan y perdi dinmicamente
esquema y datos tiene que evolucionar correctamente con el tiempo integridad, semntica y las limitaciones de la evolucin Definicin, gestin y aplicacin de restricciones

Bade de Datos de la evolucin

Restricciones

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 Database System Manifesto, In: ACM SIGMOD RECORD, 19(3), 1990 H. Darwen and C. J. Date: The Third Manifesto , In: ACM SIGMOD RECORD, 24(1), 1995

Prxima

Clase
de objetos

Persistencia
Serializacin

Objeto-relacional asignaciones y marcos

Persistentes lenguajes de programacin