Modulo 9

Anuncio
Introducción a la Replicación
La replicación es un conjunto de tecnologías destinadas a la copia y distribución
de datos y objetos de base de datos desde una base de datos a otra, para luego
sincronizar ambas bases de datos y mantener su coherencia.
La replicación permite distribuir datos entre diferentes ubicaciones y entre
usuarios remotos o móviles mediante redes locales y de área extensa,
conexiones de acceso telefónico, conexiones inalámbricas e Internet.
La replicación transaccional se usa normalmente en escenarios servidor a
servidor que requieren un alto rendimiento, como por ejemplo, la mejora de la
escalabilidad y la disponibilidad, el almacenamiento de datos y la creación de
informes, la integración de datos procedentes de varios sitios, la integración de
datos heterogéneos, y la descarga del procesamiento por lotes.
La replicación de mezcla se ha diseñado principalmente para las aplicaciones
móviles o de servidores distribuidos que pueden encontrarse con conflictos de
datos. Los escenarios más frecuentes son: el intercambio de datos con usuarios
móviles, las aplicaciones de punto de venta (POS) a consumidores, y la
integración de datos de varios sitios.
La replicación de datos se usa para proporcionar el conjunto de datos inicial
para la replicación transaccional y de mezcla; también se puede usar cuando
está indicada una actualización completa de los datos.
Con estos tres tipos de replicación, SQL Server proporciona un sistema eficaz y
flexible para la sincronización de datos en toda la organización.
Información General sobre los tipos de Replicación
Microsoft SQL Server proporciona los siguientes tipos de replicación para usarlos
en las aplicaciones distribuidas:



Replicación transaccional.
Replicación de mezcla.
Replicación de instantáneas
El tipo de replicación que se elige para una aplicación depende de muchos
factores, como el entorno físico de la replicación, el tipo y la cantidad de datos
que se desean replicar y si los datos se actualizan en el suscriptor. El entorno
físico incluye el número y la ubicación de los equipos que participan en la
replicación, y si estos equipos son clientes (estaciones de trabajo, equipos
portátiles o dispositivos de mano) o servidores.
Por lo general, cada tipo de replicación comienza con una sincronización inicial de
los objetos publicados entre el publicador y los suscriptores. Esta sincronización
inicial puede llevarse a cabo mediante la replicación con una instantánea, que es
una copia de todos los objetos y datos especificados por una publicación. Una
vez creada la instantánea, se envía a los suscriptores. Para algunas aplicaciones,
la replicación de instantáneas es lo único que se necesita. Para otros tipos de
aplicaciones, es importante que los cambios de datos posteriores fluyan al
suscriptor de forma incremental a lo largo del tiempo. Algunas aplicaciones
también requieren que los cambios vuelvan del suscriptor al publicador. La
replicación transaccional y la replicación de mezcla proporcionan opciones para
estos tipos de aplicaciones.
En la replicación de instantáneas, no se realiza un seguimiento de los cambios de
datos; cada vez que se aplica una instantánea, ésta sobrescribe completamente
los datos existentes. La replicación transaccional realiza un seguimiento de los
cambios a través del registro de transacciones de SQL Server y la replicación de
mezcla realiza un seguimiento de los cambios a través de desencadenadores y
tablas de metadatos
Información general sobre el modelo de publicación
de replicación
La replicación utiliza una metáfora del sector editorial para representar los
componentes de una topología de replicación, que incluyen el publicador, el
distribuidor, los suscriptores, las publicaciones, los artículos y las suscripciones.
Aunque la metáfora de la revista es útil para comprender la replicación, es
importante señalar que la replicación de SQL Server incluye funciones que no
están representadas en esta metáfora, en particular, la posibilidad de que un
suscriptor realice actualizaciones y de que un publicador envíe cambios
incrementales a los artículos de una publicación.
Hay tres tipos de replicación: replicación transaccional, réplica de mezcla y
replicación de instantáneas. Todos estos tipos dependen de varios programas
independientes, denominados agentes, que realizan las tareas asociadas con el
seguimiento de los cambios y la distribución de los datos.




El publicador (editor) de una revista produce una o más publicaciones.
Una publicación contiene artículos.
El publicador distribuye la revista directamente o a través de un
distribuidor.
Los suscriptores reciben las publicaciones a las que se han suscrito.
Topologia
Una topología de replicación define la relación entre los servidores y las copias
de los datos, y aclara la lógica que determina cómo fluyen los datos entre los
servidores. Hay varios procesos de replicación (denominados agentes) que son
responsables de copiar y mover los datos entre el publicador y los suscriptores.
En la siguiente ilustración se muestra información general acerca de los
componentes y procesos que participan en la replicación.
Publicador
El publicador es una instancia de base de datos que permite que los datos estén
disponibles para otras ubicaciones a través de la replicación. El publicador puede
tener una o más publicaciones, cada una de las cuales representa un conjunto de
objetos y datos relacionados lógicamente para replicar.
Distribuidor
El distribuidor es una instancia de base de datos que funciona como almacén
para datos específicos de replicación asociados con uno o más publicadores.
Cada publicador está asociado con una sola base de datos (conocida como la
base de datos de distribución) en el distribuidor. La base de datos de distribución
almacena los datos de estado de la replicación, metadatos acerca de la
publicación y, en algunos casos, funciona como cola para los datos que se
transfieren del publicador a los suscriptores. En muchos casos, una sola instancia
de servidor de bases de datos funciona como publicador y como distribuidor Esto
se conoce como un distribuidor local. Cuando el publicador y el distribuidor se
configuran en instancias distintas del servidor de bases de datos, el distribuidor
se denomina un distribuidor remoto.
Suscriptores
Un suscriptor es una instancia de base de datos que recibe datos replicados. Un
suscriptor puede recibir datos de varios publicadores y publicaciones. En función
del tipo de replicación elegida, el suscriptor también puede devolver los datos
modificados al publicador o volver a publicar los datos en otros suscriptores.
Artículo
Un artículo identifica un objeto de base de datos incluido en una publicación. Una
publicación puede contener diferentes tipos de artículos, como tablas, vistas,
procedimientos almacenados y otros objetos. Cuando las tablas se publican
como artículos, se pueden usar filtros para restringir las columnas y filas de
datos que se envían a los suscriptores.
Publicación
Una publicación es un conjunto de uno o más artículos de una base de datos. La
agrupación de varios artículos en una publicación permite especificar más
fácilmente un conjunto de objetos y datos de bases de datos relacionados
lógicamente, que se replican como una unidad.
Suscripción
Una suscripción es una solicitud de una copia de una publicación que se entrega
a un suscriptor. La suscripción define qué publicación se recibirá, dónde y
cuándo. Hay dos tipos de suscripciones: de inserción y de extracción. Para
obtener más información acerca de las suscripciones de inserción y de
¿?extracción.
Información general sobre los agentes de
replicación
La replicación utiliza varios programas independientes, llamados agentes, para realizar
las tareas asociadas con el seguimiento de los cambios y la distribución de los datos. De
forma predeterminada, los agentes de replicación se ejecutan como trabajos
programados en el Agente SQL Server y es necesario que se esté ejecutando el Agente
SQL Server para que puedan ejecutarse los trabajos. Los agentes de replicación también
se pueden ejecutar desde la línea de comandos y en aplicaciones que utilizan Objetos de
administración de replicación (RMO). Los agentes de replicación se pueden administrar
desde el Monitor de replicación de SQL Server y SQL Server Management Studio.
Agente SQL Server
El Agente SQL Server aloja y programa los agentes utilizados en la replicación, y
proporciona una manera sencilla de ejecutar los agentes de replicación. El Agente SQL
Server también controla y supervisa las operaciones fuera de la replicación. Para obtener
más información.
Importante
De manera predeterminada, el servicio del Agente SQL Server está deshabilitado cuando se instala
SQL Server, a menos que se elija explícitamente iniciar el servicio automáticamente durante la
instalación.
Agente de instantáneas
Por lo general, el Agente de instantáneas se utiliza con todos los tipos de replicación.
Prepara esquemas y archivos de datos iniciales de tablas publicadas y otros objetos,
almacena los archivos de instantáneas y registra la información acerca del estado de
sincronización en la base de datos de distribución. El Agente de instantáneas se ejecuta
en el distribuidor.
Agente de registro del LOG
El Agente de registro del LOG se utiliza en la replicación transaccional. Mueve las
transacciones marcadas para replicación desde el registro de transacciones del publicador
a la base de datos de distribución. Cada base de datos publicada con la replicación
transaccional tiene su propio Agente de registro del LOG, que se ejecuta en el distribuidor
y se conecta al publicador (el distribuidor puede estar en el mismo equipo que el
publicador).
Agente de distribución
El Agente de distribución se utiliza en la replicación de instantáneas y transaccional.
Aplica la instantánea inicial al suscriptor y mueve las transacciones contenidas en la base
de datos de distribución a los suscriptores. El Agente de distribución se ejecuta en el
distribuidor, para las suscripciones de inserción, o en el suscriptor, para las suscripciones
de extracción.
Agente de mezcla
El Agente de mezcla se utiliza con la replicación de mezcla. Aplica la instantánea inicial al
suscriptor, y transfiere y reconcilia los cambios incrementales de datos que se producen.
Cada suscripción de mezcla tiene su propio Agente de mezcla, que se conecta con el
publicador y con el suscriptor, y los actualiza. El Agente de mezcla se ejecuta en el
distribuidor, para las suscripciones de inserción, o en el suscriptor, para las suscripciones
de extracción. De forma predeterminada, el Agente de mezcla carga los cambios del
suscriptor al publicador y, a continuación, descarga los cambios del publicador al
suscriptor.
Agente de lectura de cola
El Agente de lectura de cola se utiliza con la replicación transaccional y la opción de
actualización en cola. El agente se ejecuta en el distribuidor y transfiere los cambios
realizados en el suscriptor de vuelta al publicador. A diferencia del Agente de distribución
y del Agente de mezcla, sólo existe una instancia del Agente de lectura de cola para
todos los publicadores y las publicaciones de una determinada base de datos.
Trabajos de mantenimiento de la replicación
La replicación incluye varios trabajos de mantenimiento que realizan operaciones de
mantenimiento programadas y a petición.
Como configurar Replicación usando SQL
Server Management Studio
Introducción
Usted puede utilizar SQL Server Management Studio para configurar y
administrar replicación en SQL Server 2005. La interface de usuario contiene
nuevos asistentes para la configuración de la replicación y nuevas opciones en
los cuadros de dialogo de Properties.
Creando una publicación
Utilice el siguiente procedimiento para crear una publicación usando el asistente
de New Publication en SQL Server Management Studio:
1. Conecte el publisher en Object Explorer, expanda el nodo server y el nodo
Replication.
2. Haga botón derecho en Publications, y luego clic en New Publication.
3. Utilice el asistente New Publication para configurar lo siguiente:
a. Base de datos de Publicación.
b. Tipo de publicación. Elija desde:
• Snapshot publication
• Transactional publication
• Transactional publication with updateable subscriptions
hierarchical or peer-to-peer topology)
• Merge publication
c. Cuentas de seguridad de Replication agent.
d. Artículos a publicar.
e. Filtros a Artículos.
f. Snapshot agent schedule.
Creando una suscripción
Utilice el siguiente procedimiento para crear una suscripción usando el asistente
New Subscription en SQL Server Management Studio:
1. Conecte el suscriber en Object Explorer, expanda el nodo server y el nodo
Replication.
2. Haga botón derecho en Subscriptions, y luego click en New Subscriptions.
3. Utilice el asistente New Subscription para configurar lo siguiente:
a. Publisher y publicación.
b. Tipo de suscripción. Elegir entre:
• Push subscription
• Pull subscription
c. Base de datos del Subscriber y suscripción.
d. Cuentas de seguridad de Replication agent.
e. Synchronization agent schedule.
f. Horario de inicialización.
Sincronizando una suscripcion
Utilice el siguiente procedimiento para una sincronización de una suscripción pull
o push desde el subscriber usando SQL Server Management Studio:
1. Conecte el subscriber en Object Explorer y expanda el nodo server,
El nodo Replication, y el nodo Subscriptions.
2. Haga botón derecho en la suscripción que desea sincronizar, y haga click
En Synchronize and Monitor.
3. En el cuadro de dialogo Synchronize and Monitor, haga clic en Start.
Descargar