Sistemas Distribuídos

Slides:



Advertisements
Presentaciones similares
Definición En un sistema de base de datos distribuida, los datos se almacenan en varios computadores. Los computadores de un sistema distribuido se comunican.
Advertisements

Control Interno Informático. Concepto
Tema2. Instalación y administración de DHCP. DHCP Failover Protocol.
Jorge de Nova Segundo UD4: Instalación y administración de servicios Web Almacenamiento virtual de sitios web: «Hosts» virtuales.
I.T.E.S.R.C. Romina Tamez Andrea Martínez Ma. De Lourdes Solís
Base de Datos Distribuidas FUNDAMENTOS DE BASES DE DATOS DISTRIBUIDAS
Aplicación informática. formando parte de una red. pone sus recursos a disposición de las demás computadoras(clientes) de la red. Maneja información.
SISTEMAS DE ARCHIVOS DISTRIBUIDOS Sistemas Distribuidos Abr-Jun 2007 Yudith Cardinale.
Sistemas Operativos Distribuidos Plataforma Cliente/Servidor
SERVIDOR DNS Y WINS INTEGRANTES: Farroñan Beltran Brenher
Término que se le da al conjunto de equipos de cómputo que se encuentran conectados entre si por medio de dispositivos físicos que envían y reciben -
1 ESTRATEGIA DE IMPLEMENTACION DE MEDIDAS DE GOBIERNO DE LAS TECNOLOGIAS DE LA INFORMACION La Antigua, Guatemala 23 de Septiembre de 2008.
Modelo de Tecnología para Crédito Educativo en Chile Sistema Crédito Estudios Superiores INGRESA - Chile.
Sistemas Distribuidos y Paralelos
Sistemas Distribuidos Replicación
Sistemas Operativos Distribuidos
Base de Datos Distribuidas
MOTORES DE BASE DE DATOS
Servidores de nombres de dominio (DNS)
Tema 3 SRI Vicente Sánchez Patón I.E.S Gregorio Prieto
Introducción a los Conceptos de Bases de Datos Docente: Ing. Marleny Soria Medina.
Sistemas Operativos Distribuidos Plataforma Cliente/Servidor
Sistemas Distribuidos
Sistemas Operativos Distribuidos Ing. José L. Simón Mayo 2000.
REPLICACIÓN EN SQL SERVER
Unidad III Administración de procesos
POP3 UCLV Mapas Conceptuales para la enseñanza de Redes de Computadoras.
Introducción al modelo Cliente-Servidor Carlos Rojas Kramer Universidad Cristóbal Colón.
Servicio de Archivos Almacenamiento persistente en los Sistemas Distribuidos.
Sistemas DistribuidosIng. José L. Simón Comunicación entre procesos zLos procesos (programas que se ejecutan) manejan items de datos  estructuras zLas.
5. Sistemas de archivos avanzados1 Tema 5: Sistemas de Archivos Avanzados Resumen: –Sistema de archivos distribuido –File Replication Service.
Ing. Cristhian Quezada Asenjo
William Stallings Organización y Arquitectura de Computadores
TEMA 10. SISTEMAS OPERATIVOS DISTRIBUIDOS
FIABILIDAD, CONFIDENCIALIDAD, INTEGRIDAD Y DISPONIBILIDAD
Unidad 1. PROGRAMACION ALGORITMICA
Universidad Central de Venezuela Facultad de Ciencias Postgrado en Ciencias de la Computación Sistemas Distribuidos Albany Márquez.
1 Capítulo 21: Interacción Cliente Servidor ICD 327: Redes de Computadores Agustín J. González.
Proyecto Fin de Carrera - ITIS
Sistemas Distribuidos
Cuentas de usuarios y grupos en windows 2008 server
TEMA 10: DIAGRAMA DE: OBJETOS, SECUENCIA Y DESPLIEGUE EN UML
Redes de Transmisión de Datos
“condición que necesita el usuario para resolver un problema o conseguir un objetivo determinado”. Los requisitos de un sistema son los aspectos que el.
Implementaciones del ordenamiento de mensajes zHay dos aproximaciones al problema: yHold-Back: un requerimiento r i que arriba a un AR no es procesado.
Permite a los procesos Acceso transparente Archivos Servidores remotos.
Teoría de Sistemas Operativos Sistemas distribuidos.
Protocolos del modelo TCP/IP
Gabriel Montañés León.  El sistema de nombres de dominio (DNS, Domain Name System) se diseñó originalmente como un protocolo. Antes de considerar qué.
Grupo Milanesa Integrantes: Agüero, Lucas Romero, Fernando Schild, Marcelo.
Luis Villalta Márquez. Servidores de nombres de dominio (DNS)
Protocolos de comunicación TCP/IP
S ERVICIOS DE RED E I NTERNET T EMA 3: DNS Nombre: Adrián de la Torre López.
Cliente-Servidor La arquitectura cliente-servidor permite al usuario en una máquina, llamada el cliente, requerir algún tipo de servicio de una máquina.
Tecnologías Cliente / Servidor
Administración Federal de Ingresos Públicos Subdirección General de Sistemas y Telecomunicaciones Octubre 2004.
1 Tema 8: Web Distribuido, Servidores Replicados.
BASE DE DATOS DISTRIBUIDAS
DHCP Failover Protocol
Aspectos para Diseñar un Sistema Distribuido:
¿QUÉ ES EL MODELO ENTIDAD-RELACIÓN?  Como ya he comentado este modelo es solo y exclusivamente un método del que disponemos para diseñar estos esquemas.
Sistema de Dominio DNS Por: Cesar Posada Octavio Sucerquia Yefferson Henao.
Proceso de desarrollo de Software
Luis Villalta Márquez.  DHCP Failover Protocol es un protocolo diseñado para permitir que una copia de seguridad del servidor DHCP pueda hacerse cargo.
Sistemas Distribuidos Conceptos Básicos Propiedades MSI. Nancy A. Olivares Ruiz.
Administración de Base de Datos Recuperación Prof Mercy Ospina Torres
BASES DE DATOS DISTRIBUIDAS M.C.C. María Guadalupe Villanueva Carrasco INGENIERIA EN SISTEMAS COMPUTACIONALES.
DLM Transact SQL Sesión I Introducción al SQL Server Uso de las herramientas de consultas del Transact SQL.
Planificación de CPU Conceptos Básicos Criterios de Planificación Algoritmos de Planificación Planificación con Múltiples Procesadores Planificación Real-Time.
Consistencia y Replicación
Transcripción de la presentación:

Sistemas Distribuídos Replicación Sistemas Distribuídos

Objetivos Aumentar la disponibilidad Mejorar los tiempos de respuesta Incrementar la tolerancia a fallas

Candidatos a replicación Datos (por ejemplo, una base de datos críticos) Servicios: Comunicaciones Servicio de nombres Servicio de archivos Recursos en general

Concepto Replicación es el mantenimiento de copias on-line de datos y otros recursos, a fin de alcanzar mejor perfomance, alta disponibilidad y tolerancia a fallas Ejemplos de replicación en Internet: El servicio DNS El Servicio USENET (Internet News)

Mejoras en la perfomance Múltiples clientes accediendo a un solo servidor lo transforman en un cuello de botella: por encima de un nro. máximo de requerimientos por segundo, el tiempo medio de respuesta cae significativamente Múltiples servidores atendiendo a subconjuntos de clientes permiten mejorar el tiempo medio de respuesta

Mejoras en la disponibilidad Datos replicados en dos servidores independientes, conectados a la red por vínculos independientes permiten seleccionar al otro servidor ante la falla de uno cualquiera de ellos o de su enlace

Mejoras en la disponibilidad Supongamos n servidores replicados, cada uno con una probabilidad p de falla independiente. La disponibilidad de los datos será: d = 1 - (prob. todos los serv en falla) = 1 - pn

Tolerancia a Fallas Tipos de falla cubiertos por la replicación: Fallas bizantinas o arbitrarias (resultados incorrectos) Fallas de parada: un componente entra en un estado de falla detectable

Tolerancia a Fallas Una réplica cualquiera podrá seguir prestando servicio ante la falla de otra Un conjunto de réplicas puede producir un dato correcto mediante una elección por mayoría, frente a fallas aleatorias en una cualquiera de las réplicas

Requerimientos Transparencia de replicación: Consistencia: Los clientes no deben tener percepción de la existencia de múltiples copias físicas del objeto referenciado  nombre único y conjunto de resultados único Consistencia: Las mismas operaciones sobre los mismos objetos hechas por distintos clientes deben producir idénticos resultados

Operaciones de acceso a objetos read: lectura del estado de un objeto (no lo modifica) write: cambio del estado de un objeto (lo modifica) también llamada update u overwrite

Operaciones de lectura Leer uno (primario) lectura Leer uno Leer quorum

Operaciones de escritura Escribir uno (primario) Sobreescribir Escribir todos Escritura Escribir todos los disponibles Escribir un quorum Leer y modificar Escribir Gossip

Modelos de Replicación Asíncrono: Todos los requerimientos de un cliente son atendidos por su servidor local (el mas cercano en términos de red) El ordenamiento de las operaciones puede diferir entre réplicas. Cuando un servidor procesa un update desde un cliente local lo propaga al resto de los servidores de réplica

Modelos de Replicación Sincrónico total: Todo requerimiento de update se procesa en orden temporal Sólo cuando todas las réplicas procesaron la operación, el control retorna al cliente Es un modelo de consistencia estricta, en el cual los tiempos de respuesta son mayores al asíncrono

Técnicas de diseño Los esquemas reales utilizan un punto intermedio entre el modelo asíncrono y el sincrónico total: Esquemas basados en quorum: requieren la participación de un subconjunto de las réplicas activas Esquemas basados en causalidad: imponen ordenamiento sólo a las operaciones que lo requieren.

Modelo Arquitectural Front Ends Servicio replicado AR cliente FE AR Administradores de réplica Requerimientos y respuestas

Componentes del modelo Clientes: procesos usuarios del servicio Front-Ends: responsable de la comunicación con uno o mas AR’s, abstraen al cliente de la implementación del servicio Administradores de réplica: procesos que contienen las réplicas y efectúan operaciones directamente sobre ellas

Implementación I: Gossip mensajes AR cliente FE AR cliente FE cliente AR FE Cada FE se comunica con uno o mas AR’s para satisfacer el requerimiento del cliente. Los AR intercambian mensajes (gossip), propagando los cambios registrados

Implementación II: Réplica primaria Primario En rojo: escrituras En verde: lecturas AR cliente FE AR cliente FE cliente AR FE Secundarios Cada FE se comunica con el AR designado primario cuando la operación requerida es un update. El AR primario propaga los cambios al resto de los AR’s.

Réplica primaria Para las operaciones de lectura, los FE’s pueden utilizar cualquier AR, dado que el modelo garantiza que todos están sincronizados. En la eventualidad de falla del AR primario, un algoritmo distribuido fuerza una elección de otro AR para promoverlo a primario

Consistencia y ordenamiento de requerimientos Asumimos que cada Administrador de Réplica: Procesa un requerimiento por vez (o, si es multithreaded, suponemos equivalencia serial) Es una máquina de estados, es decir, los datos administrados tienen valores en función del valor inicial y de la secuencia de operaciones aplicadas

Ordenamiento Requerimientos totalmente ordenados: Dados dos requerimientos {r1, r2}, se asegura que: r1 es procesado antes que r2 en todas los AR, o r2 es procesado antes que r1 en todas los AR

Ordenamiento causal Establece una relación causal entre dos eventos (requerimientos): r1 sucedió antes que r2 si hubo un flujo de información desde r1 hacia r2 Dada esta relación, r1 debe procesarse antes que r2 en todos los AR El ordenamiento total no necesariamente es causal.

Ordenamiento Sincrónico Permite establecer eventos de sincronización, que imponen a todas las réplicas respetar el ordenamiento consistentemente, antes o después del evento de sincronzación.

Diagramas de ordenamiento FE1 AR1 AR2 AR3 FE2 Totalmente Ordenado t1 t2 Ord. Causal (c1 y c2) Arbitrario (c3) c1 c3 c2

Ordenamiento Sincrónico FE1 AR1 AR2 AR3 FE2 S c1 t1 t2 c2 c1, c2: causal t1, t2: total s: sincrónico

Implementaciones del ordenamiento de mensajes Hay dos aproximaciones al problema: Hold-Back: un requerimiento ri que arriba a un AR no es procesado hasta que no se satisfacen las condiciones de ordenamiento requeridas El problema guarda similitud con las condiciones de comunicación en grupo (por ej. Multicast Ordenado)

Hold-Back Un requerimiento r es estable en un AR si todos los requerimientos previos (según el criterio de ordenamiento vigente) han sido procesados Todo requerimiento estable está en condiciones de ser procesado por el AR

Hold-Back: Arquitectura Procesamiento de Requerimientos Cola de Procesamiento Cola de ‘Hold-Back’ requerimiento

Funcionamiento Al arribar un requerimiento al AR es encolado en Hold-Back Cuando este requerimiento está estable, pasa a la cola de Procesamiento La unidad de procesamiento extrae los requerimientos uno a uno de esta cola

Requerimientos para la implementación Seguridad: la implementación debe asegurar que una vez que se procesó un requerimiento r es imposible que arribe un requerimiento previo Liveness: Ningún requerimiento debe esperar indefinidamente en la cola de Hold-Back

Implementaciones: ISIS toolkit: es un software que corre sobre Unix y brinda un entorno de multicast ordenado para entregar los requerimientos a los AR’s Gossip: entrega los mensajes no ordenados, basándose en la propagación de updates entre AR’s