Saltar la navegación

Bases de Datos Orientadas a Objetos

Según Francisco Alonso, el modelo orientado a objetos da lugar a las bases de datos orientados a objetos. Es un concepto totalmente distinto al de las bases de datos relacionales que responde al paradigma de la orientación a objetos desarrollado en programación de ordenadores en los últimos años.MOO

Al no estar limitado por el formato de tablas, cuyas columnas responden a tipos atómicos, permite una mayor flexibilidad a la hora de incorporar tipos más complejos como los tipos geométricos (puntos, líneas, polígonos, etc.) por tanto es un modelo, a priori, más adecuado para el trabajo con un SIG.

Se parte del concepto de clase que agrupa a todos los objetos que comparten una serie de atributos, estos atributos pueden incluir la geometría del objeto, las relaciones topológicas y propiedades temáticas. Junto con los atributos, las clases incluyen un conjunto de métodos (acciones que pueden llevarse a cabo sobre los objetos).

No se permite el acceso directo a los atributos sino sólo mediante sus métodos, esta propiedad se denomina encapsulamiento e incrementa la seguridad de los datos ante errores. Otra característica interesante es la herencia por la cual unos objetos pueden derivar de otros heredando sus atributos y métodos e incorporando otros.

Por ejemplo podría definirse la clase polígono incluyendo como atributos el área y el perímetro y como métodos el cálculo del área y el cálculo del perímetro. Posteriormente podría crearse la clase municipio que hereda los atributos y métodos de su clase padre (polígono) incorporando una serie de nuevos atributos (población, renta per cápita, etc.) y métodos como por ejemplo el cálculo de la densidad de población que se ejecuta dividiendo el atributo población entre el atributo área. Por otro lado podemos crear la clase cuenca fluvial que hereda atributos y métodos de la clase polígono y define atributos propios como puede ser río al que desemboca y métodos como cálculo de caudal pico.

Por su complejidad, las bases de datos orientadas a objetos no utilizan SQL e incluyen un lenguaje específico para hacer las consultas.

Las bases de datos orientadas a objetos no han tenido, sin embargo, un gran desarrollo, al menos hasta el momento. Entre las causas de este hecho cabe destacar el éxito de SQL y su tremenda eficiencia y el carácter altamente intuitivo de las tablas del modelo relacional. Por ello, se ha desarrollado un modelo híbrido que trata de capturar lo esencial de la orientación a objetos sin perder la eficiencia del modelo relacional. Se trata de las bases de datos objeto-relacionales.

Según UNAM, la orientación a objetos representa el mundo real y resuelve problemas a través de objetos, ya sean tangibles o digitales. Este paradigma tecnológico considera un sistema como una entidad dinámica formada de componentes. Un sistema sólo se define por sus componentes y la manera en que éstos interactúan.

Esquema con las principales características del modelo orientado a objetos
MOO
UNAM - Unidad de Apoyo para el Aprendizaje

Para mayor información recomiendo revisar los siguientes enlaces: 

https://programas.cuaed.unam.mx/repositorio/moodle/pluginfile.php/782/mod_resource/content/8/contenido/index.html

http://exa.unne.edu.ar/depar/areas/informatica/dad/BDII/Presentaciones_Proyector/Bases_de_Datos_Orientadas_a_Objetos.pdf

https://www.ionos.es/digitalguide/hosting/cuestiones-tecnicas/base-de-datos-orientada-a-objetos/

Tendencias actuales en la tecnología de bases de datos

Con miras a superar los retos antes mencionados, las bases de datos están tomando varias tendencias. En general, se están auxiliando de los lenguajes de programación orientados a objetos, los lenguajes lógicos y la inteligencia artificial. En este sentido, podemos determinar cuatro tendencias actuales:

  1. Sistemas relacionales extendidos: Incluyen manejo de objetos y triggers.
  2. Sistemas de bases de datos orientadas a objetos: Integran el paradigma de la orientación a objetos a la tecnología de bases de datos.
  3. Sistemas de bases de datos deductivas: Unen las bases de datos con la programación lógica; cuentan con mecanismos de inferencia, basados en reglas, para generar información adicional a partir de los datos almacenados en la base.
  4. Sistemas de bases de datos inteligentes: Incorporan técnicas desarrolladas en el campo de la inteligencia artificial.

Fuente: UNAM