View
228
Download
0
Category
Preview:
Citation preview
Bases de Datos Especializadas
BASES DE DATOS ESPECIALIZADAS
1
Sesión No. 8
Nombre: Bases de Datos Orientadas a Objetos
Objetivo:
Al término de la sesión, el alumno describirá las características de las bases de
datos orientadas a objetos.
Contextualización
Si bien es cierto que el término Bases de Datos es muy común y que
actualmente se utiliza indiscriminadamente para hacer referencia a un conjunto
de datos almacenados posiblemente una hoja de Excel dentro de nuestra
computadora, sabemos que en la realidad ese archivo no es una base de datos.
Existen diversos tipos de bases de datos, el modelo más socorrido, eficiente y
utilizado, es el modelo relacional, pero existen otros tipos de modelos que han
ido surgiendo conforme las necesidades de almacenamiento y manipulación de
datos, además de los paradigmas de programación, han ido evolucionando
también.
En esta sesión nos enfocaremos al estudio del modelo de bases de datos
orientados a objetos, que se encuentra íntimamente ligado con el paradigma de
programación del mismo nombre: Paradigma Orientado a Objetos (POO).
¿Tienes noción de este modelo?
BASES DE DATOS ESPECIALIZADAS
2
Introducción al Tema
En años recientes la manipulación de los datos y el desarrollo de aplicaciones han ido
evolucionando a la par que los paradigmas de programación, hacia modelos más
complejos que el jerárquico, el de red o el relacional. Estos ambientes nuevos fueron
atendidos a través de un sistema de administración de bases de datos específico
(DMBS), como es el orientado a objetos, denominado OODBMS por sus siglas en inglés.
Este es un sistema que conjunta las virtudes de un DBMS con las características
propias de un paradigma de programación orientado a objetos.
Algunos elementos del modelo orientado a objetos
Es por eso que con la llegada de la tercera generación de los DBMS se fusionan las
técnicas de programación y modelado, aunada a la capacidad de la manipulación de
datos.
Bases de datos Orientadas a Objetos
Manipulación de datos
Definición de datos
Paradigma
OODBMS
Características de orientación a objetos
Características de DBMS
BASES DE DATOS ESPECIALIZADAS
3
Explicación
El paradigma orientado a objetos
El paradigma orientado a objetos enfocado a los sistemas de administración de bases
de datos tiene diferentes definiciones, entre ellas, Kim (1991) considera algunos de sus
elementos como:
Modelo de datos orientado a objetos: un modelo de datos (lógico) que captura
la semántica de los objetos soportados en la programación orientada a objetos.
Base de datos orientada a objetos: una colección persistente y compatible de
objetos definida por un modelo de datos orientados a objetos.
OODBMS: sistema que administra una base de datos orientada a objetos.
Cabe mencionar que varios de los OODBMS con la finalidad de tener una ejecución
exitosa, recurren al rescate de las fortalezas y combinación de características de
orientación a objetos y de un DBMS convencional, es decir, se retoman aquellas
fortalezas de los modelos ya existentes y del paradigma orientado a objetos.
En 1989, el Manifiesto de los sistemas de bases de datos orientados a objetos propuso
trece características que debe cumplir cualquier OODBMS basándose en dos criterios:
1. Debía tratarse de un sistema orientado a objetos y
2. Debía ser un DBMS (Atkinson et al., 1989)
Las reglas son las siguientes:
1. Deben soportarse objetos complejos: debe haber la posibilidad de crear
objetos complejos aplicando constructores a una serie de objetos básicos ya
existentes. Ejemplos, conjuntos, listas y tuplas.
2. Deben soportarse mecanismos de identidad de los objetos: todos los
objetos deben poseer una identidad unívoca que sea independiente de los
valores de sus atributos.
3. Debe soportarse la encapsulación: los objetos tienen una interfaz pública,
pero una ejecución privada de sus datos y métodos. La característica del
encapsulado garantiza que se va a conocer sólo el aspecto público del objeto
mientras que los detalles de su ejecución permanecen ocultos.
BASES DE DATOS ESPECIALIZADAS
4
4. Deben soportar los tipos o clases: se requiere que se soporte uno sólo de
estos dos conceptos. Los tipos se utilizan principalmente en tiempo de
compilación. Las clases se usan para guardar y manipular objetos similares en
tiempo de ejecución.
5. Los tipos o clases deben ser capaces de heredar de sus ancestros: un
objeto debe heredar las propiedades de sus superclases en la jerarquía de
clases. Esta propiedad garantiza la reutilización del código.
6. Debe soportar el enlace dinámico: los métodos deben poder aplicarse a
objetos de diferentes tipos (sobrecarga). La implementación de un método
dependerá del tipo del objeto al que se aplique (anulación). Para proporcionar
esta funcionalidad, el sistema no puede enlazar los nombres del método hasta el
momento de la ejecución (enlace dinámico).
7. El Lenguaje de manipulación de datos (DML) debe ser computacionalmente
completo: El DML del OODBMS debe ser un lenguaje de programación de
propósito general, con el lanzamiento de SLQ: 1999 el lenguaje se ha convertido
computacionalmente completo.
8. El conjunto de todos los tipos de datos debe ser ampliable: el usuario debe
ser capaz de construir nuevos tipos a partir del conjunto de tipos predefinidos por
el sistema.
9. Debe proporcionarse persistencia a los datos: los datos deben permanecer
(persistir) después de que termine la aplicación que los ha creado. El usuario no
debe tener que mover o copiar explícitamente los datos para hacerlos
persistentes.
10. El DBMS debe ser capaz de gestionar bases de datos de muy gran tamaño:
existen mecanismos para gestionar de manera eficiente el almacenamiento
secundario, como índices y búferes. Un OODBMS debe tener mecanismos
similares que sean invisibles al usuario y proporcionar así una clara
independencia entre los niveles lógico y físico del sistema.
11. El DBMS de soportar a usuarios concurrentes: el OODBMS debe
proporcionar mecanismos de control de concurrencia similares a los de los
sistemas convencionales
BASES DE DATOS ESPECIALIZADAS
5
12. El DBMS debe ser capaz de recuperarse de fallos de hardware y software:
un OODBMS debe proporcionar mecanismos de recuperación similares a los de
los sistemas convencionales.
13. El DBMS debe proporcionar una forma simple de consultar los datos: el
OODBMS debe proporcionar un mecanismo indicado que sea de alto nivel,
eficiente e independiente de la aplicación.
Con base en lo anterior podemos decir que entre las ventajas de los OODBMS destaca
el hecho de que cuentan con mejores capacidades de modelado así como soporte para
las transacciones de larga duración, adecuación a las aplicaciones avanzadas y un
mejor rendimiento.
Lenguajes para la definición de datos orientados
a objetos
El lenguaje de definición de objetos (ODL, Object Definition Languaje) es un lenguaje
para definir todas las especificaciones de los diferentes tipos de objetos en los
OODBMS es un lenguaje equivalente al lenguaje de definición de datos (DDL, Data
Definition Language) de los DBMS tradicionales.
Al igual que en los DBMS, el ODL en los OODBMS tiene como finalidad facilitar la
portabilidad de los esquemas entre sistemas compatibles al mismo tiempo que brinda la
interoperabilidad entre distintos sistemas. Así mismo el ODL tiene como principal
función el definir atributos y relaciones de los tipos.
Lenguajes para la consulta de datos orientados a objetos
El lenguaje de consulta de objetos (OQL, Object Query Language) proporciona un
acceso a la base de datos de objetos haciendo uso de una sintaxis muy similar a la del
SQL. Cabe mencionar que para las operaciones explícitas de actualización se realizan a
través de las operaciones definidas sobre los tipos de objetos. De la misma manera en
que en el SQL, en OQL puede utilizarse como un lenguaje autónomo. Los lenguajes
BASES DE DATOS ESPECIALIZADAS
6
soportados para este tipo de consultas dentro de un OODBMS son Smalltalk, C++ y
Java por lo que el OQL puede invocar operaciones programadas en estos lenguajes de
programación, que cabe mencionar, son lenguajes ideales para la programación
orientada a objetos.
Una consulta en OQL es una función que retorna un objeto que puede ser inferido del
operador que contribuye a la expresión que define a la consulta.
Expresiones
Dentro de las diversas expresiones tenemos:
Expresiones
Consultas
Una consulta está compuesta de un conjunto (que puede ser vacío) de expresiones de
definición de consultas, seguido de una expresión. El resultado de una consulta es un
objeto con o sin identidad.
Expresiones
de definición
de una consulta
elementales
de construcción
de tipo atómico
de objetosde colecciones
de conversión
de colecciones indexadas
de conjuntos binarios
BASES DE DATOS ESPECIALIZADAS
7
Lenguajes para la manipulación de datos orientados a objetos
El lenguaje de manipulación de objetos (OML, Object Manipulation Language), se utiliza
para realizar la especificación de cómo se extraen y manipulan los objetos de la base de
datos dentro del programa de aplicación.
A continuación se muestra la compilación y montaje de una aplicación en C++ con el
uso de ODL/OML.
Compilación y montaje de una aplicación en C++ con el uso de ODL/OML
BASES DE DATOS ESPECIALIZADAS
8
Conclusión
En conclusión los principales elementos o componentes de los OODBMS son:
Un modelo de objetos (OM, Object Model),
un lenguaje de definición de objetos (ODL, Object Definition Language),
un lenguaje de consulta de objetos (OQL, Object Query Language) y
una serie de enlaces de lenguajes con C++, Java y Smalltalk
No olvidemos que el ODL es un lenguaje que tiene como finalidad el definir las
especificaciones de los tipos de objetos para los sistemas compatibles, es un
lenguaje equivalente al DDL de un DBMS.
De igual manera el OQL proporciona acceso declarativo a la base de datos de
objetos haciendo uso de una sintaxis parecida al SQL, una consulta OQL es una
función que devuelve un objeto cuyo tipo puede inferirse del operador que
contribuye a formar la expresión de consulta.
BASES DE DATOS ESPECIALIZADAS
9
Para aprender más
A continuación encontrarás un par de hipervínculos para conocer y profundizar
más sobre el tema de bases de datos orientadas a objetos.
Investigación sobre la especificación de restricciones dinámicas en
esquemas conceptuales de bases de datos.
http://brd.unid.edu.mx/investigacion-sobre-la-especificacion-de-restricciones-
dinamicas-en-esquemas-conceptuales-de-bases-de-datos/
Artículo: Bases de datos orientadas a objetos
http://brd.unid.edu.mx/bases-de-datos-orientadas-a-objetos/
BASES DE DATOS ESPECIALIZADAS
10
Actividad de Aprendizaje
Objetivo de la actividad de aprendizaje de la sesión:
El alumno describirá las características principales del paradigma de bases de datos orientadas a objetos, así como los lenguajes que utiliza para la definición, consulta y manipulación de datos mediante un organizador gráfico.
Instrucciones:
¿Qué vas a hacer?
1. Con la finalidad de reforzar los conocimientos adquiridos a lo largo de
esta sesión, desarrollarás en Word una tabla donde se reflejen claramente
las los principales elementos de una base de datos orientada a objetos,
así como los OODBMS, ODL, OML, y OQL.
2. Puedes diseñar una tabla o cuadro en la manera que creas pertinente
para concentrar la información. Puedes incluir imágenes. Tal instrumento
y su contenido debe ser original, no se aceptarán tablas retomadas de
otro material.
3. Coloca el documento, de un máximo de 3 páginas, en la plataforma de
aprendizaje. Nómbralo S08TuNombreTuApellido.doc.
Recuerda que esta actividad te ayudará a identificar y apropiarte del concepto de
bases de datos orientadas a objetos y sus principales elementos.
Material: Como material inicial de consulta puedes usar la lectura de la sesión e incluir los que sean pertinentes.
¿Cuál es la forma de entrega?
Entrega en plataforma un documento en Word de máximo 3 páginas. Nombra tu
archivo de la siguiente forma: S08TuNombreTuApellido.doc
BASES DE DATOS ESPECIALIZADAS
11
¿Cómo serás evaluado?
En esta actividad se tomará en cuenta lo siguiente:
Forma Ponderación
Portada con datos generales: Universidad, maestría, asignatura, alumno y fecha.
Requisito
Referencias bibliográficas completas y pertinentes.
10 puntos
Ortografía y redacción adecuada. 10 puntos
Contenido
Título adecuado del cuadro o tabla 2 puntos
Contenido completo y correcto 48 puntos
Representación gráfica clara 30 puntos
Total 100 puntos
BASES DE DATOS ESPECIALIZADAS
12
Bibliografía
Atkinson, M., Bancilhon, F., DeWitt, D., Dittrich, K., Maier, D., Zdonik, B.
(1989). The Object-Oriented Database System Manifesto.
Connolly, T., Begg, C. (2005). Sistemas de bases de datos. Un enfoque
práctico para diseño, implementación y gestión, España, Pearson.
Rob, P., Coronal, C. (2004). Sistemas de bases de datos, diseño,
implementación y administración, México, Thomson.
Rossel Moraga, C. (2002) Generalidades sobre OODBMS. Consultado en
abril de 2013 de
http://www.inf.udec.cl/~revista/ediciones/edicion2/crossel.PDF
Silberschatz, A. et al. (2007). Fundamentos de diseño de bases de datos,
México, McGraw-Hill.
Varas, M.; Weld, C. y Jiménez, C. (1996) Una propuesta para la
especificación de restricciones dinámicas en esquemas conceptuales de
Bases de Datos. Universidad de Concepción. Consultado en abril de 2013
de http://www.inf.udec.cl/~mvaras/papers/valdivia/valdivia.htm
Recommended