jueves, 30 de diciembre de 2010

Bases de Datos Distribuidas

Bases de Datos Distribuidas.
Las bases de datos distribuidas (BDD) son un conjunto de bases de datos distribuidas en nodos pero relacionadas de alguna manera generalmente por algún tipo de red comunicaciones. Las DBB tienen como principal propósito el de realizar un procesamiento autónomo de datos para poder darle al usuario una respuesta más rápida de sus peticiones.
Las principales características de un SDBB de un sistema centralizado son:
·         Hay múltiples computadores llamados sitios o nodos, estos nodos contienen un fragmento de la base de datos.
·         Estos sitios deben de estar comunicados por medio de algún tipo de red de comunicaciones para transmitir datos y órdenes entre los sitios.
¿Es conveniente utilizar una base de datos distribuida?
Como todo en la vida, todo depende de las circunstancias en las que se encuentra trabajando tu sistema y de las necesidades que tienen los usuarios. A menos que sea muy obvio el diseño de la arquitectura de Base de Datos o de la aplicación pues un siempre se comienza con una base de datos centralizada y cuando se ve la necesidad de hacer distribución de la base de datos se procede a realizar una modificación a la arquitectura.
Como ya se dijo las necesidades principalmente deben salir de los usuarios y de la arquitectura del sistema.
¿Es riesgoso cambiar de arquitectura de base de datos?
No tiene porque ser traumante cambiar de arquitectura de una base de datos si en la transición intervienen tanto el administrador de Sistemas, Administrador de Bases de Datos, Arquitecto de software y los desarrolladores. Pero ojo si se está haciendo una cambio de arquitectura de una base de datos en producción pues es resultado de un mal análisis inicial tanto en la arquitectura del sistema como en los requerimientos de los usuarios.
Si bien antes mencione que generalmente una base de datos nace como base de datos centralizada, la necesidad de ver si esta continuara de esta manera o sea distribuida se lo debe realizar en la etapa de implementación o pruebas. Si bien es muy difícil poder  generar un ambiente de pruebas similar al ambiente de producción, las personas encargadas de estar tareas deben tener la capacidad de anticiparse a futuros acontecimientos y advertir estos cambios cuando aun no generan mayores inconvenientes.
¿Cuál es el mejor ambiente para la aplicación de una base de datos distribuida?
Sin lugar a dudas el mejor ambiente para realizar una base de datos de este tipo es cuando la mayor parte de tiempo en la base de datos solo se hace lectura de datos, o se escribe datos.
¿Bases de datos distribuidas solo en bases de datos de lectura?
No necesariamente, pero si tenemos una base de datos donde solo se lee datos y es una base de datos de varios miles o millones de datos las consultas pueden ser muy pesadas, si se realizan muchas de estas consultas pesadas al mismo tiempo y cada una de ellas muestra diferentes tipo de datos pues, el motor de base de datos tardara mucho en responder todas las peticiones.
Pero un base de datos que tenga una tendencia de operaciones alta no significa que es optima para hacerla distribuida. En el caso de una base de datos altamente transaccional no sería muy conveniente hacerla distribuida debido a que generaría un alto índice de bloqueo.
Ventajas

 
Almacenar los datos donde son generados.
Los datos se comparten de manera simultánea entre todos los nodos.
Administración autónoma de cada uno de los nodos.
Mantener varios pequeños equipos cuesta menos que un gran servidor.
Mejora del rendimiento, BD más pequeñas, operaciones de menor volumen.
Crecimiento incremental, añadiendo poder de procesamiento y almacenamiento.

 Desventajas
Coste de desarrollo del software.
Dependencia de la red de comunicaciones, sobrecarga de procesamiento de mensajes.
Dificultad de diseño, fases adicionales.
Funciones de administración compleja, sincronización y coordinación.
Dificultad de cambio, inexistencia de metodologías.
Personal especializado.

No hay comentarios:

Publicar un comentario