descripción del curso evolución e historia de los sistemas de gestión de base de datos
DESCRIPTION
Descripción del Curso Evolución e Historia de los Sistemas de Gestión de Base de Datos Requisitos de Sistemas de Gestión orientada a objetos de base de datos. B ases de D atos O rientada a Objetos Introducción. Organización Michael Grossniklaus - PowerPoint PPT PresentationTRANSCRIPT
·Descripción del Curso·Evolución e Historia de los Sistemas de Gestión de Base de Datos·Requisitos de Sistemas de Gestión orientada a objetos de base de datos
Bases de Datos Orientada a ObjetosIntroducción
Organización
·Michael Grossniklaus ETH Zurich Politecnco idi Milano IFW D 46.2 Campus Bassini, Sala 18/103 +41 44 632 72 73 + 3 9 0 2 2 3 9 9 3 4 7 4 [email protected] [email protected]
·Alexandre de Spindler E T H Z u r i c h IFW D 47.1 + 41 44 632 74 16 [email protected]
Ejercicios ·Curso estará acompañado de ejercicios·Trabajar con las tecnologías tratadas en el curso·Tutorial de sesiones todas las semanas
·A partir del 03 de octubre 2008·IFW Un 32.1, 12.11·Alexandre de Spindler
·Opcional, pero muy recomendable!
Examen
·Del período de sesiónes ·19 De enero de 2009 – el 13 de febrero de 2009·Excepciones pueden organizarse para estudiantes de intercambio
·Examen oral en inglés·Duración de 15 minutos·5 ECTS
Descripción del curso
I. Conceptos básicos de bases de datos orientada a objetos 1 . Introducción 2. Persistencia de Objetos 3 . db4o
II. Conceptos avanzados de bases de datos orientada a objetos. 4. Normas y sistemas comerciales 5. Almacenamiento e indexación 6. Versión Modelos
III. Gestión de datos de objeto semántica 7. Modelo de datos de OM y lenguaje de modelo de datos de OM g 8. Diseño e implementación de OMS Avon 9. Gestión de datos consciente de contexto
Diseño de Base de Datos
Diseño conceptual
Aplicación de diseño
Diseño Fisico
Sistema de Gestión de Base de Datos
Modelo conceptual Representación y acceso a datos
Datos de la semánticaOperación de la semántica
PersistenciaACIDODistribución
Capa de interfaz de cliente
Datos de la capa de modelo
Capa de almacenamiento
F/R SQL, JDBC, ODBC
Modelo Relacional
RDBMS
Historia y Evolución
OD
MG
3.0
OD
MG
1.0
OM
Modelo de D
atos
CO
DA
SY
L Están
dar
SQ
L-86
SQ
L
SQ
L:199
9 XM
L
Jerárquica
Relacionales
Red
- Object Oriented
Objeto-Relacional
Semi-estructurados
XML
1960 1970 1980 1990 2000
relacionales
Modo de datos
Modelo de la
cadera
Entidad relacion
Base de Datos jerárquica
·Datos organizados en un árbol·Un padre pude tener muchos hijos·Un niño solo pueden un padre
·Documentos descritos por los tipos de entidad
·1:N (uno a muchos) las relaciones·Consulta de navegación 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 gráfico (red)·Padre puede tener muchos hijps·Un niño 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 navegación gráfica ·Ejemplos
·CODASYL
·Datos organizan como tuplas en relaciones
·Vínculo entre tuplas de datos ·claves primarias y foraneas
·Algebra Relacional ·project, select, join
·Formas Normales Relacionales·Lenguaje Declarativo·definición de datos, la coherencia, la manipulación y la consulta
·Ejemplos ·Oracle 11g, Microsoft SQL Server, IBM DB2 ·PostgreSQL, MySQL
·Modelo relacional es muy sencillo ·Solo referencias basicas → conceptos deben ser simuladas·Sistema de tipo restringido → ningun tipo definido por el usuario
·Falta de modelos semánticos·datos complejos, control de versiones, funciones
·Poco apoyo para la evolución de datos y el esquema·Discrepancia de impedancia objeto-relacional
Base de Datos Relacionales
Objeto-relacional desajuste de impedancia
·Desarrollo de aplicaciones orientadas a objetos y resultados de la gestión de datos relacionales en choque de dos modelos incompatibles
·Código para asignar entre modelos está sobrecarga considerable, costosa y difícil de mantener
Base de Datos Orientada a Objetos
·Datos representados como objetos·Objeto de identidad·Atributos y metodos·Referencias, relaciones , asociaciones
·Jerarquía de tipo extensible·tipos definidos por el usuario, tipos de datos abstractos·solo o herencia múltiple·enlace de sobrecargas, primordial, final
·Lenguaje declarativo para fines especiales·Vinculante para el lenguaje de programación 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 ( title varchar(50)
)
create row type BookType ( isbn varchar(10)
) under PublicationType
create row type AuthorType ( name varchar(25), books setof(BookType), address AddressType
)
create table Book of type BookType create table Author of type AuthorType
Bases de Datos nuevas y futuras
·XML Base de DatosCurso 251-0317- 00L XML y Base de DatosProf. Dr. Donald Kossmann, Dr. Peter Fischer Semestre de Otoño, Wed 13-15
·Movil y Bases de Datos personalesCuso 251-0373-00L Móviles y sistemas de Información PersonalProf. Dr. Moira C. Norrie Semestre de Otoño, Thu 9 - 11
Base de DatosOrientada a Objetos
Base de Datos Orientada a Objetos
Sistemas Sistemas
·Evitar el desajuste de impedancia objeto-relacional·Proporcionar un modelo de datos uniforme·Combinar características y propiedades de
·idiomas y sistemas orientados a objetos·sitema de gestión de Bases de Datos
Definición de Bases de Datos Orientada a Objetos
·Enfoque diverso sistemas de base de datos orientada a objetos
·haciendo orientado a objetos lenguajes de programación persistentes·Administración 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
·Manifiesto después ·varios refutaciones del campo relacional·varias propiedades importantes no dirigidas
September 19, 2008 Michael Grossniklaus – Department of Computer Science – [email protected] 20
El manifiesto de Base de Datos Orientada a Objetos
1.Objetos complejos2.Objetos de entidad 3.Encapsulamiento
4 . Tipos y clases 5. Tipos y jerarquías de clases 6. Reemplazar, sobrecarga y enlace
Sistema Orientada a Objetos
7.Computacional completo 8. Extensibilidad9. Persistente 10. Eficiencia 11. Concurrencia Sistema de Gestión
de Base de Datos 12. Fiabilidad13. Lenguaje de consulta declarativa
·Objetos complejos·objeto complejo formado desde las más 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 través 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
·Encapsulación·consiste en la implementación de la interfaz ·interfaz define las firmas de métodos públicos·la implementación incluye métodos y datos de objeto ·Estado de objeto sólo se modifica a través de métodos públicos·estructura de datos de objeto puede estar expuesto para consultas
declarativas
tipo de registro Interfaz pública
establecer el tipo deO
bjetos
·Tipos de datos ·definición de propiedades de objeto·elemento estático describe la estructura de objeto·parte dinámica describe el comportamiento del objeto ·separación de interfaz e implementación·utilizado para comprobar la corrección de programas en tiempo de
compilación
·Clases de objetos ·contenedor de objetos del mismo tipo·pueden añadir y eliminar objetos·para crear y manipular objetos en tiempo de ejecución
Tipos y Clases
Tipo
Clase a
describe
a
contiene
Objetos
Valor
• Ventajas
• Herencia
·herramienta de modelado gran enlace·garantizar la complejidad semántica ·reutilización de especificación y aplicación
Publicacion
-I-getName() -I-getAuthors()
Artículo
-I-getPages() -I-getJournal()
Libro
getISBN()
·objetos de subclase pertenecen automáticamente a la superclase
·atributos y métodos heredados de la superclase ·subclase puede introducir nuevos atributos y métodos
·Migración entre las clases ·mover objetos entre los niveles de la jerarquía·especialización de objeto (↓) y generalización (↑)·instancia de la clase frente a miembros de clase
Procedimiento
getConference()
Generalización Jerarquícas
·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
·Inclusión de la herencia ·cada objeto de subtipo es también objeto de supertipo ·based on structure rather than operations
·Restricción de la herencia·caso especial de herencia de inserción·subtipo se expresa por la restricción de supertipo
·Especializacón de herencia ·subtipo objetos contienen información más específica
Generalización Jerarquícas
Reemplazar, sobrecarga y tarde vinculante
·Method overriding ·método se redefine en subtipo·especialización de garantías de métodos·interfaz de método uniforme de conservas
«interface» Shape
+draw(Graphics g)
Rectangulo
+draw(Graphics g) ·Método de sobrecarga·efecto causado por reemplazar el método·puede existir varios versión de un método en paralelo
·El enlace
Rectangulo con Relleno
+draw(Graphics g)
·versión apropiada de método sobrecargado seleccionado en tiempo de ejecución
·también conocido como envío de método virtual
Integridad Computacional y Extensibilidad
• Computacional completo·requisitos para el lenguaje de implementación del método·puede expresar cualquier función computable·pueden realizarse a través de la conexión 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 distinción de uso entre tipos de sistema y de usuario
Durabilidad y Eficiencia
·Persistencia ·datos tienen que sobrevivir la ejecución del programa ·persistenia ortogonal·persistencia implicita
·Gestión de almacenamiento secundario ·indice de géstion·datos de clustering ·almacenamiento temporal de datos·selección de rutas de acceso·optomización de la consulta
Recuperación y Control de concurrencia
·Concurrencia·Administración de múltiples usuarios interactuar simultáneamente·atomicidad, coherencia, aislamiento y durabilidad·seriabilización 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 gráfica·declarativo
·Eficiente ejecución·posibilidad de optimización de la consulta
·Aplicación independiente·trabajar en cualquier base de datos posible·no hay necesidad de métodos adicionales de tipos definidos por el
usuario
Abrir Opciones y características opcionales
·Características opcionales ·herencia múltiple·comprobación de tipos y la inferencia·distribución ·diseño de transacciones, las transacciones largas, transacciones
anidadas·versiones
·Abrir opciones·paradigma de programación·sistema de representación·sistemas de tipos ·uniformidad
Más allá del Manifiesto·Base de Datos de utilidades de admnistración·Definición de la vista y datos derivados·Objeto funciones
·los objetos tienen funciones además de tipos·funciones pueden ganó y perdió dinámicamente
·Bade de Datos de la evolución·esquema y datos tiene que evolucionar correctamente con el tiempo
·Restricciones·integridad, semántica y las limitaciones de la evolución·Definición, gestión y aplicación de 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
Próxima Semana Persistencia de objetos
·Serialización·Objeto-relacional asignaciones y marcos·Persistentes lenguajes de programación