BDOO y BDD
BDOO y BDD
Bases de Datos Orientada a Objetos
Las bases de datos orientadas a objetos son
bases de datos que presentan su información de una manera diferente a la
tradicional de tablas, en este tipo de bases de datos la información es
presentada como un objeto, de esta manera se hace más fácil la manipulación de
esta información en la programación orientada a objetos.
En comparación a las bases de datos
tradicionales, las bases de datos orientadas a objetos, tienen un esquema de
datos mucho más flexible, el acceso a los datos es más rápido debido a que los
objetos pueden ser recuperados de forma directa sin búsqueda específica, estas
no están limitadas por los tipos de datos y los lenguajes de consulta de los
sistemas de bases de datos tradicionales.
Por otro lado, una característica principal de
este tipo de bases de datos es la potencia que proporcionan al diseñador al
permitirle especificar tanto la estructura de objetos complejos, como las
operaciones que se pueden aplicar sobre dichos objetos.
Estas bases de datos orientadas a objetos han
sido diseñadas para trabajar bien con lenguajes de programación orientados a
objetos tales como Python, Java, C#, Ruby, Delphi, etc.
Ventajas de las BDOO:
- Poseen un sistema declarativo que permite encontrar y recuperar objetos de la base de datos.
- Es posible usar uno o varios objetos a través del lenguaje de programación para obtener análisis o manipulación de la información de una BDOO.
- Las transacciones de datos son más seguras y solo se cumplen o terminan cuando no existen conflictos entre estos datos.
- Estas bases de datos tienen un mecanismo de almacenamiento en cache que crea replicas parciales de la base de datos, esto permite minimiza el acceso al disco o el tráfico de red, lo que permite que las aplicaciones accedan a objetos desde la memoria del programa, esto puede significar un aumento en velocidad de acceso de datos.
Desventajas de las
BDOO:
Las bases de datos orientadas a objetos aun no
son lo suficientemente populares para que sean constantemente desarrolladas,
esto lleva a un mayor riesgo de sostenibilidad de la base de datos en el largo
plazo.
Por otro lado, aun no hay unos criterios claros
de estandarización ya que este tipo de bases de datos apenas están emergiendo
en el mercado, por esta razón existe poca documentación sobre los proyectos que
las implementan y esto puede extender el tiempo de desarrollo de un proyecto
que emplee este modelo de bases de datos.
Bases de Datos Distribuidas
Una base de datos distribuida consiste en
varias bases de datos distribuidas en diferentes lugares físicos o lógicos que
están conectados entre sí por un sistema de comunicaciones, estos sistemas
pueden ser una red entre ciudades donde cada ciudad almacena una parte de la
base de datos o un conjunto de computadores diferentes y en cada uno de estos
hay una parte de la base de datos, normalmente este tipo de sistemas son
invisibles para el usuario final ya que estás redes están hechas para que
funcionen de manera conjunta y coordinada, estos diferentes lugares donde están
estas bases de datos son llamados nodos o sitios; Este tipo de arquitectura
permite que cada nodo de la base de datos funcione de una manera independiente,
o sea, no depende si otros nodos en otros lugares estén funcionando.
La seguridad de este tipo de bases de datos
debe de ser un poco más estricta que la seguridad de otras bases de datos más
sencillas y convencionales, debido a que, si estas están distribuidas en
diferentes localizaciones y se requiere intercambiar datos e información entre
sí, se debe de implementar un sistema que garantice la seguridad, integridad y
transporte de estos datos, algunas de estas medidas pueden ser sistemas de
autentificación y autorización para que solo usuarios autorizados puedan
acceder a estas bases de datos y manejar su información. El cifrado de datos transportados
también es una buena manera de incrementar la seguridad de este tipo de bases
de datos, al usar aplicaciones que cifren la información cuando salga y cuando
entren de los diferentes nodos que conforma la base de datos.
Ventajas de BDD:
- Este tipo de datos son modulares, o sea, se puede agregar, modificar o quitar nodos sin afectar el funcionamiento de los demás.
- Es más económico tener una estructura conformada por computadores más sencillos que almacenen cada nodo de la base de datos en vez de un supercomputador que almacene todo a la vez.
- La disponibilidad de este sistema no depende de otros nodos, o sea, si un nodo falla, este no afectará a toda la base de datos.
- Cada nodo se hace responsable de la información y datos que almacenan, o sea, pueden controlar la información sin afectar otros nodos.
- La organización de este sistema es el más adecuado para entidades que tienen diferentes sedes distribuidas en diferentes lugares o ciudades.
Desventajas de BDD:
- La seguridad de este sistema debe de ser mucho mejor que la seguridad de sistemas más convencionales y centralizados, ya que la información que se transporta entre nodos debe de estar asegurada en todo momento.
- Debido a su complejidad y su infraestructura, es necesario una mayor mano de obra con experiencia en este tipo de bases de datos, esto puede llevar a un incremento de costos.
- Este tipo de bases de datos es relativamente nuevo y poco común por lo cual encontrar personal con experiencia o conocimiento en este tipo de bases de datos puede ser complicado.
- Debido a lo anterior, las herramientas y metodologías que permiten convertir un sistema centralizado en un sistema distribuido son escasas.
¿Cuándo usar una BDOO y una BDD?
Para tomar la decisión sobre qué tipo de
sistema de bases de datos se debe de usar primero es necesario pensar, analizar
y evaluar qué tipo de información se va a manejar, que uso se le va a dar y que
necesidad se desea cumplir.
Cuando usar una BDOO:
Se puede usar este tipo de bases de datos cuando
se desea un sistema que sea de alto rendimiento, pueda manejar datos complejos
y pueda satisfacer una necesidad de negocio, también cuando se desea sacarle
provecho a los diferentes lenguajes que están diseñados para la programación
orientada a objetos ya que este sistema de bases de datos toma algunos
principios o características de este tipo de programación, como son la
encapsulación, herencia y polimorfismo.
Cuando usar una BDD:
Este sistema de bases de datos se puede usar cuando se desea tener un sistema descentralizado y que no dependa de una computadora central para funcionar, también cuando se desea tener un sistema aparte o autónomo para cada una de las sedes o lugares de la red organizacional pero que al mismo tiempo permita el intercambio de información entre estos nodos o también cuando se desea creer un sistema distribuido un poco más económico ya que crear un sistema centralizado en un supercomputador puede llegar a ser mucho más costoso.
Comentarios
Publicar un comentario