Análisis BDOO y BDD
Diseño de una Base de Datos Distribuida (BDD)
Conceptos
Extraído del paradigma de la programación orientada a objetos (POO), una base de datos orientada a objetos (BDOO) es un sistema de gestión de bases de datos que consiste en representar la información como objetos.
Transformar la información en objetos consiste básicamente en, primero la instancia estaría dada por lo que en el modelo relacional se entendería como tabla, que agruparía atributos, que bajo el modelo relacional se entendería como los campos, y que contendrían métodos, que facilitaría la comunicación entre objetos.
En la medida que ha ido aumentando el uso de la tecnología web, el mercado se ha mostrado más interesado en el concepto de base de datos orientada a objetos, dado que es útil para mostrar los datos complejos.
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.
Ventajas
Alto rendimiento en almacenamiento y consulta de datos
Facilita la comunicación con lenguajes de programación, lo cual permite hacer integraciones mejores con soluciones informáticas que impliquen la gestión de bases de datos, creando soluciones más complejas.
Desventajas
La misma complejidad mencionada anteriormente, se puede convertir en una desventaja en la medida en que no se sepa administrar el sistema.
No es una metodología de trabajo ampliamente utilizada, lo cual dificulta, por ejemplo, su administración en el tiempo.
Conceptos
A consideración, el concepto subyacente de las bases de datos distribuidas (BDD), es el concepto de redes, ya que una BDD es un sistema de gestión de base de datos que consiste en distribuir la información a través de nodos que pertenecen a un sistema de computadoras o servidores.
Dicho de otra manera, un sistema distribuido es una colección de computadoras independientes interconectadas entre sí que aparecen ante los usuarios del sistema como una única computadora.
Ventajas
El acceso a los datos es más rápido debido a que los datos se localizan más cercanos.
Bajo ciertas circunstancias, favorece la seguridad, al no otorgar el mismo acceso a toda la información, desde los diferentes puntos.
Nuevos nodos se pueden agregar fácilmente.
La falla en uno de los nodos no debe afectar necesariamente el sistema.
Desventajas
Manipulación de datos complejo
Debido a que la información tiene múltiples puntos de acceso, es posible que la integridad de la misma se vea afectada
Control de concurrencia y mecanismos de recuperación complejos.
¿En qué casos recomendaría el uso de una BDOO y en qué casos el uso de una BDD?
A consideración, las BDOO son principalmente útiles para casi cualquier tipo de solución o desarrollo tanto web, como de escritorio. Lo cierto es que si bien existen múltiples factores que a título personal, harían preferible trabajar las bases de datos relacionales, la complejidad de la misma implica cierta experticia en los equipos de trabajo, que de carecerse, podría causar problemas a la hora de hacer las integraciones de las aplicaciones con los datos.
Es por esto que han surgido tecnologías como los ORM (object relational mapping), que sirven como una especie de “traductor” entre el sistema relacional y el BDOO, por ejemplo, podría mencionarse Elocuent para el framework de PHP, Laravel.
En el momento en el cual nos encontramos ante una necesidad empresarial que esté relacionada con datos complejos de alto rendimiento tenemos que considerar la opción de sacar partido a las bases de datos orientadas a objetos. Estas son una posibilidad más que recomendable en el caso de que contemos con un total de tres elementos determinados: alto rendimiento, necesidad de negocio y datos complejos. Recomendaría una base de datos distribuida cuando la misma base de datos con necesidades diferentes pero características en común sean necesarias para el negocio en cuestión.
En cuanto a las bases de datos distribuidas, es de considerar que sus costos de aplicación y mantenimiento son mucho mayores, por lo cual, dentro de las características que subyacen con esta metodología, es cuando la organización o entidad que requiere la solución, tiene una red geográfica amplia, con equipos y regiones que necesitan datos locales.
En general, para empresas muy grandes, que quizá no reciban la respuesta adecuada de bases centralizadas.
Comentarios
Publicar un comentario