Sunteți pe pagina 1din 18

Bases de Datos Orientadas a

Objetos

Teora de base de datos 2


Autor: Orlen Armando Flores Sierra

ndice
INTRODUCCIN ...................................................................................................... 2
RESUMEN ............................................................................................................. 3
DEFINICIN ........................................................................................................ 3
CARACTERSTICAS ................................................................................................ 4
PROPIEDADES ..................................................................................................... 4
HISTORIA.............................................................................................................. 5
GENERALIDADES ..................................................................................................... 6
CARACTERSTICAS DE BASE DE DATOS ORIENTADA A OBJETOS ........................................... 10
MANDATORIAS:............................................................................................... 10
OPCIONAL:.................................................................................................... 11

Bases de Datos Orientadas a Objetos | Teora de base de datos 2

ABIERTAS: ..................................................................................................... 11

PROPIEDADES .................................................................................................... 11
ENCAPSULAMIENTO .......................................................................................... 11
HERENCIA ..................................................................................................... 12
POLIMORFISMO ............................................................................................... 13
VENTAJAS - DESVENTAJAS ...................................................................................... 14
- ASPECTOS TECNOLGICOS ................................................................................ 14
POSIBLES DESVENTAJAS DE UNA BDOO ..................................................................... 15
ASPECTOS DE LA TECNOLOGA ............................................................................. 15
RENDIMIENTO ................................................................................................ 15
BIBLIOGRAFA........................................................................................................ 16

Las bases de datos orientadas a objetos fue un tema que se pens revolucionara la
manera de hacer persistente la informacin en los sistemas software durante los aos
90.

Bases de Datos Orientadas a Objetos | Teora de base de datos 2

Introduccin

En la actualidad es evidente que esto no fue as. Sin embargo, un resurgimiento de


este concepto, gracias a las comunidades de software libre, y la identificacin de
aplicaciones idneas para el mismo, motivan la revisin de las caractersticas de esta

Bases de Datos Orientadas a Objetos | Teora de base de datos 2

alternativa a las omnipresentes bases de datos relacionales.

Resumen

Definicin
OODBMS: object-oriented database management system.
Es un manejador de base de datos que soporta el modelaje y la creacin de datos
como objetos. En la actualidad, las arquitecturas tradicionales de un sistema de
informacin delegan la responsabilidad de la persistencia de los datos a un motor de
base de datos relacional, mientras que en la parte lgica, y en general en la ejecucin
del sistema, se mantienen familias de objetos para encapsular las entradas y

mantener el estado de las operaciones en dichos sistemas. Esto obliga a siempre


buscar alternativas para extraer la informacin contenida en una familia de objetos y
adaptarla de tal forma que se pueda almacenar el estado de stos en tablas de un
modelo relacional. Las bases de datos O.O. hacen transparente este proceso,
permitiendo hacer la persistencia, consulta y reconstruccin de objetos de forma
inmediata.

Caractersticas
Al crear un sistema de BD Orientado a Objetos se deben tener en cuenta caractersticas
estn divididas en tres grupos:
Mandatorias: Son aquellas obligatorias
Opcionales: No son obligatorias y se ponen para hacer que el sistema sea mejor
Abiertas: Son aquellas en las que el diseador puede poner de su parte y que estn
relacionadas con la programacin.

Encapsulacin: Propiedad que permite ocultar la informacin al resto de los objetos,


impidiendo as accesos incorrectos o conflictos.
Herencia: Propiedad a travs de la cual los objetos heredan comportamiento dentro
de una jerarqua de clases.
Polimorfismo: Propiedad de una operacin mediante la cual puede ser aplicada a
distintos tipos de objetos.
En qu sistemas se aplican estas bases de datos
Se aplican el los siguientes sistemas:
Visual Studio.Net
C++, C#
Microsoft SQL Server
Oracle

Bases de Datos Orientadas a Objetos | Teora de base de datos 2

Propiedades

Bases de Datos Orientadas a Objetos | Teora de base de datos 2

Java, etc.

Historia
Las bases de datos orientadas a objetos, fue un tema que se pens, que revolucionara
la manera de hacer persistente la informacin en los sistemas software durante los
aos 90. En la actualidad es evidente que esto no fue as. Sin embargo, un
resurgimiento de este concepto, gracias a las comunidades de software libre, y la
identificacin de aplicaciones idneas para el mismo, motivan la revisin de las
caractersticas de esta alternativa a las omnipresentes bases de datos relacionales.
Las bases de datos orientadas a objetos se crearon para tratar de satisfacer las
necesidades de estas nuevas aplicaciones.
La orientacin a objetos ofrece flexibilidad para manejar algunos o de estos requisitos
y no estn limitadas por los tipos de datos y los lenguajes de consulta de los sistemas
de bases de datos tradicionales. Una caracterstica clave de las bases de datos

orientadas a objetos es la potencia que proporcionan al diseador al permitirle


especificar tanto la estructura de objetos complejos, como las operaciones que se
pueden aplicar sobre dichos objetos. Otro motivo para la creacin de las bases de
datos orientadas a objetos es el creciente uso de los lenguajes orientados a objetos
para desarrollar aplicaciones.
Las bases de datos se han convertido en piezas fundamentales de muchos sistemas
de informacin y las bases de datos tradicionales son difciles de utilizar cuando las
aplicaciones que acceden a ellas estn escritas en un lenguaje de programacin
orientado a objetos como C++, Smalltalk o Java. Las bases de datos orientadas a
objetos se han diseado para que se puedan integrar directamente con aplicaciones
desarrolladas con lenguajes orientados a objetos, habiendo adoptado muchos de los

Generalidades
En bases de datos orientadas a objetos los usuarios pueden definir operaciones sobre
los datos como parte de la definicin de la base de datos. La base de datos est
constituida por objetos, que pueden ser de muy diversos tipos, y sobre los cuales se
encuentran definidas unas operaciones. Las bases de datos orientadas a objetos
pueden manejar informacin binaria (como objetos multimedia) de una forma
eficiente.
En una base de datos orientada a objetos, la informacin se representa mediante
objetos como los presentes en la programacin orientada a objetos. Cuando se integra
las caractersticas de una base de datos con las de un lenguaje de programacin
orientado a objetos, el resultado es un sistema gestor de base de datos orientada a

Bases de Datos Orientadas a Objetos | Teora de base de datos 2

conceptos de estos lenguajes.

objetos (ODBMS, object database management system). Un ODBMS hace que los
objetos de la base de datos aparezcan como objetos de un lenguaje de programacin
en uno o ms lenguajes de programacin a los que d soporte. Un ODBMS extiende
los lenguajes con datos persistentes de forma transparente, control de concurrencia,
recuperacin de datos, consultas asociativas y otras capacidades.
Las bases de datos orientadas a objetos se disean para trabajar bien en conjuncin
con lenguajes de programacin orientados a objetos como Java, C#, Visual Basic.NET
y C++. Los ODBMS usan exactamente el mismo modelo que estos lenguajes de
programacin.
Los ODBMS son una buena eleccin para aquellos sistemas que necesitan un buen
rendimiento en la manipulacin de tipos de dato complejos.
Los ODBMS proporcionan los costes de desarrollo ms bajos y el mejor rendimiento
cuando se usan objetos gracias a que almacenan objetos en disco y tienen una
integracin transparente con el programa escrito en un lenguaje de programacin

Bases de Datos Orientadas a Objetos | Teora de base de datos 2

orientado a objetos, al almacenar exactamente el modelo de objeto usado a nivel

aplicativo, lo que reduce los costes de desarrollo y mantenimiento.

Un

objetivo de las bases de datos orientadas a objetos es mantener una

correspondencia directa entre los objetos del mundo real y de la base de datos, para
que los objetos no pierdan su integridad e identidad, puedan identificarse fcilmente
y pueda trabajarse con ellos. Por tanto, las bases de datos orientadas a objetos
proporcionan un identificador de objeto (OID, object identifier) generado por el sistema
para cada objeto.
Podemos comparar esto con el modelo relacional, en el cual cada relacin debe tener
un atributo de clave principal cuyo valor identifique de forma nica a cada tupla. En el
modelo relacional, si el valor de la clave principal cambia, la tupla tendr una identidad
nueva, aunque todava podra representar el mismo objeto del mundo real De forma
alternativa, un objeto del mundo real puede tener diferentes nombres para los

atributos clave en diferentes relaciones, lo que complica la verificacin de que las


claves representan el mismo objeto (por ejemplo, el identificador de objeto puede
representarse como IdEmp en una relacin y como Dni en otra).
Otra caracterstica de las bases de datos orientadas a objetos es que los objetos
pueden tener una estructura de objeto de complejidad arbitraria a fin de contener toda
la informacin necesaria que describe el objeto. En contraste, en los sistemas de bases
de datos tradicionales, la informacin sobre un objeto complejo a menudo se dispersa
por muchas relaciones o registros, lo que lleva a una prdida de correspondencia
directa entre un objeto del mundo real y su representacin en la base de datos. La
estructura interna de un objeto en los OOPLs incluye la especificacin de variables de
instancia, que almacenan los valores que definen el estado interno del objeto. Por
tanto, una variable de instancia se parece al concepto de atributo en el modelo
relacional, excepto que las variables de instancia pueden encapsularse dentro del
objeto y, por tanto, no son necesariamente visibles a los usuarios externos. Las
variables de instancia tambin pueden ser de tipos de datos arbitrariamente

Los sistemas orientados a objetos permiten la definicin de las operaciones o


funciones (comportamiento) que pueden aplicarse a los objetos de un tipo concreto.
De hecho, algunos modelos orientados a objetos insisten en que todas las operaciones
que un usuario puede aplicar a un objeto deben predefinirse. Esto obliga a un
encapsulamiento completo de los objetos. Esta rgida metodologa se ha relajado en
la mayora de los modelos de datos orientados a objetos por varias razones.
En primer lugar, el usuario de una base de datos a menudo necesita conocer
los nombres de atributo a fin de poder especificar las condiciones de seleccin
en los atributos para recuperar objetos especficos.

Bases de Datos Orientadas a Objetos | Teora de base de datos 2

complejos.

En segundo lugar, un encapsulamiento completo implica que cualquier


recuperacin sencilla requiere una operacin predefinida, lo que dificulta la
especificacin de consultas especficas sobre la marcha.
Para el encapsulamiento, una operacin se define en dos partes.
1. La primera parte, denominada firma (signatura) o interfaz de la operacin,
especifica el nombre de la operacin y los argumentos (o parmetros).
2. La segunda parte, denominada mtodo o cuerpo, especifica la implementacin
de la operacin. Las operaciones se pueden invocar pasando un mensaje a un
objeto, que incluye el nombre de la operacin y los parmetros.
El objeto ejecuta despus el mtodo para esa operacin. Este encapsulamiento
permite modificar la estructura interna de un objeto, as como la implementacin de
sus operaciones, sin la necesidad de trastocar los programas externos que invocan
esas operaciones.
Otros conceptos importantes en los sistemas orientados a objetos son la herencia y

Bases de Datos Orientadas a Objetos | Teora de base de datos 2

las jerarquas de tipos y clases. Esto permite especificar nuevos tipos o clases que

heredan gran parte de su estructura y/u operaciones de los tipos o clases


anteriormente definidos. Por tanto, la especificacin de tipos de objetos puede
proceder sistemticamente.
Esto facilita el desarrollo incremental de tipos de datos de un sistema, y la reutilizacin
de definiciones de tipo existentes a la hora de crear nuevos tipos de objetos.
Un problema de los primeros sistemas de bases de datos orientadas a objetos era la
representacin de las relaciones entre los objetos. La insistencia de un
encapsulamiento completo en los primeros modelos de datos orientados a objetos
llev al argumento de que las relaciones no deban representarse explcitamente, sino
que deban describirse definiendo los mtodos apropiados que localizaran los objetos
relacionados. No obstante, este mtodo no funciona muy bien en las bases de datos
complejas con muchas relaciones, porque es til identificar esas relaciones y hacerlas
visibles a los usuarios.

Algunos sistemas orientados a objetos ofrecen la posibilidad de tratar con varias


versiones del mismo objeto (una caracterstica esencial en el diseo y la ingeniera de
aplicaciones). Por ejemplo, una versin antigua de un objeto que representa un diseo
probado y verificado debe conservarse hasta que el objeto nuevo haya sido probado y
verificado. Una nueva versin de un objeto complejo puede incluir slo unas cuantas
versiones nuevas de sus objetos constituyentes, mientras que otros componentes
permanecen igual. Adems de permitir el versionado, las bases de datos orientadas a
objetos tambin deben permitir la evolucin del esquema, lo que ocurre cuando las
declaraciones de tipo cambian o cuando se crean tipos o relaciones nuevos.
Otro concepto orientadas a objetos es la sobrecarga del operador, que se refiere a la
posibilidad de que una operacin pueda aplicarse a diferentes tipos de objetos; en una
situacin semejante, un nombre de operacin

puede referirse a varias

implementaciones distintas, en funcin del tipo de objetos a los que se aplique. Esta
caracterstica tambin se conoce como polimorfismo del operador. Por ejemplo, una
operacin para calcular el rea de un objeto geomtrico puede diferir en su mtodo
rectngulo. Esto puede requerir el uso de una vinculacin posterior del nombre de la
operacin al mtodo apropiado en tiempo de ejecucin, cuando se conoce el tipo de
objeto al que se aplica la operacin.

Caractersticas de Base de Datos Orientada a Objetos

Mandatorias: son las que el Sistema debe satisfacer a orden de tener un sistema de
BDOO y estos son: Objetos complejos, Identidad de Objetos, Encapsulacin, Tipos o
clases, Sobre paso con unin retardada, Extensibilidad, Completacin Computacional,
Persistencia

Manejador

de

Recuperacin y Facilidad de Query

almacenamiento

secundario,

Concurrencia,

Bases de Datos Orientadas a Objetos | Teora de base de datos 2

(implementacin), dependiendo de si el objeto es de tipo tringulo, crculo o

10

Opcional: Son las que pueden ser aadidas para hacer el sistema mejor pero que no
son Mandatorias, estas son de: herencia mltiple, chequeo de tipos e inferencia d e
distribucin y diseo de transacciones y versiones.
Abiertas: Son los puntos donde el diseador puede hacer un nmero de opciones y
estas son el paradigma de la programacin, la representacin del sistema el tipo de
sistema y su uniformidad. Hemos tomado una posicin no muy a la expectativa para
tener una palabra final ms bien para proveer un punto de orientacin para un debate

Bases de Datos Orientadas a Objetos | Teora de base de datos 2

futuro.

11

Propiedades
Encapsulamiento
Propiedad que permite ocultar la informacin al resto de los objetos, impidiendo as
accesos

incorrectos

conflictos.

El encapsulamiento se centra en la implementacin que da lugar al comportamiento


observable de un objeto. El encapsulamiento se consigue a menudo mediante la
ocultacin de informacin, es decir, se basa en ocultar todos los secretos de un objeto

que no contribuyen a sus caractersticas esenciales. El encapsulamiento proporciona,


por tanto, barreras explcitas entre abstracciones diferentes. Existen dos visiones
diferentes del encapsulamiento:
1. La primera y original que es la del lenguaje de programacin.
2. La segunda que es la adaptacin de esa visin para la base de datos.
Desde el punto de vista de las bases de datos, esto se traduce en el hecho de que un
objeto abarca operaciones y datos, pero con una diferencia. En las bases de datos no
est claro si la parte estructural es parte de la interfaz (depende del sistema), mientras
que en los lenguajes de programacin la estructura de datos es claramente parte de
la implementacin y no de la interfaz. Como se puede observar, el encapsulamiento
proporciona una forma lgica de independencia de los datos, ya que se puede cambiar

Herencia
Propiedad a travs de la cual los objetos heredan comportamiento dentro de una
jerarqua de clases.
Ventajas de la herencia
o Ayuda al modelado porque proporciona una descripcin concisa y precisa del
mundo.

Bases de Datos Orientadas a Objetos | Teora de base de datos 2

la implementacin de un tipo sin cambiar ninguno de los programas que usan ese tipo.

12

o Ayuda a compartir especificaciones e implementaciones en las aplicaciones.


Tipos de herencia a destacar en los sistemas de gestin de bases de datos
Herencia de sustitucin: en cualquier lugar donde podamos tener un objeto de tipo
podemos sustituirlo por un objeto de tipo t si t hereda de t'.
Herencia de restriccin: es un sub caso de la herencia de inclusin. Un tipo t es un
subtipo de si est formado por todos los objetos de t que satisfacen una restriccin
dada.
Herencia de especializacin: un tipo t es un subtipo de t', si los objetos de tipo t son

Bases de Datos Orientadas a Objetos | Teora de base de datos 2

objetos de tipo t' que contienen informacin ms especfica.

13

Polimorfismo
Propiedad de una operacin mediante la cual puede ser aplicada a distintos tipos de
objetos.
En bases de datos orientadas a objetos, los usuarios pueden definir operaciones sobre
los datos como parte de la definicin de la base de datos. Una operacin (llamada
funcin) se especifica en dos partes. La interfaz (o signatura) de una operacin incluye
el nombre de la operacin y los tipos de datos de sus argumentos (o parmetros). La
implementacin (o mtodo) de la operacin se especifica separadamente y puede
modificarse sin afectar la interfaz. Los programas de aplicacin de los usuarios pueden
operar sobre los datos invocando a dichas operaciones a travs de sus nombres y
argumentos, sea cual sea la forma en la que se han implementado. Esto podra

denominarse

independencia

entre

programas

operaciones.

Existen casos en los que se desea tener el mismo nombre para diferentes operaciones.
Supongamos la operacin dibuja que toma un objeto como entrada y lo dibuja en
pantalla. Dependiendo del tipo de objeto (cuadrado, estrella, flecha,...) debemos
emplear diferentes mecanismos de visualizacin. Es decir, necesitamos visualizar un
conjunto

cuyos

miembros

no

se

conocen

en

tiempo

de

compilacin.

En una aplicacin que emplee el sistema convencional, habr tantas operaciones


como figuras a representar: dibuja cuadrado, dibuja estrella, dibuja flecha etc. En un
sistema orientado a objetos se definir la operacin en una clase ms general. As
dibuja tendr un nico nombre y podr emplearse indiferentemente sobre cualquier

Ventajas - Desventajas
- Aspectos tecnolgicos
La clave que posee la BDOO es el poder que confieren al diseador para especificar
tanto la estructura de objetos complejos como las operaciones que se pueden aplicar
a esos objetos.
Est su flexibilidad, y soporte para el manejo de tipos de datos complejos. Ya que
puedo tener clases y subclases creadas por ejemplo una base de clientes puede tener
una subclase de la referencia de este cliente y esta heredara todos sus atributos y
caracterstica de la clase original.
La segunda ventaja de una BDOO, es que manipula datos complejos en forma rpida
y gilmente. La estructura de la base de datos est dada por referencias (o
apuntadores lgicos) entre objetos.

Bases de Datos Orientadas a Objetos | Teora de base de datos 2

figura.

14

Posibles desventajas de una bdoo


Al considerar la adopcin de la tecnologa orientada a objetos, la inmadurez del
mercado de BDOO constituye una posible fuente de problemas. Hay muy pocos
manejadores de base de datos en el mercado que soporten este tipo de arquitectura
Algunos de los pocos oodbms que existen son:
Db4o
Informix
Bdoviedo3
Quiz esta sea una de las causas por las cuales las oodb an no tengan ese
crecimiento que en algn momento tantas expectativas generaron.

Bases de Datos Orientadas a Objetos | Teora de base de datos 2

El segundo problema es la falta de estndares en la industria orientadas a objetos

15

Aspectos de la tecnologa
Las Bases de Datos Orientadas a Objetos permiten que mltiples usuarios compartan
objetos complejos y los manipulen en un ambiente seguro y estructurado. Las bases
de datos convencionales fueron diseadas para manejar tipos de datos alfanumricos
y por esto difcilmente pueden manipular objetos y mtodos (los mtodos son los
comportamientos definidos de los objetos).

Rendimiento
Las BDOO permiten que los objetos hagan referencia directamente a otro mediante
apuntadores suaves. Esto hace que las BDOO pasen ms rpido del objeto A al objeto
B que las BDR, las cuales deben utilizar comandos JOIN para lograr esto. Incluso el
JOIN optimizado es ms lento que un recorrido de los objetos. As, incluso sin alguna

afinacin especial, una BDOO es en general ms rpida en esta mecnica de cazaapuntadores.


Las BDOO hacen que el agrupamiento sea ms eficiente. La mayora de los sistemas
de bases de datos permiten que el operador coloque cerca las estructuras
relacionadas entre s, en el espacio de almacenamiento en disco. Esto reduce en forma
radical el tiempo de recuperacin de los datos relacionados, puesto que todos los

Bibliografa

Fundamentos de Sistemas de Bases de Datos - 5ta Ed. - Elmasri & Navathe

Bases de Datos Orientadas a Objetos | Teora de base de datos 2

datos se leen con una lectura de disco en vez de varias.

16

http://es.wikipedia.org/wiki/Base_de_datos_orientada_a_objetos
http://www.ecured.cu/index.php/Bases_de_datos_orientadas_a_objetos
http://www.monografias.com/trabajos87/base-datos-orientada-objetos/base-datosorientada-objetos.shtml
http://santacruzramos.wikispaces.com/1.1.4+Encapsulamiento,+herencia+y+polimo

Bases de Datos Orientadas a Objetos | Teora de base de datos 2

rfismo+en+BDOO.

17

S-ar putea să vă placă și