Saltar la navegación

2.- Características de las bases de datos orientadas a objetos.

Caso práctico

Foto de Ana  mirando al frente.

Ana se ha llevado a la empresa sus apuntes sobre bases de datos y acceso a datos del ciclo formativo, y ha empezado a repasar con Juan las características de las Bases de Objetos.

—¡Pero claro!, —le dice Juan a Ana— habrá que detenerse en valorar tanto las posibles ventajas como los inconvenientes de estas bases de datos, ya que tenemos que elegir el sistema de almacenamiento óptimo para esta aplicación. Ya sabes que no podemos fallar. ¡Somos los mejores! —y le sonríe.

Foto con imágenes de diseño asistido por ordenador.

En una BDOO, los datos se almacenan como objetos. Un objeto es, al igual que en POO, una entidad que se puede identificar unívocamente y que describe tanto el estado como el comportamiento de una entidad del 'mundo real'. El estado de un objeto se describe mediante atributos y su comportamiento es definido mediante procedimientos o métodos.

Entonces, ¿a qué equivalen las entidades, ocurrencias de entidades y relaciones del modelo relacional? Las entidades son las clases, las ocurrencias de entidad son objetos creados desde las clases, las relaciones se mantienen por medio de inclusión lógica, y no existen claves primarias, los objetos tienen un identificador.

La principal característica de las BDOO es que soportan un modelo de objetos puro y que el lenguaje de programación y el esquema de la base de datos utilizan las mismas definiciones de tipos.

Otras características importantes de las BDOO son las siguientes:

  • Soportan las características propias de la Orientación a Objetos como agregación, encapsulamiento, polimorfismo y herencia. La herencia se mantiene en la propia base de datos.
  • Identificador de objeto (OID). Cada objeto tiene un identificador, generado por el sistema, que es único para cada objeto, lo que supone que cada vez que se necesite modificar un objeto, habrá que recuperarlo de la base de datos, hacer los cambios y almacenarlo nuevamente. Los OID son independientes del contenido del objeto, esto es, si cambia su información, el objeto sigue teniendo el mismo OID. Dos objetos serán equivalentes si tienen la misma información pero diferentes OID.
  • Jerarquía y extensión de tipos. Se pueden definir nuevos tipos basándose en otros tipos predefinidos, cargándolos en una jerarquía de tipos (o jerarquía de clases).
  • Objetos complejos. Los objetos pueden tener una estructura de objeto de complejidad arbitraria, a fin de contener toda la información necesaria que describe el objeto.
  • Acceso navegacional de datos. Cuando los datos se almacenan en una estructura de red densa y probablemente con una estructura de diferentes niveles de profundidad, el acceso a datos se hace principalmente navegando la estructura de objetos y se expresa de forma natural utilizando las construcciones nativas del lenguaje, sin necesidad de uniones o joins típicas en las BDR.
  • Gestión de versiones. El mismo objeto puede estar representado por múltiples versiones. Muchas aplicaciones de bases de datos que usan orientación a objetos requieren la existencia de varias versiones del mismo objeto, ya que si estando la aplicación en funcionamiento es necesario modificar alguno de sus módulos, el diseñador deberá crear una nueva versión de cada uno de ellos para efectuar cambios.

El estado de un objeto es el conjunto de valores que toman sus propiedades (atributos y relaciones).

El comportamiento de un objeto se refiere al conjunto de operaciones que se pueden realizar sobre un objeto.

Autoevaluación

Pregunta

Señala las opciones correctas. Las bases de datos orientadas a objetos:

Respuestas

Soportan conceptos de orientación a objetos como la herencia.

Permiten la manipulación navegacional.

Tienen el mismo tipo de problemas que las relacionales para gestionar objetos complejos.

Cada objeto posee un identificador de objeto.

Retroalimentación

Para saber más

Existen diferentes manifiestos sobre las características que debe cumplir un sistema de bases de datos orientado a objetos. En el siguiente enlace puedes consultar estos manifiestos. (Están a partir de la página 4).