Está en la página 1de 19

REPLICACION DE BASE DE

DATOS DISTRIBUIDAS

REPLICACIN DE BASES
DE DATOS
Es

el proceso de copiar y
mantener objetos de las base de
datos,
como
por
ejemplo
relaciones, en mltiples bases de
datos que forman un sistema de
bases de datos distribuido.

REPLICACIN
La replicacin copia y mantiene los objetos de las bases de
datos en las mltiples bases de datos que levantan un sistema
distribuido. La replicacin puede mejorar el funcionamiento y
proteger la disponibilidad de las aplicaciones, porque alterna
opciones de acceso de los datos existentes. Por ejemplo, una
aplicacin puede tener acceso normalmente a una base de
datos local, ms que a un servidor remoto para reducir al
mnimo el trfico de la red y alcanzar su funcionamiento
mximo. Adems, la aplicacin puede continuar funcionando
si el servidor local experimenta una falla, pero otros servidores
con datos replicados siguen siendo accesibles.

Replicacin bsica:las rplicas de tablas


se gestionan para accesos de slo lectura.
Para modificaciones, se deber acceder a
los datos
del sitio primario.
Replicacin avanzada (simtrica):amplan
las capacidades bsicas de slo- lectura de
la replicacin, permitiendo que las
aplicaciones
hagan actualizaciones a las rplicas de las
tablas,
a travs de un sistema replicado de la base
de datos.
Con la replicacin avanzada, los datos pueden

BENEFICIOS DE LA
REPLICACIN

Disponibilidad
Fiabilidad
Rendimiento
Reduccin de la carga
Procesamiento desconectado
Soporta muchos usuarios
Soporta aplicaciones avanzadas

Disponibilidad.-El modo en que la replicacin

incrementa la disponibilidad de los datos


para los usuarios y aplicaciones.
Fiabilidad.- Al haber mltiples copias de los
datos disponibles en el sistema, se dispone
de un mecanismo excelente de recuperacin
cuando existan fallos en nodos.
Rendimiento.- Se mejora para las
transacciones de consulta cuando se
introduce la replicacin en un sistema que
estuviera aquejado de sobrecarga de
recursos centralizados.
Reduccin de la carga.- Modo en q se utiliza
la replicacin para distribuir datos en
ubicaciones remotas

Procesamiento Desconectado.- Modo en que la

replicacin puede implementarse mediante


mecanismo instantneas.
Soporta muchos usuarios.- Se puede crear
mltiples
instantneas
personalizadas
que
satisfagan los requisitos de cada usuario o grupo
de usuarios del sistema.
Soporta
Aplicaciones
Avanzadas.Para
OLPT(Online transaction Processing), OLAP(Online
Analitical Processing)

APLICACIONES DE
REPLICACIN

Soporte para un equipo de ventas remoto.Requiere la sincronizacin peridica de un


gran nmero de pequeos nodos mviles
remotos con el sistema de base de datos
corporativo.
Aplicaciones Financieras.- requieren que los
datos de mltiples servidores se sincronicen
de manera continua e instantnea.

VENTAJAS Y DESVENTAJAS DE
LA REPLICACIN
Con la replicacin se pueden llegar a obtener dos
mejoras importantes:

1.Por un lado, se garantiza que el servicio ofrecido


por la aplicacin, no se vea interrumpido en caso de
que se d un fallo en alguna de las rplicas. Adems,
eltiemponecesario para restablecer el servicio en la
aplicacin podra llegar a ser grande en algunos tipos
de fallo.

2.Por otra parte, la capacidad de servicio se ve


incrementada cuando las peticiones efectuadas por
losclientesnicamente implican consultas.

Modelo de replicacin:
El modelo de Replicacin que usa SQL es el de

Publicador Suscriptor. Este modelo consiste en


Publicadores, Suscriptores y Distribuidores; las
publicaciones y los artculos, y las suscripciones por tirn
o empuje. Adems incorpora agentes de administracin
como Agente de Instantnea, Agente Lector de Registro,
Agente de Distribucin, y Agente de Mezcla. Todos los
agentes pueden funcionar debajo del agente del servidor
del SQL y se pueden administrar completamente por el
Administrador del Servidor de SQL.

PROPAGACIN DE
ACTUALIZACIONES

Para realizar la propagacin de las operaciones de actualizacin o de sus


efectos, se emplea un Sistema de Comunicacin a Grupos (SCG), este est
formado por un conjunto de bibliotecas y servidores de bajo nivel, que
proporcionan una interfaz con operaciones de difusin y recepcin de
mensajes. Para ello, debe configurarse en primer lugar un grupo al que se
debe asignar algn tipo de identificador. El grupo estar formado por una
serie de procesos (precisamente, las rplicas de la aplicacin altamente
disponible) y la difusin de mensajes se realiza sobre todos los procesos que
integren el grupo en cada momento (es decir, las rplicas activas).

Los servicios ofrecidos por un SCG son los siguientes:

- Pertenencia. Un componente del SCG se encarga de monitorizar el estado


de todos los procesos que forman el grupo. Cuando alguno de los procesos
falle o se reincorpore al grupo, el servicio de pertenencia notifica tal evento a
todos los procesos que constituyan el grupo. Con ello resulta fcil reaccionar
ante tales eventos, garantizando la consistencia entre el estado de todas las
rplicas.

CONCLUSIONES
La replicacin es un mecanismo utilizado para propagar y
diseminar datos en un ambiente distribuido, con elobjetivode
tener mejor performance y confiabilidad, mediante la reduccin de
dependencia de un sistema de base de datos centralizado. Dada la
diversidad de contextos donde se aplican mecanismos de
replicacin, se puede disponer de una gama de posibilidades, en
vez de utilizar una nica forma de replicar datos. Cada uno de los
tipos de replicacin se adapta en mayor o menor medida y pueden
utilizarse en forma combinada para un caso especfico. Los tipos de
replicacin disponibles permiten moverse desde contextos donde
los sitios trabajan en forma completamente unos de otros, hasta
contextos donde se requiere una alta consistencia transaccional.

REPLICAR BASES DE DATOS MYSQL


EN SERVIDORES LOCALES O
REMOTOS
Mysql permite replicar bases de datos, dentro de un
mismo servidor mysql (en la misma mquina), o
entre B.D. localizadas en diferentes servidores en
red local o remota.Para poder conseguir
replicaruno de los servidores (Servidor M) tiene que
ser el maestro y el otroservidor el esclavo (Servidor
E).

Servidor M (Servidor principal, sera elmaestro)


Servidor E (Servidor secundario, sera el
servidoresclavo).

Cuando se indique en los pasosMysql>es porque


tenemos que introducir los comandos dentro de
laconsola de Mysql.

Para entrar en la consola introducir el comando :mysql


-u root -p

Ejemplo del comando en un servidor linux :

En ese momento el servidor mysql pide el password de


root , lo introducimos y se accede a la consola.

# /usr/local/mysql/bin/mysql -u root -p(Puede ser


diferente la ruta en tu PC)

La replicacin de Base de Datos en mysql tiene varias


caractersticas a considerar y son:

Podemos replicar Bases de Datos en el mismo servidor (Diferentes


servicios MySql), en Servidores diferentes en LAN (Red Local) o
WAN (Servidores Remotos).

Se puede configurar (etc/my.cnf), la replicacin parcial o total de


las tablas de la Base de Datos a replicar del Servidor Maestro al
Servidor Esclavo/s.

La replicacin es UNIDIRECCIONAL,los datos se copiande una base


de datos a otra en un solo sentido, eso quiere decir que solo en una
base de datos se deben actualizar los datos (sentencias INSERT,
UPDATE, DELETE), que es la base de datos maestra,y la base de
datos esclava nunca debe recibir sentencias de actualizacin de las
tablas que se replican, solo consultas (SELECT).

De las tablas de la Base de Datos que no se replican,entre el


Servidor Maestro y el Esclavo, se pueden realizar lassentencias
(INSERT, UPDATE y DELETE), en la base de datos del Servidor
Esclavo.
Podemos tener sendos servidores esclavos para cada maestro,
pero no varios maestros para un esclavo.

La replicacin copia exactamente todos los cambios que se van

haciendo desde que se activa el sistema de replicacin, es decir,


antes de replicar hay que hacer un backup definitivo de la base de
datos principal a la esclava, para que las 2 bases de datos tengan
exactamente la misma informacin.

Cada servidor esclavo debe tener permiso para conectar con el


maestro y solicitar las actualizaciones.

El servidor esclavo necesita una cuenta en el servidor maestro para

que pueda conectarse. En el servidor maestro, configure una cuenta


como sta :

Mysql>GRANT REPLICATION SLAVE ON *.* TO

usuario_esclavo@'host_esclavo IDENTIFIED BY contrasea_esclavo;

El servidor maestro crea un hilo de proceso para

manejar cada esclavo. En el lado del servidor


esclavo se crean 2 hilos para manejar las tareas de
rplica. El primer hilo es de Entrada/Salida recibe
los eventos para procesar del servidor maestro y
los escribe en los registros de reenvo del esclavo.
El segundo hilo el SQL lee los eventos de los
registros de reenvo y los ejecuta.

Es aconsejable que las rplicas de las Bases de

Datos MySql sean de la misma versin y si es


posible de la 5.x y activos los mismos motores en
las 2 B.D.

La actualizacin de la informacin de la Base de


datos Mysql Master (total o parcial de sus tablas),
automticamente Mysql actualiza unos ficheros de
datos mysql-bin.XXXXXX. Una vez actualizados
estos ficheros se enva un evento al servidor con la
base de datos Esclava y sta se comunica con el
Servidor Esclavo para recibir la porcin del fichero
de mysql-bin.XXXXXX que le falta; no todo el
fichero sino la porcin que le falta por tratar
solamente (esto se sabe porposiciones tratadas
dentro del fichero, n linea).

FIN

También podría gustarte