Vous êtes sur la page 1sur 5

BASES DE DATOS RELACIONALES Y BASES DE DATOS ORIENTADAS A OBJETOS

1. Diferencias entre Bases de Datos Relacionales y Bases de Datos Orientadas a Objetos



Bases de Datos Relacionales Bases de Datos Orientadas a Objetos
Define las tuplas como instancias especficas de
una entidad con un identificador nico y las
propiedades de esa entidad. Las tuplas del modelo
relacional carecen de esa habilidad de trabajar con
otras tuplas ya que carecen de comportamiento
Se almacenan los objetos que se definen como un
objeto est modelando una situacin o entidad del
mundo real al tener una identificacin nica,
propiedades especficas a s misma, y la habilidad
de trabajar en conjunto con objetos tanto de la
misma o distinta especificacin
Slo trabaja con entidades, por lo tanto, si se
quisiera modelar situaciones habra que adaptarlas
Es capaz de representar situaciones del mundo
real
Utiliza el concepto de Clave Primaria para
identificar a sus entidades de una manera nica.
Esta clave es un valor que puede introducir y
cambiar el usuario del sistema gestor con la nica
restriccin de que no se repita con ninguna otra
clave primaria que contenga la tabla en ese
momento
Define el OID (Object Identity) que proveer el
sistema y le otorgar al objeto su identidad nica.
No puede ser cambiado ni introducido por el
usuario. Al desaparecer el objeto, el sistema
elimina ese OID pero no vuelve a asignrselo
nunca a ningn objeto nuevo.
Slo se permiten tipos de datos simples ofrecidos
por SQL y en ltima instancia por el sistema gestor
Proveen sus tipos de datos de un sistema de tipos
anlogo al lenguaje de programacin con el que se
utiliza. De esta forma permite definir nuevas clases
as como utilizar la herencia para extender las ya
creadas
Los modelos relacionales utilizan el lenguaje
estndar de consultas SQL, que es declarativo lo
que hace que las consultas no vayan a la forma de
encontrar el dato sino que sea el sistema gestor el
que realice esta tarea.
El modelo objeto difiere en este sentido bastante.
Utiliza varios sistemas diferentes dependiendo de
la implementacin que se est utilizando.
La forma de trabajar con los datos persistentes en
el modelo relacional es seleccionando los datos
que queremos que persistan en el tiempo y
grabndolos de manera explcita mediante
consultas de alta/modificacin de SQL, previa
transformacin de los datos
Los objetos trabajan de otra forma. Dependiendo
de la implementacin particular puede ser que
haya clases persistentes, cuyos objetos siempre se
almacenen en disco, marcar especiales para los
objetos que permitan discriminar cules se
almacenarn, y otras tcnicas.
En el modelo relacional haba que adaptar la
semntica a las capacidades del sistema de una
manera bastante estricta
Cuando trabajamos con objetos podemos aplicar la
semntica propia del problema de una manera
mucho ms natural, ya que este paradigma se
basa en modelar el mundo real.
En las bases de datos relaciones, las relaciones de
herencia se pueden simular mediante complejos
sistemas que obligaban al programador a aplicar
una serie de mecanismos que garantizaran la
integridad. Y el resto de relaciones, por norma
general crean una serie de tablas intermedias que
complica las sentencias SQL necesarias para
recuperar los datos
El acceso a los datos, en la gran mayora de los
sistemas gestores de bases de datos orientados a
objetos, se realiza de una forma navegacional, al
estilo de los modelos jerrquico y red lo cual obliga
al usuario a conocer la ruta de acceso a los objetos
Las bases de datos relacionales no permiten el
almacenamiento de archivos multimedia, hay que
Las bases de datos orientadas a objetos permiten
el almacenamiento de archivos multimedia ya que
simularlo guardando la direccin del archivo, con lo
que no se garantiza que el archivo exista, o
almacenando en un campo binario de longitud
indeterminada el archivo completo sin capturar la
propia base de datos de qu tipo de archivo se
trata.
un objeto puede ser cualquier cosa

2. Diferencias en el diseo
Diseo de las BD relacionales
El primer paso para crear una base de datos, es planificar el tipo de informacin que se quiere
almacenar en la misma, teniendo en cuenta dos aspectos: la informacin disponible y la informacin que
necesitamos.
La planificacin de la estructura de la base de datos, en particular de las tablas, es vital para la gestin
efectiva de la misma. El diseo de la estructura de una tabla consiste en una descripcin de cada uno de
los campos que componen el registro y los valores o datos que contendr cada uno de esos campos.
Los campos son los distintos tipos de datos que componen la tabla, por ejemplo: nombre, apellido,
domicilio. La definicin de un campo requiere: el nombre del campo, el tipo de campo, el ancho del
campo, etc.
Los registros constituyen la informacin que va contenida en los campos de la tabla, por ejemplo: el
nombre del paciente, el apellido del paciente y la direccin de este. Generalmente los diferentes tipos
de campos que se pueden almacenar son los siguientes: Texto (caracteres), Numrico (nmeros), Fecha
/ Hora, Lgico (informaciones lgicas si/no, verdadero/falso, etc.), imgenes.
En resumen, el principal aspecto a tener en cuenta durante el diseo de una tabla es determinar
claramente los campos necesarios, definirlos en forma adecuada con un nombre especificando su tipo y
su longitud.

Diseo de las BD Orientadas a Objetos
Las BDOO se desarrollan al describir en primer lugar los tipos de objetos importantes del dominio de
aquellos tipos de objetos. Estos tipos de objetos determinan las clases que conformarn la definicin de
la BDOO.
Por ejemplo: Una base de datos diseada para almacenar la geometra de ciertas partes mecnicas
incluira clases como CILINDRO, ESFERA Y CUBO. El comportamiento de CILINDRO podra incluir
informacin relativa a sus dimensiones, volumen rea superficial:

Clase de CILINDRO{
ALTURA FLOTANTE ();
RADIO FLOTANTE ();
VOLUMEN FLOTANTE ();
AREA DE SUPERFICIE FLOTANTE ();
};

Se puede llegar a definiciones similares para el cubo y la esfera. En la definicin anterior, ALTURA,RADIO
y REA representan los mensajes que se pueden enviar a un objeto CILINDRO .
La Implantacin se lleva a cabo en el mismo lenguaje, escribiendo funciones correspondientes a las
solicitudes OO:
CILINDRO::ALTURA () {RETORNA CILINDRO_ALTURA;}
CILINDRO::VOLUMEN () {RETORNA PI*RADIO ()*ALTURA ();}

En este caso, la Altura se almacena como un elemento de los datos, mientras que volumen se calcula
mediante la frmula apropiada. Observe que la implantacin interna de volumen utiliza solicitudes para
obtener altura y radio. Sin embargo, el aspecto ms importante es la sencillez y uniformidad que
experimentan los usuarios de CILINDRO. Slo necesitan conocer la forma de enviar una solicitud y las
solicitudes disponibles.

3. Diferencias en la implementacin
Los modelos relacionales utilizan el lenguaje estndar de consultas SQL, que es declarativo lo que hace
que las consultas no vayan a la forma de encontrar el dato sino que sea el sistema gestor el que realice
esta tarea. Adems, el hecho de ser estndar permite que las aplicaciones lo utilicen sin importar el
lenguaje de programacin en el que estn escritas. Por contra carga mucho el procesamiento y hace que
haya que tratar los datos para convertirlos a objetos en el lenguaje de programacin utilizado.
El modelo objeto difiere en este sentido bastante. Utiliza varios sistemas diferentes dependiendo de la
implementacin que se est utilizando. Hay sistemas, directamente imbuidos en el lenguaje de
programacin que hacen esta recuperacin de los datos transparente al programador, trabajando con
los objetos persistentes como si fueran objetos de memoria normales. Esta visin es muy eficiente e
intuitiva pero al no tener un lenguaje especfico para trabajar con las consultas no controla de forma
alguna este acceso siendo vulnerable a errores del programador.
Otra forma de implementar las consultas ha sido el estndar OQL (Object Query Language) definido por
el Object Data Management Group (ODMG) que busca ser un estndar declarativo para consultas a
bases de datos orientadas a objetos. Su uso sera anlogo al de SQL pero, debido a su complejidad an
no hay ninguna implementacin completa del estndar, slo se han llegado a realizar subconjuntos
como JDOQL y EJB QL.
La forma de trabajar con los datos persistentes en el modelo relacional es seleccionando los datos que
queremos que persistan en el tiempo y grabndolos de manera explicita mediante consultas de
alta/modificacin de SQL, previa transformacin de los datos. Los objetos trabajan de otra forma.
Dependiendo de la implementacin particular puede ser que haya clases persistentes, cuyos objetos
siempre se almacenen en disco, marcar especiales para los objetos que permitan discriminar cules se
almacenarn, y otras tcnicas.
Esta es una de las partes ms complejas de implementar de un sistema gestor de bases de datos
orientados a objetos ya que se busca que este paso a datos persistentes sea lo ms transparente posible
para el programador de aplicaciones orientadas a objetos.
Obviamente el modelo objeto es una forma de centrar el desarrollo y explotacin de un sistema en la
semntica del dato. En el modelo relacional haba que adaptar la semntica a las capacidades del
sistema de una manera bastante estricta. En cambio, cuando trabajamos con objetos podemos aplicar la
semntica propia del problema de una manera mucho ms natural, ya que este paradigma se basa en
modelar el mundo real.
El acceso a los datos, en la gran mayora de los sistemas gestores de bases de datos orientados a
objetos, se realiza de una forma navegacional, al estilo de los modelos jerrquico y red lo cual obliga al
usuario a conocer la ruta de acceso a los objetos. Las bases de datos orientadas a objetos permiten el
almacenamiento de archivos multimedia ya que un objeto puede ser cualquier cosa. Las bases de datos
relacionales no permiten esto y hay que simularlo guardando la direccin del archivo, con lo que no se
garantiza que el archivo exista, o almacenando en un campo binario de longitud indeterminada el
archivo completo sin capturar la propia base de datos de que tipo de archivo se trata. Los sistemas
gestores de bases de datos orientados a objetos proporcionan un importante control de versiones sobre
los objetos almacenados, caracterstica que junto a la capacidad de almacenar objetos multimedia antes
citada.


















Bibliografa
1. ROB, Peter. CORONEL, Carlos. Sistemas de Bases de Datos. Diseo, Implementacin y
Administracin. Thomson ed 5: Mexico. Enero de 2006, citada en Abril de 2010. Disponible
electrnicamente
en: http://books.google.es/books?id=B_UVi51RDY4C&lpg=PA562&ots=NezoMJpP7g&dq=uso%
20actual%20OODB&pg=PP1#v=onepage&q&f=false

2. http://twisensblog.blogspot.com/2011/10/bases-de-datos-relacionales-vs.html

3. http://es.wikipedia.org/wiki/Base_de_datos_relacional#Dise.C3.B1o_de_las_bases_de_datos_r
elacionales