base de datos orientada a objetos

36
Base de Datos Orientada a Objetos Antonio Aguilar Galicia Juana Vivas Villanueva Greysi Martínez Arce

Upload: tass

Post on 23-Feb-2016

36 views

Category:

Documents


0 download

DESCRIPTION

Base de Datos Orientada a Objetos. Antonio Aguilar Galicia Juana Vivas Villanueva Greysi Martínez Arce. Base de Datos Orientada a Objetos. Introducción. Visión General del Curso Evolución e Historia de los Sistemas de Gestión de Bases de Datos - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Base de Datos Orientada a Objetos

Base de Datos Orientada a Objetos

Antonio Aguilar Galicia Juana Vivas VillanuevaGreysi Martínez Arce

Page 2: Base de Datos Orientada a Objetos

Base de Datos Orientada a ObjetosIntroducción• Visión General del Curso• Evolución e Historia de los Sistemas de Gestión de Bases de Datos• Requisitos de los Sistemas de Gestión de Gestión de Bases de Datos Orientados a Objetos

Page 3: Base de Datos Orientada a Objetos

Organización

Page 4: Base de Datos Orientada a Objetos

Ejercicios

El curso será acompañado por ejercicios Trabajar con tecnologías tratadas en el curso Sesiones de tutoría por semana

Iniciando en Octubre 3, 2008 IFW A 32.1, 11-12 Alexandre de Spindler

¡Opcional pero si muy recomendable!

Page 5: Base de Datos Orientada a Objetos

Examen

Período de sesiones de exámenes Enero 19, 2009 – Febrero 13, 2009 Las excepciones se pueden organizar para los

estudiantes de intercambio. Examen oral en inglés Duración de 15 minutos 5 ECTS

Page 6: Base de Datos Orientada a Objetos

Visión general del cursoI. Fundamentos de Bases de datos orientados a objetos

1. Introducción2. La persistencia de objetos3. db4o

II. Conceptos avanzados de bases de datos orientados a objetos4. Normas y sistemas comerciales5. Almacenamiento e indexación6. Modelos de la versión

III. Semántica gestionado de objetos de datos7. Modelo de Datos OM y Leguaje de Modelo de Datos OM8. Diseño e Implementación de OMS Avon9. Contexto – Consciente de Gestión de Datos

Page 7: Base de Datos Orientada a Objetos

Diseño Conceptual

Diseño de Implementación

Diseño Físico

Diseño de Base de Datos

Page 8: Base de Datos Orientada a Objetos

Sistema de Gestión de Base de Datos

Capa de Interfaz de Cliente

Capa de Modelo de Datos

Capa de Almacenamiento

E/RSQL, JDBC, ODBC

Modelo Relacional

RDBMS

Modelo Conceptual de acceso y representación de datos

Datos de la SemánticaOperaciones de la Semántica

PersistenciaACIDDistribución

Page 9: Base de Datos Orientada a Objetos

Evolución e Historia

Mod

elo

de D

atos

Rel

acio

nal

Está

ndar

CO

DASY

L

SQL

Mod

elo

Enti

dad

- Rel

ació

n

SQL

- 86

ODM

G 1

.0M

odel

o de

dat

os O

M

SQL

:199

9XM

L

ODM

G 3

.0

Jerarquía

Red

RelacionalOrientado a Objetos

Objeto RelacionalSemi - Estructurado

XML

1960 1970 1980 1990 2000

Page 10: Base de Datos Orientada a Objetos

Jerarquía en Bases de Datos Datos organizados en árbol

Un padre puede tener muchos hijos

Un hijo puede tener solo un padre Examen oral en inglés Duración de 15 minutos 5 ECTS Ejemplos

Un padre puede tener muchos hijos

Un hijo puede tener solo un padre

Bibliografía

Libro Artículo

Autor Autor Autor

Page 11: Base de Datos Orientada a Objetos

Red De Bases de Datos

Autor Autor Autor

Bibliografía

Libro Artículo

Datos organizados en gráfica (enrejado)

Un padre puede tener muchos hijos Un hijo puede tener muchos padres

Diagramas Bachmann Las propiedades definen los tipos de

registro Establecer los tipos de relaciones

definidas Entre padre-hijo, (doble) de la

lista encadenada Consulta por el gráfico de navegación Ejemplos

CODASYL

Page 12: Base de Datos Orientada a Objetos

Bases de Datos Relacional Los datos organizados como tuplas en las

relaciones Enlace entre los datos de tuplas

Claves primarias y foráneas Algebra relacional

Proyecto, selección, unirse Forma relacional normal Lenguaje declarativo

Definición de datos, consistencia, manipulación y consulta

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

Page 13: Base de Datos Orientada a Objetos

Bases de Datos Relacional

El modelo relacional es muy simple Solo los conceptos básicos → las referencias deben ser simuladas Sistema de tipo restringido → no definidos por el usuario

La falta de modelado semántico Datos complejos, control de versiones, roles

Poco apoyo para los datos y la evolución del esquema Desajuste Objeto-Relacional de impedancia

Page 14: Base de Datos Orientada a Objetos

Diferencia de Objeto – Relacional e Impedancia

Resultado de aplicaciones de desarrollo orientada a objetos y relacional de la gestión de datos en choque de dos modelos incompatibles

El código de mapa entre los dos modelos es una sobrecarga considerable, costoso y difícil de mantener

Autor Publicación

Artículo Libro

Page 15: Base de Datos Orientada a Objetos

Bases de Datos Orientado a Objetos

Los Datos representados como objetos Identidad de objeto Atributos y Métodos Referencias, relaciones, asociaciones

Jerarquía de tipo extensible Tipos definidos por el usuario, los

tipos de datos abstractos Herencia simple o múltiple Sobrecarga, anulación, enlace

Lenguaje declarativo con fines para ad hoc

Encuadernación para el lenguaje de programación orientado a objetos

Autor Publicación

autor publicación

partición

Artículo Libro

publicación libro

Page 16: Base de Datos Orientada a Objetos

Bases de datos Objeto - Relacional

Modelo Relacional Extendido Relaciones anidadas Referencias Conjuntos Tipos de filas, tipos abstractos Funciones

Lenguaje declarativo extendido Computacionalmente completo

La falta de concordancia sigue siendo fundamental

La mezcla de modelos

Page 17: Base de Datos Orientada a Objetos

Bases de datos Objeto - Relacional

Page 18: Base de Datos Orientada a Objetos

Bases de datos emergentes y futuras

Bases de datos XMLCurso 251-0317-00LXML y Bases de datosProf. Dr. Donald Kossmann, Dr. Peter FischerSemestre de otoño, Miércoles 13-15

Bases de datos móviles y personalesCurso 251-0373-00LSistemas de información personal y móvilesProf. Dr. Moira C. NorrieSemestre de otoño, Jueves 9-11

Page 19: Base de Datos Orientada a Objetos

Bases de Datos Orientados a Objetos

El objeto-relacional las diferencias de impedancia Proporciona un modelo uniforme de datos Combina las características y propiedades de:

Sistemas y lenguajes orientados a objetos sistema gestor de base de datos

Page 20: Base de Datos Orientada a Objetos

Definición de Base de Datos Orientada a Objetos Diversos enfoques en Sistemas de Base de Datos

Orientados a Objetos Haciendo lenguajes de programación orientada a objetos persistentes Gestión y almacenamiento de datos de objetos

Varios intentos de definir base de datos orientados a objetos Manifestación de la base de datos orientada a objetos

13 Características obligatorias 5 Características opcionales 4 Opciones abiertas

Manifiesto de secuelas Varias objeciones desde el campo relacional Varias propiedades importantes que no se tratan

Page 21: Base de Datos Orientada a Objetos

Manifestación de la base de datos orientada a objetos

Sistema Orientado a Objetos

1. Objetos complejos2. Objeto de identidad 3. Encapsulación 4. Tipos y clases 5. Tipos y clases de herencia6. Anulación, sobrecarga y enlace7. Integridad Computacional 8. Extensibilidad9. Eficiencia10. Concurrencia 11. Confiabilidad 12. Sistemas de gestión 13. Lenguaje de consulta declarativa

Sistema Gestor de base de datos

Page 22: Base de Datos Orientada a Objetos

Objetos Objetos complejos

Objeto complejo formado a partir de otras simples y por los constructores

Registrar, configurar, capturar y constructores de la matriz de objetos complejos

Constructor perpendicular Objeto de identidad e igualdad

Cada objeto tiene identificador de objeto único e inmutable (OID) El intercambio de objetos a través de referencias Dos objetos son iguales si tiene el mismo OID Dos objetos son iguales si tiene el mismo estado Igualdad superficial y profunda

Page 23: Base de Datos Orientada a Objetos

Objetos Encapsulación

Objeto consistente en la interfaz y la implementación Interfaz define la asignación de los métodos públicos La aplicación incluye datos de objetos y métodos Estados de objetos solo se modifican a través de métodos públicos Objeto de estructura de datos pueden estar expuestos para las

consultas declarativas

Interfaz publica

Tipo de registro

Tipo de configuración

Page 24: Base de Datos Orientada a Objetos

Tipos y Clases Tipos de datos

Definición de las propiedades del objeto Parte estática se describe la estructura del objeto Se describe el comportamiento dinámico de objetos Separación de la interfaz y la implementación Utilizado para comprobar la corrección de los programas en

tiempo de compilación Clases de Objetos

Contenedor para los objetos del mismo tipo Los objeto se pueden agregar y quitar Se utiliza para crear y manipular objetos en tiempo de ejecución

Page 25: Base de Datos Orientada a Objetos

Tipos y Clases

Clase tiene Tipo

Objeto tiene Valor

contiene describe

Page 26: Base de Datos Orientada a Objetos

Jerarquías de GeneralizaciónPublicación

Artículo Libro

Proceder

Ventajas Herramienta de modelado de gran alcance Garantizar la complejidad semántica Reutilización de especificación e implementación

Herencia Objetos de la subclase pertenecen automáticamente a

superclase Atributos y métodos se heredan de la superclase Subclase puede introducir nuevos atributos y métodos

La migración entre las clases Mover objetos entre los niveles de jerarquía La especialización del objeto (↓) y generalización (↑) Instancia de clase frente al miembro de la clase

Page 27: Base de Datos Orientada a Objetos

Jerarquías de Generalización

La sustitución de herencia Subtipo tiene más operaciones que supertipo Subtipo 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 operaciones

Restricción de la herencia La inclusión caso especial de la herencia Subtipo se expresa por la fuerza de supertipo

Especialización de herencia Objetos subtipo contiene información más específica

Page 28: Base de Datos Orientada a Objetos

Anulación, sobrecarga y enlace de tiempo

El reemplazo de métodos El método es redefinido en el subtipo Garantiza la especialización de los métodos El método conserva la interfaz uniforme

La sobrecarga de métodos Efecto causado por el reemplazo de métodos Varias versiones de un método pueden existir

en paralelo El enlace

El método sobrecargado selecciona la versión adecuada en tiempo de ejecución

También conocido como método de envío virtual

Forma

Rectángulo

Rectángulo relleno

Page 29: Base de Datos Orientada a Objetos

Integridad computacional y

Integridad computacional Requisito del 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 Las bases de datos tienen un conjunto de tipos predefinidos Los desarrolladores pueden definir nuevos tipos de acuerdo a los

requerimientos Sin distinción de uso entre el sistema y los tipos de usuario

Page 30: Base de Datos Orientada a Objetos

La durabilidad y eficiencia

Persistencia Los datos tienen que sobrevivir a la ejecución del programa La persistencia ortogonal La persistencia implícita

La gestión del almacenamiento secundario Índice de almacenamiento La agrupación de datos Almacenamiento temporal de datos Selección de la ruta de acceso Optimización de consultas

Page 31: Base de Datos Orientada a Objetos

Control de concurrencia y recuperación

Concurrencia La gestión de múltiples usuarios al mismo tiempo que interactúan Atomicidad, coherencia, aislamiento y durabilidad Serialisabilidad de operaciones

confiabilidad Capacidad de recuperación 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 transacciones Registro de las operaciones

Page 32: Base de Datos Orientada a Objetos

Lenguaje de consulta declarativa

Lenguaje de alto nivel Expresa preguntas no-triviales de forma concisa Interfaz basada en texto o gráficos Declarativo

Ejecución eficiente Posibilidad para 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

Page 33: Base de Datos Orientada a Objetos

Características opcionales y opciones abiertas

Características opcionales Herencia múltiple La comprobación de tipos y la inferencia Distribución Diseño de transacciones, las transacciones de largo, las

transacciones anidadas Versiones

Opciones abiertas Paradigma de programación Representación del sistema Tipo de sistema Uniformidad

Page 34: Base de Datos Orientada a Objetos

Más allá del Manifiesto

Base de datos de administración de empresas de servicios públicos

Ver datos de definición y derivados Los roles de objeto

Los objetos tienen funciones, además de los tipos Los papeles se pueden ganar y perder de forma dinámica

La evolución de las bases de datos Datos y esquemas que tienen que evolucionar en el tiempo

Restricciones La integridad, la semántica y la evolución de las restricciones Definición, gestión y ejecución de las restricciones

Page 35: Base de Datos Orientada a Objetos

Literatura

Page 36: Base de Datos Orientada a Objetos

La Siguiente SemanaLa Persistencia en Objetos

• Serialización• Objeto-Relacional Asignaciones y Marcos• Lenguajes de programación Persistentes