Análisis de Bases de datos Orientada a Objeto y Bases de datos Distribuidas.
Una base de datos orientada a objetos es una base de datos donde los elementos son objetos. Estos pueden ser bases de datos multimedia (videos, imágenes y sonidos), donde la herencia nos permita una mejor representación de la información, estas bases de datos tienen una identidad de ser un Todo, y no solo una parte de una gran base, por ejemplo, una base de secuencias de ADN.
El objetivo de una base de datos orientada a objetos son los mismos que los de las bases de datos tradicionales, pero con la ventaja de representar las modelos de datos con un marco mucho más eficiente, manteniendo la integridad y relación entre ellos.
Recordemos que un objeto es una estructura que tiene asociado un estado y un comportamiento (propiedades y métodos). Estas bases tienen las características de todo lo que es orientado a objeto que son Herencia, Polimorfismo, Abstracción y Encapsulamiento.
Un objeto puede heredar comportamiento de otro tipo de objetos (herencia) y puede adaptarse para responder de diferentes maneras ante la solicitud de una acción (polimorfismo), lo importante es que permite representar cosas de la vida real con relativa facilidad (abstracción) y que todo esto se puede implementar de manera que no nos importe el código, sino sólo la manera de comunicarnos con estos objetos pensando en ellos como una sola unidad (encapsulamiento).
Las bases de datos orientados a objetos han adoptado muchos de los objetos creados para los lenguajes de programación orientados a objetos.
La utilización de una BDOO simplifica la conceptualización ya que la utilización de objetos permite representar de una manera más natural la información que se quiere guardar.
Para modelar la estructura o vista lógica de la BD, se utiliza el Diagrama de clases que permite presentar las clases con sus respectivas relaciones estructurales y de herencia, además del Diagrama de Objetos cuando no está muy claro y preciso cómo serían las instancias de las clases o para especificar más el Diagrama de Clases.
Para modelar la parte dinámica, la interacción y comportamiento entre los objetos, se emplearía el Diagrama de Secuencia para presentar las interacciones entre los objetos organizados en una secuencia temporal y describir como estos objetos colaboran; así como también, el Diagrama de Estado para mostrar los posibles estados en que puede encontrarse un objeto y las transacciones que pueden causar un cambio de estado, luego que ocurre un evento.
En general, cada objeto está asociado con:
Un conjunto de variables que contiene los datos del objeto; las variables corresponden con los atributos del modelo E-R.
Un conjunto de mensajes a los que responde; cada mensaje puede o no tener parámetros o tener uno o varios.
Un conjunto de métodos, cada uno de los cuales es el código que implementa un mensaje; el método devuelve un valor como respuesta al mensaje.
Además, tienen un Nombre, Tiempo de vida pueden ser transitorios o persistentes, estado y comportamiento.
1. Características de Base de Datos Orientada a Objetos
Mandatorias: son las que el Sistema debe satisfacer a orden de tener un sistema de BDOO y estos son: Objetos complejos, Identidad de Objetos, Encapsulación, Tipos o clases, Sobre paso con unión retardada, Extensibilidad, Completación Computacional, Persistencia y Manejador de almacenamiento secundario, Concurrencia, Recuperación y Facilidad de Query
Opcional: Son las que pueden ser añadidas para hacer el sistema mejor pero que no son Mandatorias, estas son de: herencia múltiple, chequeo de tipos e inferencia d e distribución y diseño de transacciones y versiones.
Abiertas: Son los puntos donde el diseñador puede hacer un número de opciones y estas son el paradigma de la programación, la representación del sistema ó el tipo de sistema y su uniformidad. Hemos tomado una posición no muy a la expectativa para tener una palabra final más bien para proveer un punto de orientación para un debate futuro.
Una Base de Datos Distribuida (BDD) es una colección de datos distribuidos en diferentes nodos de una red de computadoras. Cada sitio de la red es autónomo, puede ejecutar aplicaciones locales y al menos una aplicación global, lo cual requiere el acceso a datos, ubicados en varios sitios, usando un subsistema de comunicación.
Los Sistemas de Bases de Datos Distribuidas representan más naturalmente la estructura geográficamente descentralizada de una organización, aumentan la disponibilidad de los datos, reducen el tráfico de comunicación y es justificable, además, por el abaratamiento de los costos en el equipamiento y la infraestructura de comunicaciones de las redes de computadoras. El diseño de las Bases de Datos Distribuidas posee las fases del diseño centralizado y cuenta, además, con dos nuevos problemas que caracterizan el proceso de distribución de datos, e incluyen la determinación de: cómo dividir la base de datos en componentes para localizarlos en diferentes sitios, qué cantidad de datos debe ser replicados y cómo deben los fragmentos replicados ser localizados.
Existen varias definiciones sobre qué es un sistema distribuido pero hay divergencias entre ellas, para nuestros propósitos es suficiente expresar que un sistema distribuido es una colección de computadoras independientes interconectadas entre sí que aparecen ante los usuarios del sistema como una única computadora.
2. Ventajas y Desventajas de los sistemas distribuidos
Ventajas
El acceso a los datos es más rápido debido a que los datos se localizan más cercanos al lugar donde se utilizan.
El procesamiento es rápido debido a que varios nodos intervienen en el procesamiento de una carga de trabajo,
Nuevos nodos se pueden agregar fácil y rápidamente.
La probabilidad de que una falla en un solo nodo afecte al sistema es baja y existe una autonomía e independencia entre los nodos.
Control local de los datos con que se interactúa.
Mayor tolerancia a los fallos
Desventajas
Es más complicado el control y la manipulación de los datos
Es compleja el aseguramiento de la integridad de la información en presencia de fallas no predecibles tanto de componentes de hardware como de software. La integridad se refiere a la consistencia, validez y exactitud de la información.
El control de concurrencia y los mecanismos de recuperación son mucho más complejos que en un sistema centralizado dado que los datos pueden estar replicados.
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 comun sean necesarias para el negocio en cuestión.
Link Youtube del video
https://www.youtube.com/watch?v=Ep9DS_uVJe4&feature=youtu.be
No hay comentarios:
Publicar un comentario