Documente Academic
Documente Profesional
Documente Cultură
Replicacin de Datos La replicacin es un conjunto de tecnologas destinadas a la copia y distribucin de datos y objetos de base de datos desde una base de datos a otra, con el objetivo de sincronizar ambas bases de datos y mantener su coherencia. La replicacin permite distribuir datos entre diferentes ubicaciones y entre usuarios remotos o mviles mediante redes locales y de rea extensa, conexiones de acceso telefnico, conexiones inalmbricas e Internet.
Duplicacin de mezcla Duplicacin de instantneas Duplicacin transaccional Suscripciones actualizables Duplicacin de instantneas con actualizacin de suscriptores Duplicacin transaccional con actualizacin de suscriptores Transacciones distribuidas
La consistencia transaccional se pierde aqu, ya que en varios sitios podran estar actualizando datos en distintos momentos. Un sitio especfico no espera a que se enven sus actualizaciones a todos los dems sitios antes de continuar con su trabajo. En otras palabras, se garantiza que cada sitio va a converger con los mismos conjuntos de resultados, pero no necesariamente al mismo tiempo. La duplicacin de mezclas algunas veces puede generar conflictos. Por ejemplo, el sitio A realiza algunas modificaciones al registro 27. El sitio B tambin realiza modificaciones al registro 27. Ambos envan sus versiones de datos de vuelta al servidor de publicacin. Ahora este servidor ve que ambos sitios realizaron modificaciones al registro 27.
Figura 3.2 Los registro de convergidos se enva de vuelta a todos los suscriptores.
La duplicacin de mezcla es ms adecuada para los entornos en los que se minimizan las probabilidades de que ocurran estos conflictos. Por ejemplo, los sitios que tienden a modificar sus registros solamente (lo que se indica mediante ID de ubicacin de cada registro), pero no necesitan la informacin de todas las dems ubicaciones, son buenos candidatos para la duplicacin de mezcla.
Figura 3.3 Se envan instantneas de todo el conjunto de datos a cada suscriptor. Las modificaciones en los datos pueden ocurrir slo en el servidor de publicacin.
Los servidores OLAP son excelentes candidatos para la duplicacin de
instantneas. Las consultas ad hoc que aplican los administradores MIS (Sistemas de Informacin Administrativa) en los datos son por lo general de slo lectura, y los datos que tienen varias horas o incluso varios das de antigedad no afectan estas consulta.
Figura 3.4
En la duplicacin transaccional, pueden hacerse modificaciones slo en el publicador. Despus, las modificaciones (transacciones) se aplican en cada suscriptor.
Este tipo de duplicacin permite un nivel medio de autonoma. El suscriptor debe tratar los datos duplicados como de slo lectura. Este punto es importante, ya que las modificaciones realizadas en los datos duplicados tal vez no permitan que se realicen las futuras transacciones duplicadas. Suponga que modifica el campo del pas de USA a Corea en la tabla proveedores del suscriptor. Si despus ejecuta una transaccin en el publicador que actualice todos los proveedores de USA, su nuevo registro de Corea no recibir la actualizacin que los dems suscriptores recibieron. Esto ocasiona problemas de consistencia en su base de datos, por lo que debe evitarse. Por lo general, en este tipo de duplicacin se implica tambin un nivel medio de latencia. El suscriptor no tiene que estar en contacto en todo momento con el publicador, pero las sincronizaciones son tiles, y la cantidad de datos que se mueven es relativamente pequea. Debe recordar que la duplicacin de instantneas debe mover todos los datos de publicacin del publicador al suscriptor (se haya modificado o no). En la duplicacin transaccional, slo las transacciones confirmadas se envan a los suscriptores. Este tipo de duplicacin se utiliza principalmente en SQL Server 6.5, en donde no se cuenta con la opcin de utilizar ningn tipo de duplicacin de mezcla.
La duplicacin transaccional es bastante til en los escenarios en lo que los suscriptores pueden tratar a sus datos como de slo lectura, pero necesitan modificaciones en los datos con una mnima cantidad de latencia. Un excelente ejemplo de duplicacin transaccional sera un sistema de procesamiento/distribucin de pedidos. En este tipo de escenario, puede haber varios sitios distintos de publicacin recibiendo pedidos. Estos pedidos se duplican en un almacn de distribucin central en donde se crean vales de salida y los pedidos se completan y se envan. El almacn, que puede tratar a los datos como slo lectura, necesita nueva informacin en forma oportuna.
-----------------------------------------------------------------------------------------3.2 Tipos de Replicacin 3.2.1 Instantnea 3.2.1 Transaccional 3.2.1 Transaccional Actualizable La replicacin 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 creacin de informes, la integracin de datos procedentes de varios sitios, la integracin de datos heterogneos, y la descarga del procesamiento por lotes. 3.2.1 De Mezcla La replicacin de mezcla se ha diseado principalmente para las aplicaciones mviles o de servidores distribuidos que pueden encontrarse con conflictos de datos. Los escenarios ms frecuentes son: el intercambio de datos con usuarios mviles, las aplicaciones de punto de venta (POS) a consumidores, y la integracin de datos de varios sitios. La replicacin de datos se usa para proporcionar el conjunto de datos inicial para la replicacin transaccional y de mezcla; tambin se puede usar cuando est indicada una actualizacin completa de los datos.
Con estos tres tipos de replicacin, SQL Server proporciona un sistema eficaz y flexible para la sincronizacin de datos en toda la organizacin.
El tipo de replicacin que se elige para una aplicacin depende de muchos factores, como el entorno fsico de la replicacin, el tipo y la cantidad de datos que se desean replicar y si los datos se actualizan en el suscriptor. El entorno fsico incluye el nmero y la ubicacin de los equipos que participan en la replicacin, y si estos equipos son clientes (estaciones de trabajo, equipos porttiles o dispositivos de mano) o servidores. Por lo general, cada tipo de replicacin comienza con una sincronizacin inicial de los objetos publicados entre el publicador y los suscriptores. Esta sincronizacin inicial puede llevarse a cabo mediante la replicacin con una instantnea, que es una copia de todos los objetos y datos especificados por una publicacin. Una vez creada la instantnea, se enva a los suscriptores. Para algunas aplicaciones, la replicacin de instantneas 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 tambin requieren que los cambios vuelvan del suscriptor al publicador. La replicacin transaccional y la replicacin de mezcla proporcionan opciones para estos tipos de aplicaciones. En la replicacin de instantneas, no se realiza un seguimiento de los cambios de datos; cada vez que se aplica una instantnea, sta sobrescribe completamente los datos existentes. La replicacin transaccional realiza un seguimiento de los cambios a travs del registro de transacciones de SQL Server y la replicacin de mezcla realiza un seguimiento de los cambios a travs de desencadenadores y tablas de metadatos
estn representadas en esta metfora, en particular, la posibilidad de que un suscriptor realice actualizaciones y de que un publicador enve cambios incrementales a los artculos de una publicacin. Hay tres tipos de replicacin: replicacin transaccional, rplica de mezcla y replicacin de instantneas. Todos estos tipos dependen de varios programas independientes, denominados agentes, que realizan las tareas asociadas con el seguimiento de los cambios y la distribucin de los datos.
El publicador (editor) de una revista produce una o ms publicaciones. Una publicacin contiene artculos. El publicador distribuye la revista directamente o a travs de un
distribuidor. Los suscriptores reciben las publicaciones a las que se han suscrito.
Topologia Una topologa de replicacin define la relacin entre los servidores y las copias de los datos, y aclara la lgica que determina cmo fluyen los datos entre los servidores. Hay varios procesos de replicacin (denominados agentes) que son responsables de copiar y mover los datos entre el publicador y los suscriptores. En la siguiente ilustracin se muestra informacin general acerca de los componentes y procesos que participan en la replicacin.
Publicador El publicador es una instancia de base de datos que permite que los datos estn disponibles para otras ubicaciones a travs de la replicacin. El publicador puede tener una o ms publicaciones, cada una de las cuales representa un conjunto de objetos y datos relacionados lgicamente para replicar. Distribuidor
El distribuidor es una instancia de base de datos que funciona como almacn para datos especficos de replicacin asociados con uno o ms publicadores. Cada publicador est asociado con una sola base de datos (conocida como la base de datos de distribucin) en el distribuidor. La base de datos de distribucin almacena los datos de estado de la replicacin, metadatos acerca de la publicacin 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 funcin del tipo de replicacin elegida, el suscriptor tambin puede devolver los datos modificados al publicador o volver a publicar los datos en otros suscriptores. Artculo Un artculo identifica un objeto de base de datos incluido en una publicacin. Una publicacin puede contener diferentes tipos de artculos, como tablas, vistas, procedimientos almacenados y otros objetos. Cuando las tablas se publican como artculos, se pueden usar filtros para restringir las columnas y filas de datos que se envan a los suscriptores. Publicacin Una publicacin es un conjunto de uno o ms artculos de una base de datos. La agrupacin de varios artculos en una publicacin permite especificar ms fcilmente un conjunto de objetos y datos de bases de datos relacionados lgicamente, que se replican como una unidad. Suscripcin Una suscripcin es una solicitud de una copia de una publicacin que se entrega a un suscriptor. La suscripcin define qu publicacin se recibir, dnde y cundo. Hay dos tipos de suscripciones: de insercin y de extraccin. Para obtener ms informacin acerca de las suscripciones de insercin y de ?extraccin.
replicacin (RMO). Los agentes de replicacin se pueden administrar desde el Monitor de replicacin de SQL Server y SQL Server Management Studio.
Importante
De manera predeterminada, el servicio del Agente SQL Server est deshabilitado cuando se instala SQL Server, a menos que se elija explcitamente iniciar el servicio automticamente durante la instalacin.
Agente de instantneas
Por lo general, el Agente de instantneas se utiliza con todos los tipos de replicacin. Prepara esquemas y archivos de datos iniciales de tablas publicadas y otros objetos, almacena los archivos de instantneas y registra la informacin acerca del estado de sincronizacin en la base de datos de distribucin. El Agente de instantneas se ejecuta en el distribuidor.
Agente de distribucin
El Agente de distribucin se utiliza en la replicacin de instantneas y transaccional. Aplica la instantnea inicial al suscriptor y mueve las transacciones contenidas en la base de datos de distribucin a los suscriptores. El Agente de distribucin se ejecuta en el distribuidor, para las suscripciones de insercin, o en el suscriptor, para las suscripciones de extraccin.
Agente de mezcla
El Agente de mezcla se utiliza con la replicacin de mezcla. Aplica la instantnea inicial al suscriptor, y transfiere y reconcilia los cambios incrementales de datos que se producen. Cada suscripcin 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 insercin, o en el suscriptor, para las suscripciones de extraccin. De forma predeterminada, el Agente de mezcla carga los cambios del suscriptor al publicador y, a continuacin, descarga los cambios del publicador al suscriptor.
Introduccin
Usted puede utilizar SQL Server Management Studio para configurar y administrar replicacin en SQL Server 2005. La interface de usuario contiene nuevos asistentes para la configuracin de la replicacin y nuevas opciones en los cuadros de dialogo de Properties.
Creando una publicacin
Utilice el siguiente procedimiento para crear una publicacin 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 botn derecho en Publications, y luego clic en New Publication. 3. Utilice el asistente New Publication para configurar lo siguiente: a. Base de datos de Publicacin. b. Tipo de publicacin. 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. Artculos a publicar. e. Filtros a Artculos. f. Snapshot agent schedule.
Creando una suscripcin
Utilice el siguiente procedimiento para crear una suscripcin 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 botn derecho en Subscriptions, y luego click en New Subscriptions. 3. Utilice el asistente New Subscription para configurar lo siguiente: a. Publisher y publicacin. b. Tipo de suscripcin. Elegir entre: Push subscription Pull subscription c. Base de datos del Subscriber y suscripcin. d. Cuentas de seguridad de Replication agent. e. Synchronization agent schedule. f. Horario de inicializacin.
Sincronizando una suscripcion
Utilice el siguiente procedimiento para una sincronizacin de una suscripcin 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 botn derecho en la suscripcin que desea sincronizar, y haga click En Synchronize and Monitor. 3. En el cuadro de dialogo Synchronize and Monitor, haga clic en Start.