UNIVERSIDAD DE EL SALVADOR FACULTAD DE INGENIERÍA Y ARQUITECTURA ESCUELA DE SISTEMAS INFORMÁTICOS BASE DE DATOS
TEMA: BASE DE DATOS ORIENTADAS A OBJETOS INTEGRANTES: ALVARENGA RAMIREZ, MELISSA ELIZABETH AR99026 CEA CANTÓN, OSCAR EDUARDO CC01044 MARCIANO MANCIA, JOSE ROBERTO MM02157 OSORIO GUANDIQUE, JOSE ANTONIO OG99016 GRUPO 13 26-MARZO-2015
RESUMEN: En el presente documento encontraremos un resumen acerca de la teoría, historia, y aplicabilidad de las bases de datos orientadas a objetos (BDOO), las cuales surgen con la finalidad de superar las deficiencias de los modelos anteriormente usados y así proporcionar eficiencia y sencillez a las aplicaciones. Las Bases de Datos Orientadas a Objetos dan solución al modelado y representación del “mundo real”, algo que los modelos clásicos realizan a través de una gran cantidad de datos; hoy en día el lenguaje orientado a objetos es muy utilizado en muchos sistemas y software por lo cual nos hemos atribuido a la tarea de investigar y recolectar una amplia variedad de información y lograr por medio de esta plasmar algunos concepto y características de las BDOO, además presentar las características, ventajas y desventajas de los Sistemas Gestores de Bases de Datos Orientadas a Objetos (SGBDOO).
OBJETIVOS OBJETIVO GENERAL
Concluir acerca de la factibilidad de utilizar las bases de datos orientadas a objetos.
Una Base de Datos Orientada a Objetos, es una Base de Datos donde las entidades son las clases, los elementos de datos son objetos y las relaciones se mantienen por medio de inclusión lógica; están diseñadas para el manejo de un sistema que ha sido modelado, diseñado e implementado como un conjunto de objetos relacionados entre sí. Los lenguajes de programación que utiliza una base de datos orientada a objetos utiliza herramientas de diseño para el modelado de objetos y codificación. Algunos de estos lenguajes de programación son: C++, Java, SmallTalk, LISP.
Realizar una investigación acerca de la teoría y la aplicabilidad de las bases de datos orientadas a objetos. ●
OBJETIVOS ESPECÍFICOS Resumir brevemente la teoría acerca de las bases de datos orientadas a objetos. Describir los motores de bases de datos actuales que implementan BDOO y la aplicabilidad de estos. Exponer ventajas y desventajas de las BDOO frente a las bases de datos relacionales. Describir necesidad de las BDOO en los sistemas de información actual. Explicar la implementación de BDOO en (SISTEMA GESTOR DE BASES DE DATOS.) componentes más importantes y configuraciones necesarias.
INTRODUCCIÓN
Las Bases de Datos Relacionales (BDR) lideran el mercado en vista de que son las más utilizadas, son ideales para aplicaciones tradicionales que soportan tareas administrativas y de negocio, sin embargo, como resultado de avances recientes en hardware y software, han surgido aplicaciones más sofisticadas, sistemas
multimedia, sistemas de información geográfica (GIS) y médica, aplicaciones 3D y sistemas inteligentes, aplicaciones de bioinformática, telecomunicaciones y robótica, entre otras, las cuales tienen requisitos y caracteriś ticas diferentes a las aplicaciones tradicionales, que pueden caracterizarse por estar compuestas de elementos complejos, transacciones de mayor duración, nuevos tipos de datos para almacenar elementos multimedia, y la necesidad de definir operaciones no estándar para la aplicación. Dentro de las aplicaciones se definen las Orientadas a Objeto (OO), y en general el paradigma de Programación Orientada a Objeto (POO) cuyos elementos complejos, antes referidos, son Objetos. En tal sentido, las BDR no están diseñadas para almacenar estos Objetos, con lo que al guardar los datos de un programa OO incrementa significativamente la complejidad del programa, dando lugar a más código y más esfuerzos de programación, así como al problema del Desfase de la Impedancia, definido esto como la diferencia de esquemas entre la caracteriś tica del repositorio y los elementos a almacenar. Por ello, las Bases de Datos Orientadas a Objetos (BDOO) se propusieron con la idea de satisfacer las necesidades de estas aplicaciones más complejas aprovechando las ventajas que ofrece la Programación Orientada a Objetos (POO) como una forma de resolver problemas utilizando modelos que se han organizado en base a conceptos del mundo real. Las bases de datos tradicionales almacenan sólo datos, mientras que las BDOO almacenan objetos, con una estructura arbitraria y un comportamiento. a diferencia entre ambos modelos. Consideremos el problema de almacenar un automóvil en un garaje al final del día. En un sistema de objetos el automóvil es un objeto, el garaje es un objeto, y hay una operación simple que es almacenar- automóvil -en-garaje. En un sistema relacional, todos los datos deben ser traducidos a tablas, de esta forma el automóvil debe ser desarmado, y todos los pistones almacenados en una tabla, todas las ruedas, en otros elementos del automóvil. Por la mañana, antes de irse a trabajar hay que componer de nuevo el automóvil para poder conducir, el problema surge al componer las piezas porque puede salir una moto en vez de un automóvil. Es por ello que las BDOO son ideales para almacenar y recuperar datos complejos permitiendo a los usuarios su navegación directa (sin un mapeo entre distintas representaciones).
HISTORIA Los lenguajes de programación orientado a objeto tienen sus raíces en el lenguaje SIMULA 67, propuesto a finales de la década de 1960. En Simula, el concepto de clase agrupa la estructura de datos interna de un objeto en una declaración de clase, Simula es un lenguaje fuertemente tipado para entornos compilados.
Sin embargo, el primer lenguaje que popularizó la aproximación a objetos fue Smalltalk (1976); que ofrece una gran flexibilidad gracias a la interpretación, y de Simula, añadiendo el concepto de metaclase. Con la llegada de las estaciones de trabajo en los años 80, han crecido numerosos lenguajes orientados a objetos inspirados en Simula o Smalltalk Entre los lenguajes compilados, los más celebres son C++, Objective C y Ediffel. En años recientes, han aparecido muchos prototipos experimentales y sistemas de bases de datos comerciales orientados a objetos. Entre los primeros se encuentran los sistemas ORION, OpenOODB, IRIS, ODE y el proyecto ENCORE/ObServer. Y entre los sistemas disponibles en el mercado están: GESTONE/OPAL de ServioLogic, ONTOS de Ontologic, Objectivity de Objectivity Inc., Versant de Versant Technologies, ObjecStore de ObjectDesign y O2 de O2 Technology.
ORIGEN DE LAS BASES DE DATOS ORIENTADAS A OBJETOS El origen se encuentra básicamente en las siguientes razones: La existencia de problemas para representar cierta información y modelar ciertos aspectos del "mundo real", puesto que los modelos clásicos permiten representar gran cantidad de datos, pero las operaciones y representaciones que se pueden realizar sobre ellos son bastante simples. El paso del modelo de objetos al modelo relacional genera dificultades que en el caso no surgen ya que el modelo es el mismo.Por lo tanto, las bases de datos orientadas a objetos surgen básicamente para tratar de paliar las deficiencias de los modelos anteriores y para proporcionar eficiencia y sencillez a las aplicaciones. Las debilidades y limitaciones de los Sistema Gestor de Bases de Datos Orientadas a Objetos son: ● Pobre representación de las entidades del "mundo real". ● Sobrecarga y poca riqueza semánticas. ● Soporte inadecuado para las restricciones de integridad y empresariales ● Estructura de datos homogénea ● Operaciones limitadas ● Dificultades para gestionar las consultas recursivas ● Desadaptación de impedancias ● Problemas asociados a la concurrencia, cambios en los esquemas y el inadecuado acceso navegacional. ● No ofrecen soporte para tipos definidos por el usuario (sólo dominios) Mientras que las necesidades de las aplicaciones actuales con respecto a las bases de datos son:
● Soporte para objetos complejos y datos multimedia ● Identificadores únicos ● Soporte a referencias e interrelaciones ● Manipulación navegacional y de conjunto de registros ● Jerarquías de objetos o tipos y herencia ● Integración de los datos con sus procedimientos asociados ● Modelos extensibles mediante tipos de datos definidos por el usuario ● Gestión de versiones ● Facilidades de evolución ● Transacciones de larga duración ● Interconexión e interoperabilidad Debido a las limitaciones anteriormente expuestas, su uso es más ventajoso si se presenta en alguno de los siguientes escenarios: ● Un gran número de tipos de datos diferentes ● Un gran número de relaciones entre los objetos ● Objetos con comportamientos complejos Se puede encontrar este tipo de complejidad acerca de tipos de datos, relaciones entre objetos y comportamiento de los objetos principalmente en aplicaciones de ingeniería, manufacturación, simulaciones, automatización de oficina y en numerosos sistemas de información. No obstante, las BDOO no están restringidas a estas áreas. Ya que al ofrecer la misma funcionalidad que su precursoras relacionales, el resto de campos de aplicación tiene la posibilidad de aprovechar completamente la potencia que las BDOO ofrecen para modelar situaciones del mundo real.
1. Debe soportar objetos complejos. Debe ser posible construir objetos complejos aplicando constructores a objetos básicos. 2. Identidad del objeto. Todos los objetos deben tener un identificador, el cual es independiente de los valores de sus atributos. 3. Encapsulamiento. Los programadores solo tienen acceso a la interfaz de los métodos, y los datos e implementación de estos métodos están en los objetos. 4. Tipos o clases. El esquema de una base orientada a objetos contiene un conjunto de clases o tipos. 5. Tipos o clases deben ser capaces de heredar de sus super-tipos o superclases los atributos y los métodos. 6. La sobrecarga debe ser soportada, los métodos deben poder aplicarse a diferentes tipos. 7. El DML debe ser completo. El DML en los sistemas gestores de bases de datos orientados a objetos debe ser un lenguaje de programación de propósito general. 8. El conjunto de tipos de datos debe ser extensible. No habrá distinción entre los tipos definidos por el usuario y los tipos definidos por el sistema, 9. Persistencia de datos. Los datos deben mantenerse después de que la aplicación que los creó haya finalizado, el usuario no tiene que hacer copia explícitamente.
CARACTERÍSTICAS DE UNA BDOO 1. Mientras que en una base de datos relacional los datos a almacenar se almacenan representados en tablas, en una BDOO los datos se almacenan como objetos. 2. Las características asociadas a las BDOO son: 3. Objetos: Cada entidad del mundo real se modela como un objeto. 4. La forma de identificar los objetos es mediante un identificador de objetos, único para cada objeto. 5. Encapsulamiento: cada objeto contiene y define procedimientos y la interfaz mediante la cual se puede acceder a él y a otros objetos.
Ventajas e inconvenientes de las bases de datos orientadas a objetos ● Manipula datos complejos de forma rápida ● Flexibilidad ● Elimina por completo la necesidad de Mapa de relacionamiento de objetos, con su consecuente mejora en desempeño. ● Mayor capacidad de modelado ● Ampliabilidad ● Lenguaje de consulta más expresivo ● Adecuación a las aplicaciones avanzadas de bases de datos. ● Mayores prestaciones. Los inconvenientes de un Sistema Gestor de Bases de Datos Orientadas a Objetos son:
CARACTERÍSTICAS DE UN SGBDOO
● Mecanismos de consulta muy primitivos, sin un estándar independiente de la plataforma aceptado. ● Imposibilidad de procedimientos almacenados, ya que los objetos sólo pueden ser consultados en el cliente.
● Inmadurez en el mercado ● No hay agrupamiento físico de objetos ● Su limitación suele residir en su especialización, ya que suelen estar diseñadas para un tipo particular de objetos (por ejemplo, una base de datos para un programa de CAD). ● Carencia de un modelo de datos universal ● Carencia de experiencia. ● Carencia de estándares. ● La optimización de consultas compromete la encapsulación.
ALGUNOS SGBDOO ● Db4o ● Informix ● Bdoviedo3 ● GemStone ● Versant
BIBLIOGRAFÍA
https://my.laureate.net/Faculty/webinars/Document s/2013Agosto_Base%20de%20Datos%20Enfoque%20O rientado%20Objetos.pdf https://santacruzramos.wikispaces.com/1.1.2+El+m odelo+de+datos+orientado+a+objetos http://www.monografias.com/trabajos79/basedatos-orientadas-objetos/base-datos-orientadasobjetos2.shtml#ixzz3VEWjJ5Xy http://es.wikipedia.org/wiki/Base_de_datos_orienta da_a_objetos http://www.exa.unne.edu.ar/depar/areas/informatic a/dad/DAD/Presentaciones/Bases_de_Datos_Orientada s_a_Objetos.pdf