Sistemas Distribuidos Replicación

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

Planificación de Monoprocesadores
Supervisión del rendimiento de SQL Server
Administración de archivos de bases de datos
I.T.E.S.R.C. Romina Tamez Andrea Martínez Ma. De Lourdes Solís
BASES DE DATOS DISTRIBUIDAS
Base de Datos Distribuidas Bases de Datos II Universidad Argentina J. F. Kennedy - Año 2008 Maletin Yahoo => briefcase.yahoo.com Usuario => bd2_jfk Pssw.
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.
Tecnologías Cliente / Servidor Capitulo III Richard Jiménez V. clienteserver.wordpress.com.
“Tuning” Universidad Nacional Autónoma de México Bases de datos I
Confiabilidad en Bases de Datos Distribuidas
Metáfora.
Base de Datos Distribuidas
BASES DE DATOS DISTRIBUIDAS
DISTRIBUCIÓN DE BASE DE DATOS La replica Por: Noemí Sampedro 6 sistemas.
Introducción a los Sistemas de Bases de Datos Distribuidos
UNIDAD II Modelo de Datos.
Johanna Lizeth Rodríguez Lorena Fda. Chávarro Ramos
BASES DE DATOS DISTRIBUIDAS
Tema 3 SRI Vicente Sánchez Patón I.E.S Gregorio Prieto
Inteligencia artificial
SERVIDOR.
INTEGRANTES ALEXIS MENDOZA ALDAIR ARRIETA CARLOS PASTOR LORENA RODRIGUEZ ANTHONY JIMENEZ.
Sistemas Operativos Distribuidos Plataforma Cliente/Servidor
UNIDAD I Conceptos Básicos.
Sistemas Distribuídos
REPLICACIÓN EN SQL SERVER
Ing. Fabián Ruano.  Definición  Diferencias con BD Centralizadas.
Instituto Tecnológico de La Paz Ing. Fernando Ortiz Ahumada.
Bases de datos Distribuidas ITES de la región carbonífera 1 Problemas de las Bases de datos distribuidas.
Una base de datos es un “almacén” que nos permite guardar grandes cantidades de información de forma organizada para que luego podamos encontrar y utilizar.
DATA WAREHOUSE Equipo 9.
5. Sistemas de archivos avanzados1 Tema 5: Sistemas de Archivos Avanzados Resumen: –Sistema de archivos distribuido –File Replication Service.
Un sistema de gestión de bases de datos: Es un conjunto de programas que permite a los usuarios crear y mantener una base de datos. Por tanto, el SGBD.
PROTOCOLO DE SPANNING-TREE Semestre 3 Capítulo 7
Elaborado por: Guillermo Baquerizo I Término
REPLICACION DE BASE DE DATOS DISTRIBUIDAS
SISTEMAS DE PROCEDIMENTO DE TRANSACCIONES
Bases de Datos Distribuidas M. en C. Anastacio Antolino Hernández PROBLEMA DE LOS SISTEMAS DISTRIBUIDOS SISTEMAS MANEJADORES DE BASES DE DATOS DISTRIBUIDAS.
Universidad Simón Bolívar Cátedra: Administración de materiales
BASES DE DATOS DISTRIBUIDAS
BASES DE DATOS DISTRIBUIDAS
CICLO DE VIDA Y NORMAALIZACION DE UN SISTEMA DE BASE DE DATOS
TEMA 10: DIAGRAMA DE: OBJETOS, SECUENCIA Y DESPLIEGUE EN UML
“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.
 Un servidor proporciona información a los ordenadores que se conecten a él.  Cuando lo usuarios se conectan a un servidor pueden acceder a programas,
Base de datos Distribuidas Replicación de Datos en SQL Server
EQUIPO:#3 GRUPO:304 NOMBRES: Lizbeth Nava Barón y Erick Ali Mejía.
Teoría de Sistemas Operativos Sistemas distribuidos.
Diseño de Sistemas.
1 FUNDAMENTOS DE BASES DE DATOS SISTEMA GESTOR DE BASES DE DATOS (SGBD) Consiste en una colección de datos interrelacionados y un conjunto de programas.
MARIANA PRECIADO VILLA TELECOMUNICACIONES 11º3
Protocolos del modelo TCP/IP
Luis Villalta Márquez. Servidores de nombres de dominio (DNS)
Karla Yunuen González Villanueva
Transacciones seguras  Concurrencia Ing. Yeberth Martinez Programación II.
BASE DE DATOS DISTRIBUIDAS
Las doce reglas de las bases de datos distribuidas
Proceso de resolución de un nombre de dominio. –Consultas recursivas. –Consultas iterativas. –Caché y TTL. –Recursividad y caché. Gustavo Antequera Rodríguez.
ACCESS Microsoft Access es un sistema de gestión de bases de datos incluido en el paquete ofimático denominado Microsoft Office. Es igualmente un gestor.
Planificación Curso UNIDAD 1. INTRODUCCIÓN A LOS SERVICIOS EN RED UNIDAD 2. SERVICIOS DHCP UNIDAD 3. SERVICIOS DNS UNIDAD 4. SERVICIOS DE ACCESO REMOTO.
 Definir conceptos fundamentales de las BDD como DTM y DBMS.  Conocer el esquema actual de la Base de datos de la UNACH.  Analizar cuándo utilizar.
Conociendo el modelo Cliente-Servidor
Sistemas Distribuidos Conceptos Básicos Propiedades MSI. Nancy A. Olivares Ruiz.
QUÉ ES UNA BASE DE DATOS? Es un Conjunto de Información, que está clasificada de distintas maneras; pero que comparten entre sí algún tipo de vínculo,
DIAGRAMAS DE SECUENCIA. UML está compuesto por los siguientes diagramas:
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.
Consistencia y Replicación
Transcripción de la presentación:

Sistemas Distribuidos Replicación

Replicación(1/3) Es el mantenimiento de copias on-line de datos en una base de datos o de otros tipos de recursos, con el fin de alcanzar mejor rendimiento en el sistema, alta disponibilidad de la información y una buena tolerancia a fallas. Ejemplos de replicación en Internet: El servicio DNS El Servicio USENET (Internet News)

Replicación(2/3) Se refiere al almacenamiento de copias de datos en sitios múltiples, las cuales pueden ser para satisfacer requerimientos de información, además de mejorar la disponibilidad de los datos y el tiempo de respuesta; finalmente estas copias reducen los costos totales de comunicación y de consulta.

Replicación(3/3) Los datos replicados se someten a la regla de consistencia mutua, la cual requiere que todas las copias de fragmentos de datos sean idénticas, esto quiere decir que cuando hay una actualización de los datos en la base de datos, esta se realiza en todos los sitios donde hay réplicas. Aunque se tiene beneficios, también exige más complejidad de procesamiento del DDBMS cada copia de datos debe ser mantenida por el sistema.

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

Aumentar 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

Mejorar el rendimiento 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

Incrementar la Tolerancia a Fallas (1/2) 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

Incrementar la Tolerancia a Fallas (2/2) 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

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

Escenarios de Replicación Existen tres escenarios de replicación: Base de datos totalmente replicada, guarda varias copias de cada fragmento de la base de datos en varios sitios. No es práctica debido la cantidad de carga impuesta al sistema. Base de datos parcialmente replicada, guarda múltiples copias de algunos fragmentos de la base de datos en múltiples sitios. Base de datos no replicada, guarda cada fragmento de base de datos en un solo sitio.

Requerimientos de la replicación: Transparencia: 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

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 de Replicación Front Ends Servicio replicado AR cliente FE 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.

Conceptos de replicación SQL Server

Componentes del modelo de replicación (1/3) Para representar los componentes y procesos de una topología de replicación se utilizan metáforas de la industria de la publicación. El modelo se compone de los siguientes objetos: El publicador es un servidor que pone los datos a disposición de otros servidores para poder replicarlos. El distribuidor es un servidor que aloja la base de datos de distribución y almacena los datos históricos, transacciones y metadatos.

Componentes del modelo de replicación (2/3) Los suscriptores reciben los datos replicados. Un artículo de una publicación puede ser una tabla de datos la cual puede contar con todas las filas o algunas (filtrado horizontal) y simultaneamente contar de todas las columnas o algunas (filtrado vertical), un procedimiento almacenado, una definición de vista, la ejecución de un procedimiento almacenado, una vista, una vista indizada o una función definida por el usuario. Una publicación es un conjunto de artículos de una base de datos.

Componentes del modelo de replicación (3/3) Una suscripción es una petición de copia de datos o de objetos de base de datos para replicar. Una suscripción define qué publicación se recibirá, dónde y cuándo. Las suscripciones pueden ser de inserción o de extracción; y una publicación puede admitir una combinación de suscripciones de inserción y extracción.

Tipos de replicación Los tipos básicos de replicación son: Replicación de instantáneas Replicación transaccional Replicación de mezcla

Replicación de instantáneas (1/2) En la replicación de instantáneas los datos se copian tal y como aparecen exactamente en un momento determinado. Por consiguiente, no requiere un control continuo de los cambios. Las publicaciones de instantáneas se suelen replicar con menos frecuencia que otros tipos de publicaciones. Puede llevar más tiempo propagar las modificaciones de datos a los suscriptores.

Replicación de instantáneas (2/2) Se recomienda utilizar: cuando la mayoría de los datos no cambian con frecuencia; se replican pequeñas cantidades de datos; los sitios con frecuencia están desconectados y es aceptable un periodo de latencia largo (la cantidad de tiempo que transcurre entre la actualización de los datos en un sitio y en otro). Los servidores OLAP son candidatos a la replicación de instantáneas.

Replicación transaccional (1/2) En este caso se propaga una instantánea inicial de datos a los suscriptores, y después, cuando se efectúan las modificaciones en el publicador, las transacciones individuales se propagan a los suscriptores. SQL Server 2000 almacena las transacciones que afectan a los objetos replicados y propaga esos cambios a los suscriptores de forma continua o a intervalos programados. Al finalizar la propagación de los cambios, todos los suscriptores tendrán los mismos valores que el publicador.

Replicación transaccional (2/2) Suele utilizarse cuando: se desea que las modificaciones de datos se propaguen a los suscriptores, normalmente pocos segundos después de producirse; se necesita que las transacciones sean atómicas, que se apliquen todas o ninguna al suscriptor; los suscriptores se conectan en su mayoría al publicador; su aplicación no puede permitir un periodo de latencia largo para los suscriptores que reciban cambios. Es útil en escenarios en los que los suscriptores pueden tratar a sus datos como de sólo lectura, pero necesitan cambios a los datos con una cantidad mínima de latencia. Ejemplo: un sistema para el procesamiento y distribución de pedidos.

Replicación de mezcla (1/2) Permite que varios sitios funcionen en línea o desconectados de manera autónoma, y mezclar más adelante las modificaciones de datos realizadas en un resultado único y uniforme. La instantánea inicial se aplica a los suscriptores; a continuación SQL Server 2000 hace un seguimiento de los cambios realizados en los datos publicados en el publicador y en los suscriptores. Los datos se sincronizan entre los servidores a una hora programada o a petición. Las actualizaciones se realizan de manera independiente, sin protocolo de confirmación, en más de un servidor, así el publicador o más de un suscriptor pueden haber actualizado los mismos datos. Por lo tanto, pueden producirse conflictos al mezclar las modificaciones de datos.

Replicación de mezcla (2/2) Cuando se produce un conflicto, el Agente de mezcla invoca una resolución para determinar qué datos se aceptarán y se propagarán a otros sitios. Es útil cuando: varios suscriptores necesitan actualizar datos en diferentes ocasiones y propagar los cambios al publicador y a otros suscriptores; los suscriptores necesitan recibir datos, realizar cambios sin conexión y sincronizar más adelante los cambios con el publicador y otros suscriptores; el requisito de periodo de latencia de la aplicación es largo o corto; la autonomía del sitio es un factor crucial.

Factores para elegir el método de replicación (1/3) En la elección de un método adecuado para la distribución de los datos en una organización influyen varios factores. Los cuales podemos agruparlos en dos grupos: factores relacionados con los requerimientos de la aplicación y factores relacionados con el entorno de red. Dentro de los factores relacionados con los requerimientos de la aplicación, los fundamentales son [Gar99]: Autonomía Consistencia transaccional Latencia

Factores para elegir el método de replicación (2/3) La autonomía de un sitio da la medida de cuanto puede operar el sitio desconectado de la base de datos publicadora. La consistencia transaccional de un sitio viene dado por la necesidad de ejecutar o no inmediatamente todas las transacciones que se han ejecutado en el servidor, o si es suficiente con respetar el orden de las mismas. La latencia de un sitio se refiere al momento en que se deben de sincronizar las copias de los datos. ¿Necesitan los datos estar el 100% en sincronía? O si es admisible determinada latencia ¿de qué tamaño es aceptable el rezago? [Gar99]

Factores para elegir el método de replicación (3/3) Entre los factores relacionados con el entorno de red están la velocidad de transmisión de datos de la red, deben considerarse preguntas como ¿Cómo luce la red? ¿Es rápida? Debe analizarse además la confiabilidad de la red y responder preguntas como ¿Cuán confiable es la red? Por otra parte en el caso que los servidores SQL no permanezcan todo el día encendidos, como pudiera suceder en algunas organizaciones, deben considerarse los horarios de disponibilidad de cada servidor.

Fases generales para implementar y supervisar la replicación A pesar de que existen varias formas de implementar y supervisar la replicación, y el proceso de replicación es diferente según el tipo y las opciones elegidas, en general, la replicación se compone de las siguientes fases: Configuración de la replicación Generación y aplicación de la instantánea inicial Modificación de los datos replicados Sincronización y propagación de los datos.

COMENTARIOS HAY QUE HACER UN EJEMPLO DE REPLICACION EN ORACLE Y SQL … Y HAY QUE CUMPLIR CON CIERTAS ESPECIFICACIONES.. EMM COMO EL DOCUMENTO ESCRITO Y OTRAS COSAS