13
Bases de Datos Especializadas

Bases de Datos Especializadas - UNID · OODBMS es un lenguaje equivalente al lenguaje de definición de datos (DDL, Data Definition Language) de los DBMS tradicionales. Al igual que

  • Upload
    others

  • View
    11

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Bases de Datos Especializadas - UNID · OODBMS es un lenguaje equivalente al lenguaje de definición de datos (DDL, Data Definition Language) de los DBMS tradicionales. Al igual que

Bases de Datos Especializadas

Page 2: Bases de Datos Especializadas - UNID · OODBMS es un lenguaje equivalente al lenguaje de definición de datos (DDL, Data Definition Language) de los DBMS tradicionales. Al igual que

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?

Page 3: Bases de Datos Especializadas - UNID · OODBMS es un lenguaje equivalente al lenguaje de definición de datos (DDL, Data Definition Language) de los DBMS tradicionales. Al igual que

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

Page 4: Bases de Datos Especializadas - UNID · OODBMS es un lenguaje equivalente al lenguaje de definición de datos (DDL, Data Definition Language) de los DBMS tradicionales. Al igual que

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.

Page 5: Bases de Datos Especializadas - UNID · OODBMS es un lenguaje equivalente al lenguaje de definición de datos (DDL, Data Definition Language) de los DBMS tradicionales. Al igual que

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

Page 6: Bases de Datos Especializadas - UNID · OODBMS es un lenguaje equivalente al lenguaje de definición de datos (DDL, Data Definition Language) de los DBMS tradicionales. Al igual que

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

Page 7: Bases de Datos Especializadas - UNID · OODBMS es un lenguaje equivalente al lenguaje de definición de datos (DDL, Data Definition Language) de los DBMS tradicionales. Al igual que

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

Page 8: Bases de Datos Especializadas - UNID · OODBMS es un lenguaje equivalente al lenguaje de definición de datos (DDL, Data Definition Language) de los DBMS tradicionales. Al igual que

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

Page 9: Bases de Datos Especializadas - UNID · OODBMS es un lenguaje equivalente al lenguaje de definición de datos (DDL, Data Definition Language) de los DBMS tradicionales. Al igual que

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.

Page 10: Bases de Datos Especializadas - UNID · OODBMS es un lenguaje equivalente al lenguaje de definición de datos (DDL, Data Definition Language) de los DBMS tradicionales. Al igual que

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/

Page 11: Bases de Datos Especializadas - UNID · OODBMS es un lenguaje equivalente al lenguaje de definición de datos (DDL, Data Definition Language) de los DBMS tradicionales. Al igual que

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

Page 12: Bases de Datos Especializadas - UNID · OODBMS es un lenguaje equivalente al lenguaje de definición de datos (DDL, Data Definition Language) de los DBMS tradicionales. Al igual que

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

Page 13: Bases de Datos Especializadas - UNID · OODBMS es un lenguaje equivalente al lenguaje de definición de datos (DDL, Data Definition Language) de los DBMS tradicionales. Al igual que

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