Base de datos distribuidas y arquitectura cliente servidor
• Sistema de computación distribuido: elementos de procesamiento que cooperan en la ejecución de tareas,interconectados por una red de ordenadores.• BD distribuida (BDD): son varias BD interrelacionadas lógicamente y situadas en diferentes nodos de una red de ordenadores.
• SGBD distribuido: el que gestiona BD distribuidas de forma transparente para el usuario (éste ve las BD como si fueran una sola BD centralizada)
• Ventajas de las BDD:
– Localización transparente de los datos:
– Transparencia en los nombres:
– Transparencia de fragmentación
Fragmentancion:
Fragmentar se refiere a decidir donde situar las partes de BDD
existen fragmentación vertical, fragmentación vertical derivada fragmentación mixta.
Replicacion y Asignación:
La replicación mejora la disponibilidad de los datos, caso extremo: tener una réplica de la BD completa en
cada sitio (ordenador):
– Ventajas: mejora el rendimiento local y global además de la disponibilidad (con un sitio activo se
accede a toda la BD)
– Inconvenientes: actualizaciones más costosas (se deben realizar en todas las réplicas para mantener la
coherencia). El control de concurrencia y recuperación es también más costoso.
• Asignación: dónde se sitúan los fragmentos y réplicas
– La elección del lugar y el grado de replicación depende de los objetivos de rendimiento y disponibilidad. También del tipo de transacciones y su frecuencia.
– Encontrar una solución óptima o incluso una buena es un problema complejo
Clientes Servidor (arquitectura nivel 2 )
La forma habitual de dividir la funcionalidad del SGBD entre cliente y servidor ha sido la arquitectura de 2 niveles:
– Servidor (o servidor SQL): donde se sitúa el SGBD. Una BDD se situaría en varios servidores.
– Clientes:
• Envían consultas/actualizaciones a servidores
• Tienen interfaces SQL, de usuario y funciones de interfaz del lenguaje de programación
• Consultan en el diccionario de datos la información sobre la distribución de la BD entre los servidores.
Tienen módulos que descomponen consultas globales en varias locales a cada servidor
• Interacción cliente-servidor (arquitectura de 2 niveles):
– El cliente analiza la consulta del usuario. La descompone en varias subconsultas y envía cada una a un servidor.
– Cada servidor ejecuta su subconsulta y devuelve el resultado al cliente
– El cliente combina los resultados recibidos y muestra al usuario el resultado de su consulta
No hay comentarios.:
Publicar un comentario