You are on page 1of 10

6/11/2014

Gua para crear rplica de mezcla con filtros dinmicos parametrizados en SQL SERVER - Monografias.com
Agregar a favoritos

Ayuda

Portugus

Ingles

Regstrese! | Iniciar sesin

Busqueda avanzada

Monografas

Nuevas

Publicar

Blogs

Foros

Buscar
Descargar

Monografias.com > Computacion

Imprimir

Comentar

Ver trabajos relacionados

Gua para crear rplica de mezcla con filtros dinmicos


parametrizados en SQL SERVER
Enviado por Dahiana Torres Pablos

Twittear

Me gusta

Descargar Convertir
Convierte Cualquier Fichero a PDF- Word, Jpeg - Descarga 100%
Gratis!

1.
2.
3.
4.

Introduccin
Gua de la prctica
Pasos para crear la suscripcin
Conclusiones

Introduccin
Una rplica de mezcla es usada cuando el intercambio de datos entre servidores es bidireccional, o sea, tanto el publicador (servidor donde estn los
datos a replicar) como el suscriptor (servidor que recibe los datos) pueden actualizar los datos publicados y los mismos son cambiados peridicamente.
Las tablas o artculos con filtros parametrizados permiten realizar particiones de los datos a replicar, lo cual puede eliminar la posibilidad de cualquier
conflicto entre los servidores de suscripcin y el publicador, siendo visibles las actualizaciones de los datos para el suscriptor en cuestin.
Las aplicaciones para puntos de venta son un ejemplo de uso de rplica de mezcla con filtros parametrizados. Para este tipo de problema es importante
lograr un dinamismo en la configuracin de la rplica ya que de lo contrario por cada punto de venta habra que crear una suscripcin. Esto se logra a
travs de la funcin HOST_NAME().
En la presente gua solo se tendrn en cuenta algunas opciones que propone la configuracin de la rplica de mezcla dado el objetivo de la aplicacin
donde fue utilizada la misma. Para realizar la rplica fue utilizado SQL Server 2008 R2.
La base de datos escogida SalesDB es un ejemplo ilustrativo. La misma contiene la tabla SalesPoints la cual ser replicada ya que contiene los datos para
cada punto de venta.

Gua de la prctica
PASOS PARA CREAR LA PUBLICACIN:
1. Si el publicador tiene activado algn antivirus debe deshabilitarlo mientras se configura la rplica, esto en algunos casos evita conflictos en la
sincronizacin.
2. En este caso el publicador es el mismo que el distribuidor (servidor que hace de puente para las suscripciones), el distribuidor puede ser
configurado, pero debe tener cuidado con las publicaciones creadas anteriormente en el mismo servidor.
3. En el entorno del SQL Server Management Studio (SSMS) del publicador, hacer clic derecho en "Local Publications", y seleccionar "New
Publication".

4. Marcar la base de datos que se va a replicar.


5. Escoger el tipo de publicacin: "Merge publication"

http://www.monografias.com/trabajos97/guia-crear-replica-mezcla-filtros-dinamicos-parametrizados-sql-server/guia-crear-replica-mezcla-filtros-dina

1/10

6/11/2014

Gua para crear rplica de mezcla con filtros dinmicos parametrizados en SQL SERVER - Monografias.com

6. Escoger las versiones de compatibilidad para la rplica segn versiones de SQL de los servidores de suscripcin.

7. Escoger la(s) tabla(s) ("articles") que se quieran publicar.

8. Despus de seleccionar la tabla, clic en "Article Properties" y escoger "Set Properties of Highlighted Table Article" o la segunda opcin si quiere
poner la misma propiedad para todas las tablas. Ms adelante se ver cmo utilizando la clusula WHERE se puede seleccionar los datos a publicar
dentro de una tabla, lo cual crea particiones de la misma que la rplica maneja segn si una particin va dirigida a mltiples suscriptores
("overlapping") o si va dirigida a un solo suscriptor ("nonoverlapping"). En la opcin "Partition Options" puede seleccionar esta opcin, para
nuestro caso es "Nonoverlapping, single subscription".
Ver otras propiedades como "Action if name is in use" y "Synchronization direction", as como los permisos para insertar ("Insert"), borrar ("Delete")

http://www.monografias.com/trabajos97/guia-crear-replica-mezcla-filtros-dinamicos-parametrizados-sql-server/guia-crear-replica-mezcla-filtros-dina

2/10

6/11/2014

Gua para crear rplica de mezcla con filtros dinmicos parametrizados en SQL SERVER - Monografias.com
actualizar ("Update") para cambiar el estado de la mezcla. Esto es porque el Agente de Mezcla ("Merge Agent") tiene acceso a los datos publicados usando
el Publication Access List (PAL), si quisiera que otro usuario de servidor SQL tuviera estos permisos basta con agregarlos a esta lista.

9. Clic en la pestaa "Resolver" y marcar la opcin que aparece para resolver los conflictos interactivamente durante la sincronizacin entre el
publicador y el suscriptor.
10. Dado que la rplica de mezcla utiliza un UNIQUEIDENTIFIER para manejar las filas, se agregar una nueva columna a las tablas a replicar
llamada "rowguid" de tipo "uniqueidentifier".
11. En este paso se agregarn los filtros dinmicos para replicar las filas segn el suscriptor de destino. Seleccionar "Add Filter" y lo siguiente ser
escoger, en la seccin 1. La tabla a la cual aplicarle el filtro; seccin 2. Construir el filtro especificando la columna de la tabla y haciendo uso de la
clusula WHERE (se puede usar las mismas clusulas definidas en SQL); seccin 3. Se chequear la opcin "A row will only go to one subscription",
la misma debe estar marcada por defecto debido a que se escogi la propiedad como "Nonoverlapping, single subscription".
Para construir el filtro puede utilizar clusulas definidas en la sintaxis de SQL como JOIN as como funciones predefinidas. En este caso es utilizada la
funcin HOST_NAME() que devuelve un nvarchar con el nombre del servidor de suscripcin. Para utilizar la misma en filtros de construccin ms
compleja puede utilizarse una conversin de esta funcin. Esta funcin permite el dinamismo del filtro, ya que en lugar de crear una publicacin con
filtro esttico para cada suscriptor, o sea para cada punto de venta, se crea una publicacin en la cual se puede identificar al suscriptor usando esta
funcin y comparando con un id dentro de la tabla de inters.

12. Seleccionar la planificacin del agente de instantnea ("Snapshot Agent"). El "Snapshot Agent" se ejecuta en el publicador y es el encargado de
captar instantneas o "snapshot" de cada tabla o particin a replicar. El mismo se puede cambiar cliqueando en el botn "Change
" si aparece
chequeada la segunda opcin. La frecuencia de ejecucin se puede decir cada cierto da, hora, minuto o segundo.
En esta misma ventana puede generar los "snapshots" inmediatamente o no. Como aconseja el mensaje que aparece, si piensa cambiar las propiedades
del "snapshot" no la cree inmediatamente. En este caso no la generaremos porque ms adelante cambiaremos la direccin de la carpeta donde se
guardarn los "snapshots".

http://www.monografias.com/trabajos97/guia-crear-replica-mezcla-filtros-dinamicos-parametrizados-sql-server/guia-crear-replica-mezcla-filtros-dina

3/10

6/11/2014

Gua para crear rplica de mezcla con filtros dinmicos parametrizados en SQL SERVER - Monografias.com

13. Especifique la configuracin relacionada con la seguridad para el "Snapshot Agent". En esta parte se especificar la cuenta de usuario a usar
para que sean creados los "snapshots" y la cuenta de SQL necesaria para acceder a la base de datos. Otra opcin es utilizar una cuenta del SQL Agent
que debe estar activo en todo momento (chequear si es preciso).

14. Seleccionar "Create the publication".


15. Identificar la publicacin con un nombre y seleccionar finalizar.

16. Cerciorarse que la creacin de la publicacin no tuvo problema alguno


Modificaremos algunas propiedades de la publicacin:

http://www.monografias.com/trabajos97/guia-crear-replica-mezcla-filtros-dinamicos-parametrizados-sql-server/guia-crear-replica-mezcla-filtros-dina

4/10

6/11/2014

Gua para crear rplica de mezcla con filtros dinmicos parametrizados en SQL SERVER - Monografias.com
Al hacer clic derecho sobre la publicacin en el SSMS, seleccione "Properties" y en el panel de la izquierda vaya a la opcin "Subscription Options".
Cerciorase que ambas opciones poseen los valores indicados como se indica en la siguiente imagen.

En la opcin "Data Partitions" es donde se predefinen los identificadores de las particiones. El valor otorgado a una particin en el "HOST_NAME
value", ser el identificador que tendr el suscriptor, devolviendo el mismo en cada llamada a "HOST_NAME()" mediante los filtros. Esto permite
la creacin dinmica de los "snapshots" para cada una de las particiones.
En la siguiente imagen se predefine un suscriptor cuyo valor es 22. (Recordar que este valor es de tipo nvarchar). Adems puede editar el horario de
inicializacin de la sincronizacin del suscriptor con el publicador usando el botn "Edit".

En la opcin "Snapshot" aparecer para cambiar la direccin de la carpeta donde son guardados los archivos "snapshots". En la seccin "Location of
snapshot files", la carpeta por defecto que aparecer es la especificada por el distribuidor, donde se almacenan todos los "snapshots" de las
publicaciones creadas siendo el distribuidor el mismo que el publicador. Esta carpeta puede ser cambiada seleccionando "Put files in the following
folder". Mediante esta opcin los "snapshots" de esta publicacin sern guardadas en esa carpeta sin modificar las carpetas de almacenamiento
las dems publicaciones. Para cambiar esta ltima vea "Distributor Properties".

http://www.monografias.com/trabajos97/guia-crear-replica-mezcla-filtros-dinamicos-parametrizados-sql-server/guia-crear-replica-mezcla-filtros-dina

5/10

6/11/2014

Gua para crear rplica de mezcla con filtros dinmicos parametrizados en SQL SERVER - Monografias.com

Una vez realizados todas las modificaciones a las propiedades de la publicacin, puede iniciar el "Snapshot Agent" para que cree los "snapshots"
siguiendo los cambios. Para ello al hacer clic derecho sobre la publicacin en el SSMS, seleccione "View Snapshot Agent Status". Utilizando el botn
"Start" comienza la creacin de los "snapshots" y el botn "Monitor" es utilizado para visualizar el comportamiento del proceso de la rplica de los
datos.

Pasos para crear la suscripcin


Corresponde crear las suscripciones a la publicacin realizada para que los datos puedan ser replicados correctamente a cada suscriptor, en este caso
cada suscriptor es un punto de venta.
1. En "Local Publication", hacer clic derecho sobre el nombre de la publicacin ("SalesDataPublication") y seleccione "New Subscription".

2. A continuacin escoger la publicacin a la cual se va a suscribir. Si el publicador no aparece por defecto, lo puede escoger, as como tambin la
publicacin a la cual se quiere suscribir.

http://www.monografias.com/trabajos97/guia-crear-replica-mezcla-filtros-dinamicos-parametrizados-sql-server/guia-crear-replica-mezcla-filtros-dina

6/10

6/11/2014

Gua para crear rplica de mezcla con filtros dinmicos parametrizados en SQL SERVER - Monografias.com

3. Escoger el tipo de suscripcin, o sea, si es "push subscriptions" o "pull subscriptions". La diferencia radica en que para el primer caso todos los
agentes de mezcla se ejecutarn en el distribuidor (que es el mismo publicador para esta configuracin) y en el segundo caso el suscriptor ejecutar
su agente de mezcla. Cada uno tiene sus objetivos y su seleccin vara dependiendo del problema.

4. Escoger el servidor de suscripcin y la base de datos de suscripcin, si no aparece listado seleccione "Add SQL Server Subscriber
", debe
suministrar una cuenta de SQL . Para este ejemplo la suscripcin se realiz desde otro servidor y la base de datos[1]se nombra SalesDBPoint22.

5. Especificar las opciones de seguridad tanto de la conexin al publicador como al suscriptor. En este caso se utiliz el "SQL Server Agent service
account".

http://www.monografias.com/trabajos97/guia-crear-replica-mezcla-filtros-dinamicos-parametrizados-sql-server/guia-crear-replica-mezcla-filtros-dina

7/10

6/11/2014

Gua para crear rplica de mezcla con filtros dinmicos parametrizados en SQL SERVER - Monografias.com

6. Lo siguiente es especificar el horario de sincronizacin al publicador. Escogiendo la opcin "", puede definir la frecuencia, en das, horas o
minutos de la misma.

7. Escoger el modo de inicializar la suscripcin segn el "snapshot" de los datos publicados. Si no quiere inicializarlo hasta no tener completada la
configuracin del snapshot, puede desmarcar la opcin "Initialize".

8. Seleccionar el tipo de suscripcin para la resolucin de conflictos. En la rplica de mezcla la suscripciones pueden ser "Server" o "Client". La
suscripcin de tipo "Server" se utiliza para establecer una prioridad a cada suscriptor, asignndole un valor comprendido entre 0.00 y 99.99. La
suscripcin de tipo "Client" se establce cuando se quiere que todos los suscriptores tengan la misma prioridad, el valor establecido por defecto es
0.00. Para ver ms sobre el tema consulte http://technet.microsoft.com/en-us/library/ms151749%28v=sql.105%29.aspx.

http://www.monografias.com/trabajos97/guia-crear-replica-mezcla-filtros-dinamicos-parametrizados-sql-server/guia-crear-replica-mezcla-filtros-dina

8/10

6/11/2014

Gua para crear rplica de mezcla con filtros dinmicos parametrizados en SQL SERVER - Monografias.com

9. En la siguiente ventana aparecer para sobreescribir el valor de HOST_NAME(), que por defecto es el nombre del servidor de suscripcin. Se
escribir 22, que ya fue establecido en nuestro caso para el punto de venta.

10. Escoger la opcin "Create the subscription" y puedes finalizar la suscripcin para su creacin.

http://www.monografias.com/trabajos97/guia-crear-replica-mezcla-filtros-dinamicos-parametrizados-sql-server/guia-crear-replica-mezcla-filtros-dina

9/10

6/11/2014

Gua para crear rplica de mezcla con filtros dinmicos parametrizados en SQL SERVER - Monografias.com

Ahora puede chequear insertando datos en la base de datos de rplica y los mismos son replicados segn el valor del HOST_NAME().

Conclusiones
La rplica de mezcla con filtro es utilizada en ambientes cliente-servidor donde es importante tener una correcta distribucin de los datos tratando que
no existan conflictos entre las particiones de datos a replicar y que la comunicacin sea continua en ambos sentidos. Esto depende en gran medida del
problema en cuestin y de la configuracin que se le d a la rplica.
Al finalizar la prctica pudimos comprobar que, utilizando datos reales, la configuracin cumpli los objetivos para el cual fue creada esta rplica y que
tanto el cliente como el servidor podan actualizar sus datos de forma peridica y la visualizacin de los mismos era efectiva en ambas terminales.
Igualmente se prob su buen funcionamiento para ms de un cliente.

Autor:
Lic. Dahiana Torres Pablos[2]
Lic. Marcel Domnguez Domnguez1
Empresa de Tecnologas de la Informacin y la Automtica. Departamento de Aplicaciones.
Cuba, 2013
[1] La base de datos de la suscripci?n debe tener el mismo dise?o de la base de datos de la publicaci?n.
[2]

Comentarios
Para dejar un comentario, regstrese gratis o si ya est registrado, inicie sesin.

Trabajos relacionados
Investigar un tema como el que se presenta pudiera parecer ante los ojos
de los "expertos en informtica" una tarea muy ...

Anlisis a las causas y consecuencias de los ataques de hackers


en los computadores del IUTA
Inteligencia artificialLa inteligencia: Diferentes teoras y definiciones.
Inteligencias mltiples. Futuro de la IA. El termino "inteligencia a...

Sistemas distribuidosDefinicin. Caractersticas. Evolucin. ClienteServidor. Protocolo. Middleware. Objetos distribuidos. Base de datos ist...
Ver mas trabajos de Computacion

Nota al lector: es posible que esta pgina no contenga todos los componentes del trabajo original (pies de pgina, avanzadas formulas matemticas, esquemas o tablas complejas, etc.). Recuerde que
para ver el trabajo en su versin original completa, puede descargarlo desde el men superior.
Todos los documentos disponibles en este sitio expresan los puntos de vista de sus respectivos autores y no de Monografias.com. El objetivo de Monografias.com es poner el conocimiento a disposicin
de toda su comunidad. Queda bajo la responsabilidad de cada lector el eventual uso que se le de a esta informacin. Asimismo, es obligatoria la cita del autor del contenido y de Monografias.com como
fuentes de informacin.

El Centro de Tesis, Documentos, Publicaciones y Recursos Educativos ms amplio de la Red.


Trminos y Condiciones | Haga publicidad en Monografas.com | Contctenos | Blog Institucional
Monografias.com S.A.

http://www.monografias.com/trabajos97/guia-crear-replica-mezcla-filtros-dinamicos-parametrizados-sql-server/guia-crear-replica-mezcla-filtros-dina

10/10

You might also like