Está en la página 1de 21

Instituto Tecnológico

Superior de Mulegé

Ing. Tecnologías de la Información


y las Comunicaciones
Sistemas Operativos II
Ing. Samir A. Navarro.
Investigación Modelos de
Replicación
Cinthia Adamari Sotelo Leyva
Santa Rosalía BCS

1
Índice
Introducción ............................................................................................................. 3
Replicación de datos ............................................................................................... 4
Funciones de la replicación de datos ...................................................................... 5
Modelos de Replicación .......................................................................................... 6
Activo ...................................................................................................................... 6
Replicación Pasiva .................................................................................................. 7
Replicación de datos asíncrona .............................................................................. 9
Replicación síncrona ............................................................................................. 10
Modelo incremental ............................................................................................... 12
Modelo Mezcla ...................................................................................................... 14
Servidor de Replicas iniciado por el cliente ........................................................... 15
Servidor de Replicas Iniciado por el Servidor ........................................................ 16
Protocolo Gossip ................................................................................................... 16
Modelo de Replicación Instantánea ...................................................................... 18
Modelo de replicación parcial ................................................................................ 19
Modelo de Replica Transaccional ......................................................................... 20
Bibliografía ............................................................................................................ 21

2
Introducción
En los sistemas replicados, la gestión adecuada de la coherencia es esencial para
actualizar las réplicas y mantener registros y eliminaciones. Para ello, se suele
utilizar un soporte de comunicación grupal, basado en la difusión de mensajes a un
grupo de procesos, con propiedades formales en cuanto a la fiabilidad y orden en la
entrega de los mensajes. En esta investigación se investigará sobre la replicación
de datos.

Figure 1. Componentes de una Replicación SQL Server.

3
Replicación de datos

La replicación de datos es el proceso de copiar y almacenar datos corporativos en


múltiples ubicaciones. El proceso de duplicación puede ser puntual o continuo,
según las necesidades de la organización; Este último está destinado a garantizar
que los datos replicados se actualicen periódicamente y sean coherentes con la
fuente. El propósito principal de la replicación de datos es mejorar la disponibilidad
y accesibilidad de los datos y la solidez y consistencia del sistema. La replicación
de datos es un proceso de copiar y distribuir tablas de forma idéntica desde una
base de datos a uno o más sitios en una red.

Este proceso garantiza que los datos estén siempre disponibles en el lugar correcto
para ser utilizados en el momento adecuado y es más que simplemente copiar datos
entre múltiples ubicaciones. Tradicionalmente se ha utilizado como mecanismo
básico para aumentar la disponibilidad y el rendimiento de un BDD. La
replicación debe ir acompañada de análisis, diseño, implementación,
administración y supervisión para garantizar la coherencia de los datos en varios
administradores de recursos en entornos distribuidos. Por esta razón, un
servicio de replicación de datos debe proporcionar la siguiente funcionalidad:

 Sea escalable. Con respecto a la replicación, por escalabilidad nos referimos


a la capacidad de replicar pequeños o grandes volúmenes de datos en
recursos heterogéneos (hardware, redes, sistemas operativos).
 Proporcionar transformación de datos y mapeo de servicios. Estos servicios
permiten que coexistan diferentes esquemas de datos sin perder su
semántica. Por ejemplo, las copias pueden ser idénticas o semánticamente
equivalentes.
 Admite la replicación en modo síncrono (en tiempo real) o asíncrono. -
Proporcionar un mecanismo que describa los datos y objetos a replicar
(diccionario de datos).
 Proporcionar un mecanismo para inicializar un sitio de procesamiento, esto
para indicar la recepción de datos replicados.

4
 Apoyar la gestión integral de la seguridad y la calidad de los servicios. Por
ejemplo, el servicio debe garantizar que no se produzcan daños en los datos
durante el proceso de replicación. En otras palabras, los datos pueden
cambiar de formato, pero no de contenido.
 Mantener un mecanismo de registro para administrar todos los intentos de
replicación fallidos.
 Tiene un mecanismo de recuperación automática.

Funciones de la replicación de datos


La replicación de datos funciona copiando datos de una ubicación a otra, como entre
dos hosts locales en la misma ubicación o en ubicaciones diferentes. Por ejemplo,
la duplicación de la base de datos en el almacenamiento se copia de un sistema de
red de almacenamiento a otro.

Figure 2. Disponibilidad de la Base de Datos

Puede replicar datos a pedido, a granel o en lotes según una programación.


Además, la replicación también se puede realizar en tiempo real a medida que se
insertan, modifican o eliminan datos en el sistema de aprovisionamiento primario.

5
Modelos de Replicación

Activo
Existen dos modelos de replicación básicos: activo y pasivo. En el modelo activo
el cliente difunde su petición a todas las réplicas del servidor (bien directamente,
realizando el propio cliente la difusión, o a través de una de las réplicas, que
difundirá su petición antes de intentar servirla; siendo esta segunda opción la más
sencilla de implantar al utilizar grupos cerrados). Estas réplicas servidoras procesan
cada una de ellas la petición de manera local, sin necesidad de ninguna
coordinación, y retornan su resultado al cliente. En el modelo pasivo el cliente sólo
interactúa con una réplica primaria, que es la única con capacidad para procesar
activamente cada petición. Posteriormente, esta réplica primaria difunde las
actualizaciones al resto de réplicas y responde al cliente. A pesar de que estos dos
modelos son los más importantes y más ampliamente implantados, para obtener un
buen rendimiento se llegan a necesitar soluciones intermedias que precisan un
protocolo de replicación más elaborado.

Figure 3. Directorio Activo

6
Replicación Pasiva
La replicación pasiva es una forma de replicar que reduce el tiempo que tardan los
cambios en el archivo en reflejarse en las réplicas. El servidor de origen usa un
sistema de notificación para informar de inmediato a la réplica cliente que necesita
actualizarse.

La replicación pasiva necesita más trabajo para configurarse dado que los
administradores de los servidores de origen y destino deben intercambiar
información. El beneficio es que la réplica de origen inicia la replicación
inmediatamente después de que el archivo ha sido actualizado. Esto permite que
los cambios en el archivo se propaguen rápido.

Las bases de datos construidas a partir de este paradigma pueden servir para
distintos propósitos, ya que el malware basa una parte importante de su
funcionamiento en el protocolo DNS, por ejemplo, para modificar rápidamente la
dirección IP del servidor de control de una botnet que utilice una red de tipo Fast
Flux.

La replicación de DNS pasiva nace para resolver algunas preguntas cuya respuesta
sería muy difícil o imposible obtener utilizando el protocolo DNS estándar, como por
ejemplo:

¿Dónde apuntaba este dominio en el pasado?

Nos puede servir para saber si un dominio ha cambiado de lugar su web. Utilizado
por malhechores, el cambio de lugar nos puede llevar a páginas de publicidad,
phishing, descargas de malware, etcétera.

¿Qué nombres resuelve un determinado servidor de nombres?

Si tenemos indicios de que un servidor de nombres ha sido comprometido, podemos


buscar signos de compromiso en los dominios que resuelve el servidor.

7
¿Qué dominios apuntan a una sola dirección IP?

Podemos encontrar servidores de alojamiento compartido. Si uno de los dominios


alojados ha sido comprometido, es posible que el resto de los alojados en el mismo
servidor se hayan visto comprometidos.

¿Qué subdominios tiene un dominio dado?

Nos proporciona una funcionalidad parecida a la antigua transferencia de zona de


DNS, cuyo uso se desaconseja debido a los problemas de seguridad que puede
provocar.

Como acabamos de ver, las posibilidades son muchas.

Privacidad

Para aquellos preocupados por la privacidad de los datos registrados en estas


bases de datos, las herramientas actuales utilizan sólo la información justa para
poder construir una réplica del árbol DNS sin obtener, por ejemplo, la IP del usuario
que realizó la consulta, dejando con ello una base de datos completamente anónima
que contiene los siguientes campos:

 Pregunta.
 Respuesta.
 Clase de la respuesta.
 Primera aparición.
 Última aparición.

(Vila, 2016)

8
Replicación de datos asíncrona
La tecnología de replicación asíncrona es la más reciente alternativa para proporcionar
tolerancia a fallos en servidores y almacenamiento en red. A diferencia de las tecnologías
de replicación anteriores, trabaja capturando los cambios en los ficheros en el nivel del
sistema operativo.

Las tecnologías de replicación convencionales –de las que la replicación de transacciones


SQL es un ejemplo– actúan en el nivel de las aplicaciones o en el del hardware. Y de ahí,
algunos de sus inconvenientes. En el primer caso, el grado de protección está limitado a
un único motor de aplicación y típicamente genera sobrecargas en la red; en el segundo, a
menudo provoca latencias en el disco de producción, así como un nivel de utilización WAN
significativo y, al mismo tiempo, desaconsejable debido a sus costes.

Byte a byte

En lugar de replicar transacciones en una aplicación o bloques de discos, la tecnología de


replicación asíncrona captura los cambios que se producen en cualquier fichero gestionado
por el sistema operativo del servidor a nivel de byte. Esto se logra mediante la instalación
de un driver de filtrado, cuya función consiste en discriminar todas las transacciones
enviadas a un determinado sistema de ficheros. Utilizando un pequeño número de reglas,
el driver captura una copia de cada transacción y la envía a un servicio de sistema o daemon,
el cual entonces la transmite vía TCP/IP al servidor determinado previamente.

Cómo funciona

Este nuevo enfoque de replicación para servidores y almacenamiento en red captura los
cambios de los ficheros al nivel del sistema operativo, proporcionando una mayor tolerancia
a fallos.
1- El usuario cambia un fichero, ejecuta una transacción o introduce nueva información en
una base de datos.
2- Los datos fluyen desde el usuario hasta el nivel de aplicación, sistema operativo y sistema
de ficheros del servidor casi en tiempo real.

9
3- Después, los datos van al hardware de almacenamiento.
4- El driver de filtrado del sistema de ficheros captura una copia de los datos y la envía al
servidor B cuando el ancho de banda esté disponible.
5- El servidor B envía la copia backup de los datos al hardware de almacenamiento.
(Desconocido, 2002)

Figure 4. La WEB asincrona.

Replicación síncrona
La replicación síncrona se habilita por volumen. En los volúmenes que no tienen
habilitada la replicación síncrona (SyncRep), los datos del volumen y las
instantáneas solo se encuentran en el bloque al que está asignado el volumen. En
volúmenes con replicación síncrona habilitada, los datos del volumen existen
simultáneamente en dos bloques:

 SyncActive: el bloque al que se conectan los iniciadores iSCSI cuando leen


y escriben datos del volumen.
 SyncAlternate: cuando se escriben datos del volumen en el bloque
SyncActive, el grupo escribe simultáneamente los mismos datos a este
bloque. Puede cambiar los roles de los bloques SyncActive y SyncAlternate.

10
Puede cambiar los bloques SyncActive y SyncAlternate. El bloque SyncActive
antiguo se convierte en el bloque SyncAlternate, y viceversa. No se requiere ningún
cambio de configuración de destinos de iSCSI. Durante el cambio, se cierran las
sesiones de las conexiones de host. Los iniciadores iSCSI pueden volver a
conectarse cuando finalice el cambio. En función de su configuración, el iniciador
puede volver a conectarse automáticamente.

Nota: si elimina un volumen para el que se habilitó la replicación síncrona, el


sistema situará el volumen SyncActive en el Depósito de recuperación. No obstante,
el volumen SyncAlternate se eliminará completamente y no podrá recuperarse.

Estados de replicación síncrona

Existen tres estados de replicación síncrona para un volumen:

 sincronización: los bloques SyncActive y SyncAlternate contienen los mismos


datos del volumen.
 En pausa: el administrador ha pausado la replicación síncrona. Mientras la
replicación síncrona está en pausa, el volumen permanece en línea, y los
iniciadores pueden conectarse para leer y escribir en el volumen SyncActive.
Un administrador puede pausar y reanudar posteriormente la replicación
síncrona. Por ejemplo, esto puede ocurrir en una ventana de mantenimiento
durante la que se pone fuera de línea el bloque SyncAlternate. Si los datos
se escriben en el volumen mientras se pausa la replicación síncrona, solo se
escriben en el bloque SyncActive, y los dos bloques se encuentran sin
sincronización. El grupo realiza el seguimiento de todas las escrituras en el
volumen mientras la replicación síncrona se encuentra en pausa y, cuando
el administrador reanuda la replicación síncrona, escribe los cambios
registrados durante el seguimiento en el bloque SyncAlternate.
 Sin sincronización: es posible que el bloque SyncActive y el bloque
SyncAlternate no contengan los mismos datos; el bloque SyncActive
contiene los datos del volumen más recientes. Un volumen puede pasar a

11
encontrarse sin sincronización si se pausa la replicación síncrona, o si uno
de los bloques no está disponible o no tiene espacio libre. El volumen puede
pasar a estar sin sincronización cuando la reserva de instantánea en el
bloque SyncAlternate está llena, aunque solo cuando la política de
recuperación de espacio de instantáneas establezca los volúmenes fuera de
línea cuando se agote la reserva de instantánea.

Modelo incremental
El modelo incremental se centra en generar software operativo de forma rápida pero
admisible. Los requisitos del proyecto tienen una prioridad asignada, cada cual
entregado según el orden de incremento correspondiente.

En las etapas más tempranas del ciclo de vida del proyecto, los procesos formados
proporcionan al usuario o al cliente funcionalidades precisas. Y sucede, aunque el
producto esté en una versión incompleta.

El método incremental es un ciclo de vida que ocurre en el desarrollo de software.


Este modelo descompone un proyecto en una sucesión de agregados denominados
incrementos. Estos agregados conforman un fragmento de la funcionalidad total del
producto. Este es un modelo prescriptivo que entrega un componente de trabajo
con cada incremento. Cada una de las fases del modelo incremental debe
desarrollarse debidamente. Es decir, debe cumplir con:

 Requisitos.
 Diseño.
 Codificación.
 Módulos de prueba.

Una vez que el modelo de proceso incremental está dividido, el desarrollo se llevará
a cabo en pasos. De esa manera se abarca todo el análisis, diseño, implementación,
realización de todas las pruebas y mantenimiento necesarios.

12
La funcionalidad desarrollada en cada etapa se agregará a la funcionalidad llevada
a cabo anteriormente. Esto último se repite hasta que el software esté
completamente desarrollado.

Para qué sirve el modelo incremental

El modelo de desarrollo incremental permite ir probando las funciones de un


software de forma interactiva. Se obtienen prototipos por cada incremento, que se
va perfeccionando.

El modelo incremental es una de las metodologías más usadas para desarrollo de


software.

La interactividad del desarrollo incremental del software no solo implica al equipo


que lo está diseñando, sino también al cliente, que puede conocer los avances de
cada incremento. Al contar con la participación del cliente, durante todo el proceso,
el equipo de trabajo evita un problema muy común: tener que volver hacia atrás
porque el cliente no está conforme con una función.

Es el mismo cliente el que incluye o desecha en cada etapa incremental. De esta


forma, el prototipo final estará totalmente adecuado a sus necesidades. El Modelo
Incremental es particularmente útil cuando no se cuenta con una dotación de
personal suficiente.

(Mancuzo, 13 de mayo de 2021 )

13
Figure 5. Modelo Incremental para la Ingeniería de Software

Modelo Mezcla
De forma predeterminada, la replicación de mezcla sincroniza los comandos DELETE entre
el Publicador y Suscriptor. La replicación de mezcla le permite conservar filas en la base de
datos de suscripciones incluso cuando se han eliminado de la publicación, y viceversa.

Puede especificar mediante programación que se omitan los comandos DELETE al crear un
nuevo artículo o puede habilitar esta funcionalidad en un momento posterior usando los
procedimientos almacenados de replicación. (Microsoft, 2022)

14
Figure 6. Modelo de Replicación de Mezcla.

Servidor de Replicas iniciado por el cliente


Réplicas iniciadas por el cliente: Estas réplicas son más comúnmente conocidas
como cachés (cliente). En esencia, un caché es una herramienta de almacenaje
local utilizada por un cliente para almacenar temporalmente una copia de los datos
que ha solicitado.

15
Servidor de Replicas Iniciado por el Servidor
No permite el acceso del usuario a los datos protegidos en el destino mientras la replicación
está en curso. Si no se trata de factores de bloqueo, la Réplica de almacenamiento permite
reemplazar servidores de Replicación DFS por esta tecnología más reciente.

Protocolo Gossip
El protocolo Gossip es un protocolo que deja diseñar sistemas de comunicaciones
distribuidos (Peer to Peer) enormemente eficaces, seguros y de baja latencia. La
inspiración para su diseño ha sido tomada de estudios sobre la expansión epidémica
y algoritmos resultantes de exactamente la misma.

Cuando hablamos de Gossip Protocol, hablamos de un protocolo de comunicación


que utilizan los dispositivos digitales para propagar una información en una red entre
pares (P2P). En las redes blockchains, este protocolo es utilizado por los nodos de
la red para compartir y divulgar información de forma rápida y confiable entre sí.

El nombre de Gossip para este protocolo deriva de la forma en que se propaga la


información a través de las redes sociales. Gossip en español quiere decir chisme
o rumor; por lo que el protocolo Gossip Protocol está inspirado en esta forma de
divulgación de información que ocurre de manera muy rápida y veloz en estas redes.
En la actualidad, son muchas las variaciones que existen de este protocolo de
comunicación. Muchas se aplican según las necesidades o requerimientos de cada
usuario o de cada una de las redes que lo emplee.

¿Cómo funciona el Gossip Protocol?

Los protocolos de Gossip funcionan de forma muy sencilla. Esto se debe a que
están basados en un concepto muy básico para distribuir y propagar información a
través de una red. En estos protocolos, para que un nodo distribuya una
información, sólo debe emparejarse con otros nodos de forma aleatoria. Una vez
ocurre esto sólo debe intercambiar la información recibida con dichos nodos,
quienes a su vez distribuirán la información con otros nodos a los que también están

16
emparejados. Formando una cadena de distribución para propagar la información
por toda la red de forma oportuna y eficaz.

Por su parte, la forma en que se propaga la información dentro de una red entre
pares a través del Gossip Protocol ocurre de forma rápida y segura siempre y
cuando los nodos involucrados puedan garantizar la propagación y divulgación de
la información sin discriminar o excluir a ninguna de las partes en su propia red.

Gossip Protocol se basa en la distribución probabilística de la información


seleccionando pares, a quienes los nodos les distribuirán la información. Esto con
la finalidad de que no se repita o duplique una información a un nodo que ya la
conoce. Por ejemplo, en el caso de un equipo de trabajo que se reúne
constantemente para mantenerse actualizado con todo lo que ocurre dentro de la
oficina, aplicando el protocolo de Gossip cada uno de los miembros del equipo debe
estar emparejado con otro miembro con quien compartirán la información.

Figure 7. Protocolo Gossip

17
Modelo de Replicación Instantánea
La replicación de instantáneas se refiere a un método de replicación entre bases de datos.
Durante este proceso, los datos se actualizan con poca frecuencia en momentos específicos
copiando los cambios de datos de la base de datos original (editor) a una base de datos
receptora (suscriptor).

La replicación de instantáneas es el método de replicación ideal en cualquiera de las


siguientes condiciones:

 Cuando los datos cambian con poca frecuencia


 Cuando no se requiere que el editor y el suscriptor estén sincronizados en todo
momento
 Cuando los cambios en los datos son grandes, pero ocurren en un período corto de
tiempo

La replicación solo copia los datos que se han modificado desde que se replicaron
previamente. En ciertos casos, la replicación de instantáneas no es la mejor opción, por
ejemplo, la replicación de una base de datos de un banco comercial.

La replicación de instantáneas también es una buena forma de realizar la sincronización


inicial entre el publicador y el suscriptor. Al configurar la replicación, se deben aplicar la
programación de instantáneas, la frecuencia y los tiempos para cada base de datos.

Otros tipos de replicación incluyen la replicación por combinación y la replicación


transaccional. (Desconocido, Techinfo, 2022)

18
Modelo de replicación parcial
La replicación parcial ocurre cuando solo se replican ciertos fragmentos de la base de datos
en función de la importancia de los datos en cada ubicación. Aquí, el número de copias
puede variar desde uno hasta el número total de nodos en el sistema distribuido.

En un entorno empresarial, este modo de replicación puede ser útil para los miembros de
los equipos de ventas y marketing donde se almacena una base de datos parcial en
computadoras personales y se sincroniza regularmente con el servidor principal.

Figure 8. Modelo de Replica

19
Modelo de Replica Transaccional
La replicación transaccional es la distribución periódica automatizada de cambios
entre bases de datos. Los datos se copian en (o casi) en tiempo real desde el
servidor principal (editor) a la base de datos receptora (suscriptor). Por lo tanto, la
replicación transaccional ofrece una excelente copia de seguridad para cambios de
bases de datos frecuentes y diarios.

En la mayoría de los casos, la replicación transaccional comienza tomando una


instantánea del editor, que luego se copia al suscriptor. Luego, cualquier cambio de
editor se registra en tiempo real y se replica en el suscriptor.

La replicación transaccional no simplemente copia el efecto neto de los cambios en


los datos, sino que replica cada cambio de manera consistente y precisa.

20
Bibliografía
Desconocido. (1 de Febrero de 2002). ComputeWork. Obtenido de
https://www.computerworld.es/archive/replicacion-de-datos-asincrona
Desconocido. (2022). Techinfo. Obtenido de https://techinfo.wiki/replicacion-de-
instantaneas/#:~:text=La%20replicaci%C3%B3n%20de%20instant%C3%A1
neas%20es%20el%20m%C3%A9todo%20de,pero%20ocurren%20en%20u
n%20per%C3%ADodo%20corto%20de%20tiempo
Mancuzo, G. (13 de mayo de 2021 ). Compara Software . Obtenido de
https://blog.comparasoftware.com/que-es-el-modelo-incremental/
Microsoft. (26 de 09 de 2022). Microsoft. Obtenido de
https://learn.microsoft.com/es-es/sql/relational-
databases/replication/merge/specify-merge-replication-properties?view=sql-
server-ver16
Vila, J. (14 de Noviembre de 2016). Security A(r)WORK. Obtenido de
https://www.securityartwork.es/2012/11/14/replicacion-pasiva-de-dns-
introduccion/

21

También podría gustarte