Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
Contenido Introduccin Introduccin a la distribucin de datos Introduccin a la duplicacin de SQL Server Agentes de duplicacin de SQL Server Tipos de duplicacin de SQL Server Modelos fsicos de duplicacin Procedimientos recomendados Prctica A: Implementacin de la duplicacin Repaso 1 2 8 15 17 23 31 32 47
La informacin contenida en este documento est sujeta a modificaciones sin previo aviso. A menos que se indique lo contrario, los nombres de las compaas, productos, personas, personajes y datos mencionados son ficticios, y no representan de ningn modo a ninguna persona, compaa, producto o acontecimiento real. Es responsabilidad del usuario el cumplimiento de todas las leyes de derechos de autor aplicables. Ninguna parte de este documento puede ser reproducida o transmitida de ninguna forma, ni por ningn medio, ya sea electrnico o mecnico, con ningn propsito, sin la previa autorizacin por escrito de Microsoft Corporation. Sin embargo, si su nico medio de acceso es electrnico, se le concede permiso para imprimir una copia. Microsoft puede ser titular de patentes, solicitudes de patentes, marcas, derechos de autor y otros derechos de propiedad intelectual sobre el contenido de este documento. El suministro de este documento no le otorga ninguna licencia sobre estas patentes, marcas, derechos de autor, u otros derechos de propiedad intelectual, a menos que ello se prevea en un contrato por escrito de licencia de Microsoft. 2000 Microsoft Corporation. Reservados todos los derechos. Microsoft, Active Directory, ActiveX, BackOffice, FrontPage, JScript, Outlook, PowerPoint, Visual Basic, Visual Studio, Windows, Windows Media y Windows NT son marcas comerciales registradas o marcas comerciales de Microsoft Corporation en los Estados Unidos o en otros pases. Otros nombres de productos y compaas mencionados aqu pueden ser marcas comerciales de sus respectivos propietarios.
Direccin de desarrollo: Xandria Eykel Direccin tcnica: Rick Byham Diseadores de instrucciones: Cheryl Hoople, Lin Joyner (Content Master Ltd), Marilyn McGill (Consultora independiente), Gordon Ritchie (Content Master Ltd.), Expertos en la materia: Karl Dehmer, Mike Galos, Graeme Malcolm (Content Master), Mary Neville (Content Master Ltd) y Carl Rabeler (Shadow Mountain Computers), Automatizacin del aula: Lorrin Smith-Bates Artista grfico: Kimberly Jackson (Consultora independiente) Director de edicin: Lynette Skinner Editor: Wendy Cleary Editor de copias: Bill Jones (S&T Consulting) Director de produccin: Miracle Davis Coordinadora de produccin: Jenny Boe Soporte de produccin: Ed Casper (S&T Consulting), Theano Petersen (S&T Consulting) Jefe de pruebas: Sid Benavente Prueba de los materiales del curso: Testing Testing 123 Director creativo, servicios Media/Sim: David Mahlmann Direccin de desarrollo de Web: Lisa Pease Especialista en creacin de CD: Julie Challenger Soporte en lnea: David Myka (S&T Consulting) Director de localizacin: Rick Terek Coordinador de operaciones: John Williams Soporte de fabricacin: Laura King, Kathy Hershey Director principal del producto, Administracin de publicacin: Bo Galford Director principal del producto, Administracin de bases de datos: Margo Crandall Jefe de grupo, Infraestructura del curso: David Bramble Jefe de grupo del producto, Desarrollo de contenido: Dean Murray Director general: Robert Stewart
iii
Material y preparacin
Esta seccin proporciona el material y las tareas de preparacin que se necesitan para impartir este mdulo.
Material necesario
Para impartir este mdulo necesita el archivo 2323A_11.ppt de Microsoft PowerPoint.
Tareas de preparacin
Para preparar este mdulo, deber: Leer todo el material del mismo. Completar la prctica. Practicar la presentacin. Revisar las notas de la aplicacin importantes, que se encuentran en el CD Material del instructor.
iv
Informacin de personalizacin
En esta seccin se identifican los requisitos de instalacin de las prcticas para un mdulo y los cambios de configuracin que ocurren en los equipos de los alumnos durante las mismas. Esta informacin pretende ayudarle a replicar o personalizar el material del curso de Microsoft Official Curriculum (MOC). Importante La prctica de este mdulo tambin depende de la configuracin del aula especificada en la seccin Informacin de personalizacin que se encuentra al final de la Gua de configuracin del aula para el curso 2323A, Administracin de una base de datos Microsoft SQL Server 2000.
Preparacin de la prctica
En la lista siguiente se describen los requisitos de instalacin para la prctica de este mdulo.
Requisito de instalacin 1
Para la prctica de este mdulo es necesario que est instalado SQL Server 2000 Enterprise Edition en los equipos de los alumnos. Para preparar los equipos de los alumnos de forma que cumplan este requisito, lleve a cabo el ejercicio 1 de la prctica A, Instalacin de SQL Server, en el mdulo 2, Planes para la instalacin de SQL Server, del curso 2323A, Administracin de una base de datos Microsoft SQL Server 2000.
Requisito de instalacin 2
La prctica de este mdulo requiere un equipo como publicador y distribuidor, y el otro como suscriptor. Para realizar la prctica, los alumnos trabajarn en grupos de dos. Para preparar los equipos de los alumnos de forma que cumplan estos requisitos, los alumnos deben realizar el ejercicio 1, en el que registrarn el servidor de otro alumno y agregarn el inicio de sesin de un compaero.
Introduccin
Objetivo del tema
Proporcionar una introduccin a los temas y objetivos del mdulo.
Introduccin a la distribucin de datos Introduccin a la duplicacin de SQL Server Agentes de duplicacin de SQL Server Tipos de duplicacin de SQL Server Modelos fsicos de duplicacin
Explicacin previa
******EL USO POR QUIENES NO SEAN INSTRUCTORES NO EST AUTORIZADO Y RESULTA ILEGAL***** Este mdulo le proporciona los conocimientos y la capacidad necesarios para facilitar a los usuarios el acceso a los datos de modo que puedan resolver problemas especficos de la empresa con Microsoft SQL Server 2000. Presenta la duplicacin como una solucin para la distribucin de datos y describe la necesidad de los datos distribuidos, diversas consideraciones relativas a la distribucin de datos y los mtodos de distribucin existentes. En el mdulo tambin se explica el modelo del publicador y el suscriptor, con artculos, publicaciones y suscripciones. Concluye con una explicacin de los agentes de duplicacin de SQL Server, los tipos de duplicacin de SQL Server y los modelos de duplicacin fsicos. Despus de completar este mdulo, el alumno ser capaz de: Enumerar los distintos mtodos para distribuir datos. Describir las caractersticas de duplicacin de SQL Server utilizando el modelo del publicador y el suscriptor. Describir los agentes de duplicacin de SQL Server. Explicar los tipos de duplicacin de SQL Server. Describir los modelos fsicos de duplicacin.
Explicacin previa
Necesidad de datos distribuidos Consideraciones para la distribucin de datos Mtodos de distribucin de datos
Esta seccin comienza con la descripcin de un entorno de datos distribuidos y trata los factores que influyen a la hora de decidir el modo de distribuir los datos.
******EL USO POR QUIENES NO SEAN INSTRUCTORES NO EST AUTORIZADO Y RESULTA ILEGAL***** Esta seccin comienza con la descripcin de un entorno de datos distribuidos y trata los factores que influyen a la hora de decidir el modo de distribuir los datos. A continuacin, la seccin presenta los distintos mtodos de distribucin.
Explicacin previa
Acercar los datos al usuario Permitir la independencia de los sitios Separar Procesamiento de transacciones con conexin Aplicaciones de lecturas intensivas Reducir los conflictos
En un entorno de datos distribuidos, varias copias de la misma informacin residen en varios servidores.
******EL USO POR QUIENES NO SEAN INSTRUCTORES NO EST AUTORIZADO Y RESULTA ILEGAL***** Un entorno de datos distribuidos es aqul donde puede haber varias copias de la misma informacin en distintos servidores. Este entorno puede existir por una evolucin no intencionada o por haberse creado deliberadamente. Cuando un entorno de datos distribuidos evoluciona, puede ser necesario implementar una solucin que lo haga ms manejable. Por ejemplo, en las primeras etapas del desarrollo de una compaa, habitualmente, las distintas divisiones tienen sus propios servidores independientes, que pueden utilizar sistemas de administracin de bases de datos (DBMS) diferentes. El reto estriba en hacer que el acceso a los datos de unos lugares desde otros sea ms sencillo. La distribucin a travs de la red permite poner los datos a disposicin de un gran nmero de usuarios, lo que reduce los conflictos durante las solicitudes. Sugerencia Al crear un entorno de datos distribuido, debe disear una solucin que consiga lo siguiente: Acercar los datos al usuario. Permitir que los sitios operen independientemente (de forma autnoma). Independizar el proceso de transacciones en lnea (OLTP, Online Transaction Processing) que realiza muchas actualizaciones de las aplicaciones que hacen muchas lecturas, como los puestos y los almacenes de datos. Reducir los conflictos.
Exponga el ejemplo de una compaa internacional que utiliza una aplicacin de seguimiento de ventas. Los datos se originan en un pas y se distribuyen a servidores de otros pases para que las consultas relacionadas con la toma de decisiones resulten ms eficientes.
Duplicacin Duplicacin
ACTUALIZACIN
Explicacin previa
Factores
ACTUALIZACIN ACTUALIZACIN
Hay dos estrategias principales para implementar la distribucin de los datos: la duplicacin y las transacciones distribuidas.
******EL USO POR QUIENES NO SEAN INSTRUCTORES NO EST AUTORIZADO Y RESULTA ILEGAL***** Hay dos estrategias principales para la distribucin de datos: la duplicacin y las transacciones distribuidas. En ambas, es posible mantener varias copias actualizadas de los datos. Tambin es posible disear un entorno distribuido que incluya aspectos de las dos estrategias. Duplicacin Duplica y distribuye copias recientes de los datos desde una base de datos de origen a una de destino, normalmente en otro servidor. Contempla el uso de sitios autnomos, lo que permite una mayor capacidad de ampliacin, pues estos sitios pueden estar conectados intermitentemente. Transacciones distribuidas Garantizan que todas las copias de los datos tienen los mismos valores en cada momento. Todos los servidores incluidos en una transaccin distribuida deben estar conectados y deben ser capaces de confirmar su parte de la transaccin. Si, por alguna razn, una transaccin no puede confirmarse correctamente en un sitio determinado, no podr confirmarse en el resto de los sitios. Esta estrategia es menos escalable que la duplicacin. Slo debe usarse si los datos deben estar sincronizados en todo momento y participa un nmero reducido de servidores.
Explicacin previa
Los distintos mtodos de distribuir datos ofrecen diversos grados de latencia transaccional.
******EL USO POR QUIENES NO SEAN INSTRUCTORES NO EST AUTORIZADO Y RESULTA ILEGAL***** Los distintos mtodos de distribucin de datos ofrecen diversos grados de latencia transaccional y autonoma. Es importante seleccionar el mtodo que mejor responda a cada necesidad y entorno particular.
Transacciones distribuidas
Este mtodo garantiza que todos los sitios tengan los mismos datos en todo momento. El Coordinador de transacciones distribuidas de Microsoft (MS DTC, Microsoft Distributed Transaction Coordinator) facilita el uso de transacciones distribuidas mediante un protocolo conocido como de confirmacin en dos fases, que garantiza que cada transaccin se completa al mismo tiempo en todos los sitios que participan en ella.
Duplicacin transaccional
En la duplicacin transaccional, slo se distribuyen los datos modificados. Se mantiene la secuencia de las transacciones. Slo hay un lugar donde se modifican los datos, por lo que no se producen conflictos.
Duplicacin de instantneas
Una imagen de todos los datos actuales, modificados y no modificados, del servidor de origen reemplaza los datos del servidor de destino, ya sea de forma peridica o a peticin.
Duplicacin de mezcla
Los distintos sitios modifican los datos de forma independiente y actualizan peridicamente el origen central. Pueden aparecer conflictos, pero es posible resolverlos. No se mantiene el orden de las transacciones, pues la duplicacin de mezcla slo sincroniza las copias.
Explicacin previa
******EL USO POR QUIENES NO SEAN INSTRUCTORES NO EST AUTORIZADO Y RESULTA ILEGAL***** Esta seccin presenta la duplicacin y describe el modelo del publicador y el suscriptor, que duplica datos como parte de una publicacin, duplica subconjuntos de datos y admite suscripciones.
Explicacin previa
******EL USO POR QUIENES NO SEAN INSTRUCTORES NO EST AUTORIZADO Y RESULTA ILEGAL***** En un entorno de publicacin, un publicador enva informacin y un suscriptor la recibe. La duplicacin utiliza el modelo del publicador y el suscriptor para distribuir los datos. Una instancia de SQL Server puede actuar como publicador, distribuidor, suscriptor o cualquier combinacin de los tres.
Publicador
El publicador mantiene las bases de datos de origen, facilita los datos para duplicarlos y detecta y enva los cambios de los datos publicados al distribuidor, que puede ser el mismo servidor u otro distinto.
Distribuidor
El distribuidor es un servidor que contiene la base de datos distribution y almacena los metadatos, los datos de historial y las transacciones. Su funcin vara en funcin del tipo de duplicacin implementado. Por lo general, el distribuidor tiene mayor participacin en la duplicacin de instantneas y la duplicacin transaccional que en la duplicacin de mezcla. Aunque el publicador y el distribuidor pueden estar en el mismo equipo, lo normal es que, por motivos de rendimiento en sitios de tamao considerable o actividad elevada, el distribuidor tenga su propio servidor. Tambin es posible que un servidor de distribucin d servicio a varios servidores de publicacin.
Suscriptor
El suscriptor alberga una copia de los datos y recibe los cambios de las publicaciones modificadas. Segn las opciones de duplicacin implementadas, puede permitirse que un suscriptor actualice los datos y los vuelva a duplicar en el publicador para que se dupliquen a su vez en otros suscriptores. En este caso se denomina suscriptor de actualizacin.
10
Publicaciones y artculos
Definir los trminos artculo y publicacin en el mbito de la duplicacin.
Publicacin La base de una suscripcin Una coleccin de uno o ms artculos Puede haber una o ms publicaciones por base de datos Artculo Datos globales o particin filtrada de una tabla u objeto de base de datos Parte de una publicacin
Explicacin previa
Siguiendo con el modelo del publicador y el suscriptor, los datos que se publican se conocen como artculo o publicacin.
******EL USO POR QUIENES NO SEAN INSTRUCTORES NO EST AUTORIZADO Y RESULTA ILEGAL***** Siguiendo con el modelo del publicador y el suscriptor, los datos que se publican se conocen como artculo o publicacin.
Publicacin
Cada publicacin consta de uno o varios artculos, que a su vez estn formados por datos u objetos de base de datos. Todos los artculos de una publicacin se sincronizan al mismo tiempo, por lo que se mantiene la integridad referencial. Las afirmaciones siguientes se refieren a una publicacin: Una publicacin es la base de una suscripcin. Una suscripcin a una publicacin incluye todos los artculos que sta contiene. Puede crear una o varias publicaciones desde cada base de datos de usuario.
Artculo
En la duplicacin, un artculo se compone de: Todas las particiones o las particiones filtradas de una tabla o de objetos de base de datos, como procedimientos almacenados, vistas y funciones definidas por el usuario. Parte de una publicacin. El Administrador corporativo de SQL Server permite suscribirse a una publicacin completa, pero no es posible suscribirse a un artculo determinado directamente.
11
Filtros de datos
Objetivo del tema
Mostrar ejemplos de filtros de datos.
Tabla A
A 1 2 3 4 5 6 7 B C D E
Filtro vertical
F 1 2 3 4 5 6 7 A B E
Explicacin previa
Es posible publicar subconjuntos de una tabla como un artculo. El filtrado ayuda a evitar conflictos de duplicacin cuando se permite a varios sitios actualizar los datos.
Publicador
Tabla B
A 1 2 3 4 5 6 7
Suscriptor
C D E F 2 3 6 A B C D E F
Filtro horizontal
******EL USO POR QUIENES NO SEAN INSTRUCTORES NO EST AUTORIZADO Y RESULTA ILEGAL***** Es posible publicar subconjuntos de una tabla como un artculo. Esto se conoce como filtrado de datos. El filtrado ayuda a evitar conflictos de duplicacin cuando se permite a varios sitios actualizar los datos. Las tablas se pueden filtrar vertical, horizontalmente o de ambas formas para crear particiones filtradas de datos. Cada copia de una tabla filtrada constituye un artculo distinto.
Filtro vertical
Un filtro vertical contiene un subconjunto de las columnas de la tabla. En el suscriptor slo aparecen las columnas duplicadas. Por ejemplo, puede usar un filtro vertical para publicar todas las columnas de la tabla Empleados, salvo la columna Salario.
Filtro horizontal
Un filtro horizontal contiene un subconjunto de las filas de una tabla. El suscriptor slo recibe el subconjunto de filas. Por ejemplo, puede publicar los registros de pedidos por regiones y duplicar en cada regin los resultados relativos a ella. Nota En la duplicacin de mezcla pueden utilizarse filtros dinmicos y de combinacin.
12
13
Suscripciones
Describir las distintas maneras de suscribirse a una publicacin.
Explicacin previa
Para suscribirse a una publicacin se puede usar una suscripcin de extraccin o una suscripcin de insercin.
n i c n c i a c tr c x a tr e x d e n ee d i c n ip i r c c p s u S uscri S
Publicacin cin B Publica Publicacin B
S u S s u c rr s ii c p c ii p c n nd e d n e ii s n e rr s c e ii c n n
Suscriptor ptor 33 Suscri Suscriptor
******EL USO POR QUIENES NO SEAN INSTRUCTORES NO EST AUTORIZADO Y RESULTA ILEGAL***** Sugerencia Para suscribirse a una publicacin se puede usar una suscripcin de extraccin o una suscripcin de insercin.
Seale que los publicadores y los suscriptores pueden encontrarse en tantas bases de datos y tantos servidores como se desee.
Suscripcin de insercin
Las suscripciones se pueden establecer al mismo tiempo que se crea o modifica una publicacin en el servidor de publicacin. En este caso se conocen como suscripciones de insercin. Este tipo de suscripciones permite centralizar la administracin de las suscripciones de las formas siguientes: Las suscripciones de insercin se definen en el publicador. Es posible definir mltiples suscriptores a la vez para cada publicacin. Normalmente, las suscripciones de insercin se utilizan en aplicaciones que deben enviar los cambios a los suscriptores siempre que se produzcan y lo antes posible. Las suscripciones de insercin son adecuadas cuando las publicaciones requieren un alto grado de seguridad y cuando la mayor carga del procesador del distribuidor no afecte a su rendimiento.
14
Suscripcin de extraccin
Tambin puede establecer una suscripcin desde el servidor suscriptor. Es lo que se conoce como suscripcin de extraccin. Las siguientes son caractersticas propias de las suscripciones de extraccin: El suscriptor inicia las suscripciones de extraccin.
Seale que los suscriptores heterogneos compatibles con OLEDB deben crear aplicaciones con un control de distribucin incrustado con el fin de admitir las suscripciones de extraccin.
Sugerencia
La publicacin se habilita para que admita suscripciones de extraccin y el suscriptor se registra para suscribir o bien la publicacin admite suscripciones annimas. Si se trata de un suscriptor heterogneo compatible con OLEDB, ser necesario crear una aplicacin con un control de distribucin incrustado con el fin de admitir suscripciones de extraccin. El administrador del sistema o el propietario de la base de datos del suscriptor decide qu publicaciones se reciben y cundo. Las suscripciones de extraccin son adecuadas para las publicaciones que requieran menor seguridad y que den servicio a un alto nmero de suscriptores, por ejemplo, a los que utilizan Internet.
15
Agente de instantneas
Explicacin previa
SQL Server cuenta con agentes para realizar distintos tipos de duplicacin.
******EL USO POR QUIENES NO SEAN INSTRUCTORES NO EST AUTORIZADO Y RESULTA ILEGAL***** SQL Server dispone de varios agentes para realizar los distintos tipos de duplicacin. Los agentes de duplicacin se implementan como trabajos del Agente SQL Server con programaciones personalizables.
Agente de instantneas
Este agente se utiliza en todo tipo de duplicacin y, por lo general, se ejecuta con el Agente SQL Server como distribuidor. Puede administrar el Agente de instantneas con el Administrador corporativo de SQL Server. El Agente de instantneas prepara los esquemas y los archivos de datos iniciales de las tablas publicadas. A continuacin, prepara los procedimientos almacenados y almacena los archivos de instantneas. Por ltimo, registra la informacin relativa a la sincronizacin en la base de datos distribution.
Agente de distribucin
Este agente se utiliza con duplicaciones de instantneas y transaccionales, y mueve los trabajos de instantneas y las transacciones que se encuentran en la base de datos distribution a los suscriptores. El Agente de distribucin suele ejecutarse en el distribuidor, para suscripciones de insercin, o en el suscriptor, para suscripciones de extraccin.
16
Agente de mezcla
Este agente, que se utiliza con duplicaciones de mezcla, aplica la instantnea inicial al suscriptor y mueve y concilia los cambios de datos incrementales que se producen. Cada suscripcin de mezcla tiene un Agente de mezcla propio que conecta el publicador y el suscriptor, y los actualiza. El Agente de mezcla se ejecuta en el distribuidor, para suscripciones de insercin, o en el suscriptor, para suscripciones de extraccin. Durante las mezclas en dos sentidos tpicas, carga los cambios desde el suscriptor al publicador y, a continuacin, descarga los cambios del publicador en el suscriptor. Para mover los cambios en un sentido, configure el tipo de intercambio del agente.
17
Explicacin previa
Introduccin a los tipos de duplicacin Consideraciones acerca del uso de la duplicacin de mezcla
Una vez configurados los servidores para la duplicacin, es posible iniciar el proceso de duplicacin.
******EL USO POR QUIENES NO SEAN INSTRUCTORES NO EST AUTORIZADO Y RESULTA ILEGAL***** Una vez configurados los servidores para la duplicacin, es posible iniciar el proceso de duplicacin. SQL Server ofrece tres tipos de duplicacin que utilizan un procesamiento similar, pero agentes y recursos diferentes.
18
Explicacin previa
Duplicacin de instantneas Transferencia masiva peridica de nuevas instantneas de datos Duplicacin transaccional Duplicacin de cambios incrementales Duplicacin de mezcla Los cambios autnomos de los datos duplicados se mezclan posteriormente
******EL USO POR QUIENES NO SEAN INSTRUCTORES NO EST AUTORIZADO Y RESULTA ILEGAL***** SQL Server ofrece tres tipos de duplicacin bsicos: de instantneas, transaccional y de mezcla. El tipo de duplicacin se refiere a cada publicacin individual. Es posible utilizar varios tipos dentro de una misma base de datos.
Duplicacin de instantneas
La duplicacin de instantneas distribuye datos con exactitud cuando aparece en un momento especfico y no supervisa las actualizaciones de los datos. Si se produce una sincronizacin, se genera la instantnea completa y se enva a los suscriptores. La duplicacin de instantneas es de utilidad en los entornos: Si los cambios son sustanciales pero poco frecuentes. Que requieren datos de slo lectura en los suscriptores. Que admiten una latencia alta, ya que, normalmente, los datos slo se actualizan peridicamente. Donde los suscriptores requieren autonoma de sitio. Es posible especificar la frecuencia con que el Agente de instantneas actualizar la instantnea y el Agente de distribucin aplica la instantnea a los suscriptores. De forma predeterminada, la carpeta de trabajo de distribucin para los archivos de instantneas se encuentra en el distribuidor, pero puede situarse en cualquier ubicacin, incluidos medios extrables como el CD-ROM. La duplicacin de instantneas tambin ofrece al suscriptor la opcin de actualizar los datos del publicador de forma inmediata, mediante el protocolo de confirmacin en dos fases en diferido, con actualizaciones en cola o con una combinacin de ambos mtodos.
19
Duplicacin transaccional
En la duplicacin transaccional, se duplican en el destino los cambios incrementales del origen. El Agente de lector del registro supervisa si se producen cambios en las tablas marcadas para duplicacin del registro de transacciones y copia las entradas del registro en la base de datos distribution del distribuidor. El Agente de distribucin aplica las transacciones duplicadas a los suscriptores. Normalmente, la duplicacin tiene lugar con una latencia mnima de los datos. La duplicacin transaccional puede ser til en un entorno en el que los suscriptores deban recibir las modificaciones de los datos en cuanto se produzcan, con la mnima latencia. Sugerencia Para que pueda comenzar la duplicacin transaccional, el Agente de instantnea toma una instantnea inicial y el Agente de distribucin la aplica. La duplicacin transaccional tambin ofrece al suscriptor la opcin de actualizar los datos del publicador de forma inmediata, mediante el protocolo de confirmacin en dos fases en diferido, con actualizaciones en cola o con una combinacin de ambos mtodos.
Duplicacin de mezcla
La duplicacin de mezcla permite a los sitios realizar cambios autnomos en los datos duplicados. Posteriormente, el Agente de mezcla combina los cambios de todos los sitios, ya sea peridicamente o a peticin, para obtener un resultado nico y uniforme. La duplicacin de mezcla no garantiza la coherencia transaccional, pero s el que todos los sitios converjan hacia el mismo conjunto de resultados. Puesto que se realizan actualizaciones en ms de un servidor, es posible que el publicador o varios suscriptores hayan actualizado los mismos datos. Como consecuencia, podran producirse conflictos al mezclar las actualizaciones. Para resolver los conflictos, la publicacin de mezcla incluye opciones predeterminadas y personalizadas que puede definir al configurarla. Si se produce un conflicto, el Agente de mezcla llama a una resolucin y determina qu datos se aceptarn y propagarn a otros sitios. La resolucin de conflictos basada en prioridades predeterminada le permitir asignar prioridades a suscriptores individuales o usar las asignaciones de prioridad predeterminadas cuando el publicador tome posesin de los cambios durante la sincronizacin. Una resolucin personalizada implementa datos especficos o reglas de lgica empresarial para solucionar el conflicto. Las resoluciones personalizadas pueden generarse como procedimientos almacenados o como objetos del Modelo de objetos componentes (COM, Component Object Model).
20
Recomiende el uso de la duplicacin de mezcla para aplicaciones autodivisibles, en las que no se esperan conflictos.
Sugerencia
La duplicacin de mezcla resulta til cuando: Varios suscriptores deben actualizar los datos en distintos momentos y propagar dichos cambios al publicador y a otros suscriptores. Los suscriptores deben recibir los datos, realizar cambios sin conexin y sincronizar posteriormente los cambios con el publicador y otros suscriptores. No se esperan demasiados conflictos al actualizar los datos en varios sitios (porque los datos se filtran en particiones y se publican a continuacin en distintos suscriptores o debido a los usos asignados a la aplicacin). Los conflictos que se produzcan podrn resolverse. Para que pueda comenzar la duplicacin de mezcla, el Agente de instantnea toma una instantnea inicial y el Agente de mezcla la aplica a los suscriptores.
21
Cambios en el esquema Identifica una columna exclusiva Agrega varias tablas de sistema Crea desencadenadores basados en las tablas del publicador y del suscriptor Solucin de conflictos Hace un seguimiento de las actualizaciones Compara valores y resuelve conflictos Duplica slo los datos sincronizados
Explicacin previa
******EL USO POR QUIENES NO SEAN INSTRUCTORES NO EST AUTORIZADO Y RESULTA ILEGAL***** La duplicacin de mezcla modifica el esquema para evitar o resolver conflictos.
Cambios en el esquema
Para que la duplicacin de mezcla funcione, SQL Server hace tres cambios importantes en el esquema de la base de datos de publicacin: SQL Server identifica una columna exclusiva en cada fila de la tabla que se duplica. Ello permite identificar la fila de forma nica en las diversas copias de la tabla. SQL Server agrega varias tablas de sistema para permitir el seguimiento de los datos, una sincronizacin eficiente y la deteccin, solucin y notificacin de los conflictos. SQL Server crea desencadenadores basados en las tablas del publicador y del suscriptor para hacer un seguimiento de los cambios de los datos de cada fila y, opcionalmente, de cada columna. Estos desencadenadores capturan los cambios realizados en la tabla y los registran en las tablas de mezcla del sistema. Gracias a que SQL Server admite varios desencadenadores del mismo tipo en la tabla base, los desencadenadores de la duplicacin de mezcla no interfieren con los que defina la aplicacin; es decir, los desencadenadores que define la aplicacin y los que define la duplicacin de mezcla pueden coexistir. Nota La duplicacin de mezcla no admite los filtros verticales.
22
Solucin de conflictos
Este tipo de duplicacin permite actualizaciones independientes y ello puede provocar conflictos. La duplicacin de mezcla afronta este problema mediante la solucin de conflictos basada en prioridades: El Agente de mezcla hace un seguimiento de todas las actualizaciones de una fila. El historial de cambios de una fila se conoce como linaje de la fila. Cuando el Agente de mezcla combina los cambios y encuentra una fila que podra tener mltiples cambios, examina su linaje para determinar si existe un conflicto. La deteccin de conflictos puede hacerse en las filas o en las columnas. El Agente de mezcla evala los valores actual y propuesto, y resuelve automticamente los conflictos entre valores nuevos y antiguos en funcin de las prioridades asignadas. Los valores se duplican en los dems sitios cuando se produce la sincronizacin, que puede tardar minutos, das o incluso semanas. Tambin es posible personalizar los desencadenadores para definir una estrategia propia de solucin de conflictos.
23
Explicacin previa
Introduccin a los modelos de duplicacin fsicos Combinacin de modelos y tipos de duplicacin Ejemplo de publicador central y distribuidor remoto Ejemplo de suscriptor central y mltiples publicadores Ejemplo de mltiples publicadores y mltiples suscriptores
En esta seccin analizaremos los modelos fsicos de duplicacin y la conexin entre ellos y los tipos de duplicacin (instantneas, transaccional, de mezcla)
******EL USO POR QUIENES NO SEAN INSTRUCTORES NO EST AUTORIZADO Y RESULTA ILEGAL***** Esta seccin describe los modelos fsicos de duplicacin y muestra la conexin entre ellos y los tipos de duplicacin (instantneas, transaccional y de mezcla). La seccin concluye con un anlisis de algunos ejemplos de cada uno de estos modelos.
24
Explicacin previa
Suscriptores Mltiples publicadores/Mltiples suscriptores Mltiples publicadores/Mltiples suscriptores Publicador/ Distribuidor/ Suscriptor Publicador/ Distribuidor/ Suscriptor Publicador/ Distribuidor/ Suscriptor
Publicador/ Distribuidor
Suscriptor
Publicador/ Distribuidor
******EL USO POR QUIENES NO SEAN INSTRUCTORES NO EST AUTORIZADO Y RESULTA ILEGAL***** Estos modelos fsicos bsicos de duplicacin sirven como ejemplo del modo en que pueden implementarse las funciones de los servidores en la duplicacin.
Seale que tambin es posible tener un distribuidor remoto, pero que en esencia se trata del mismo modelo, excepto en que el procesamiento del distribuidor se descarga en otro servidor.
25
26
El modelo es la implementacin fsica El tipo define la funcionalidad Cualquier modelo se puede usar con cualquier tipo
Explicacin previa
Para cada publicacin puede utilizar cualquiera de los modelos de duplicacin, con cualquiera de los tipos de duplicacin.
******EL USO POR QUIENES NO SEAN INSTRUCTORES NO EST AUTORIZADO Y RESULTA ILEGAL***** Para cada publicacin, puede utilizar cualquier combinacin de los modelos y los tipos de duplicacin: El modelo de duplicacin es la implementacin fsica del diseo de duplicacin. La mayor parte del tiempo de desarrollo se invierte en el diseo del modelo de duplicacin. El tipo de duplicacin, de instantnea, transaccional o de mezcla, define la funcionalidad que detalla el modo de mantener los datos duplicados. Cualquiera de los modelos de duplicacin puede utilizar cualquiera de los tipos de duplicacin. Normalmente, se seleccionan ambos a la vez y uno no determina al otro. Una misma base de datos puede tener diversas publicaciones con distintos tipos de duplicacin. Por ejemplo, en la base de datos de su compaa podra haber una publicacin con informacin de inventario para la que se utilizara duplicacin transaccional con suscriptores de actualizacin y otra publicacin con una lista de clientes para la que se usara la duplicacin de mezcla con el fin de que todos los sitios pudieran actualizarla.
27
Suscriptores
Explicacin previa
Publicador
En este ejemplo observamos un sistema de anlisis de ventas con la sede central de una compaa y sus oficinas regionales.
New York
Distribuidor remoto
Rome
London
Paris
Dublin
******EL USO POR QUIENES NO SEAN INSTRUCTORES NO EST AUTORIZADO Y RESULTA ILEGAL***** Sugerencia En este ejemplo observamos un sistema de anlisis de ventas utilizado por la sede central de una compaa y por sus oficinas regionales de ventas.
El grfico ilustra el ejemplo de publicador central que utiliza un distribuidor remoto y duplicacin de instantneas.
Proceso actual
Actualmente, el personal de ventas de las oficinas europeas deben hacer previsiones de ventas antes del final de cada mes. Una de las principales herramientas que utilizan es un sistema de anlisis de ventas que reside en la sede central de Nueva York. Las oficinas regionales no disponen de una conexin por red confiable y de alta velocidad con la sede central, y por ello ocurre, a menudo, que los datos de ventas no estn disponibles o no estn actualizados.
Problema empresarial
Las oficinas regionales no pueden hacer previsiones precisas de las ventas, ya que no tienen un acceso coherente a los datos de ventas actuales. Sugerencia
Seale que las publicaciones pueden filtrarse horizontalmente, lo que proporciona a cada regin su propio conjunto de datos.
28
Publicador
Explicacin previa
Publicador
En este ejemplo estudiaremos el caso de un fabricante de piezas de automviles con cuatro almacenes regionales. Publicador
Clave Claveprincipal principal Cd_reg Cd_reg Id Id 3 1000 3 1000 3 1070 3 1070
Suscriptor
Nm_po Cant. Nm_po Cant. ~ 7 7 ~ ~ 19 19 ~ Clave Claveprincipal principal Cd_reg Cd_reg Id Id 4 1000 4 1000 4 2000 4 2000
Publicador
Nm_po Cant. Nm_po Cant. ~ 43 43 ~ ~ 30 30 ~
******EL USO POR QUIENES NO SEAN INSTRUCTORES NO EST AUTORIZADO Y RESULTA ILEGAL***** Sugerencia En este ejemplo estudiamos el caso de un fabricante de piezas de automviles con cuatro almacenes regionales en distintos puntos del pas.
Este ejemplo ilustra el modelo del suscriptor central y varios publicadores que emplea la duplicacin transaccional. Explique que se utiliza una columna de clave principal compuesta para identificar de forma exclusiva los pedidos de cada regin.
Proceso actual
Actualmente, los niveles de inventario caen por debajo del nivel de reposicin sin que ello se detecte hasta que el almacn no pueda completar un pedido de cliente. Cada almacn administra su propio inventario. Cuando el nmero de unidades de una pieza cae por debajo del punto de reposicin de inventario, el administrador de control de inventarios del almacn hace un pedido al proveedor. Este procedimiento requiere supervisar el inventario manualmente y hacer los pedidos en cada almacn.
Problema empresarial
No hay una supervisin centralizada de inventarios.
29
Explicacin previa
Clave Claveprincipal principal Area Id Id Area 1 1000 1 1 1000 1 3100 1 1 3100 2 1000 2 1000 2 2380 2 2380 3 1000 3 1000 3 1070 3 1070
En este ejemplo, una pastelera tiene tres tiendas en distintos puntos de una ciudad.
Publicador/Suscriptor Publicador/Suscriptor
Clave Claveprincipal principal rea Id rea Id 1 1000 1000 1 1 3100 3100 1 2 1000 1000 2 2 2380 2380 2 3 1000 1000 3 3 1070 1070 3
Publicador/Suscriptor
Clave Claveprincipal principal rea Id rea Id 1 1000 1000 1 1 3100 3100 1 2 1000 1000 2 2 2380 2380 2 3 1000 3 1000 3 1070 3 1070
******EL USO POR QUIENES NO SEAN INSTRUCTORES NO EST AUTORIZADO Y RESULTA ILEGAL***** Sugerencia Una pastelera tiene tres tiendas en distintos puntos de una ciudad. Cada tienda cuenta con un servidor que publica su propia tabla Pedidos y est suscrito a las tablas Pedidos que publican las otras tiendas.
Este ejemplo ilustra el modelo de varios suscriptores y varios publicadores que utiliza duplicacin transaccional. Las filas resaltadas en gris no pueden actualizarse en esa tienda. Cada tienda slo puede hacer cambios en un subconjunto de la tabla (filtro horizontal), pero est suscrita al resto de la tabla.
Proceso actual
Actualmente, cada tienda se queda sin ciertos ingredientes con regularidad. Cuando en una tienda falta un ingrediente necesario, debe ponerse en contacto con las dems para averiguar si disponen de l y, adems, debe hacer un pedido del mismo.
Problema empresarial
Es imposible conocer el inventario de las dems tiendas hasta el ltimo momento, por lo que surgen situaciones en las que todas las tiendas se quedan sin el mismo ingrediente al mismo tiempo.
30
Recuerde a los alumnos que slo se duplican los datos modificados y no toda la tabla.
31
Procedimientos recomendados
Objetivo del tema
Presentar prcticas recomendadas con respecto a la duplicacin.
Determinar Determinar el el grado grado de de latencia latencia de de datos datos aceptable aceptable Determinar Determinar el el tipo tipo de de duplicacin duplicacin apropiado apropiado Seleccionar Seleccionar el el modelo modelo fsico fsico de de duplicacin duplicacin Determinar si se permitir que las actualizaciones dupliquen datos
Explicacin previa
******EL USO POR QUIENES NO SEAN INSTRUCTORES NO EST AUTORIZADO Y RESULTA ILEGAL***** Las prcticas recomendadas siguientes le ayudarn a tratar factores relativos a la duplicacin: Determinar el grado de latencia de datos aceptable en el entorno. Determinar el tipo de duplicacin apropiado: de instantneas, transaccional o de mezcla. Seleccionar el modelo fsico de duplicacin: publicador central y distribuidor remoto, suscriptor central y varios publicadores, o varios publicadores y varios suscriptores. Determinar si se permitir que las actualizaciones dupliquen datos y seleccionar a continuacin el mtodo de duplicacin apropiado para satisfacer esta necesidad, si es necesario.
32
Explicacin previa
En esta prctica configurar una duplicacin transaccional y una duplicacin de mezcla, y resolver los conflictos de duplicacin mediante el uso de la duplicacin de mezcla.
******EL USO POR QUIENES NO SEAN INSTRUCTORES NO EST AUTORIZADO Y RESULTA ILEGAL*****
Explique los objetivos de la prctica.
Objetivos
Despus de realizar esta prctica, el alumno ser capaz de: Configurar la duplicacin transaccional. Configurar la duplicacin de mezcla. Resolver conflictos de duplicacin mediante la utilizacin de la duplicacin de mezcla.
Antes de comenzar
En esta prctica trabajar con su compaero para configurar la duplicacin entre dos equipos en los que se ejecuta Microsoft SQL Server 2000. Es posible configurar por completo la duplicacin desde un solo equipo, pero las tareas de esta prctica se han dividido entre dos para que ambos alumnos tengan tareas que realizar. En el ejercicio 2, se designar un equipo donde se ejecute SQL Server como el servidor distribuidor y publicador, y otro como el servidor suscriptor. Escriba los nombres del servidor distribuidor y publicador, y del servidor suscriptor en el espacio siguiente. El nombre del servidor de su compaero: _______________________________ El nombre del servidor distribuidor y publicador:________________________ El nombre del servidor suscriptor: ___________________________________
Ms informacin
Para obtener ayuda acerca de cmo ejecutar archivos, busque el ttulo Ejecutar instrucciones SQL en la Ayuda del Analizador de consultas de SQL Server.
33
Otros recursos que puede utilizar son: El esquema de la base de datos Northwind. Los Libros en pantalla de Microsoft SQL Server.
Situacin de ejemplo
La organizacin del aula pretende simular la de una empresa dedicada al comercio mundial llamada Northwind Traders. Su nombre de dominio ficticio es nwtraders.msft. El servidor DNS principal para nwtraders.msft es el equipo del instructor, cuya direccin del Protocolo Internet (IP) es 192.168.x.200 (donde x es el nmero del aula que tiene asignado). El nombre del equipo del instructor es London. En la tabla siguiente se muestran el nombre de usuario, el nombre del equipo y la direccin IP del equipo de cada alumno en el dominio ficticio nwtraders.msft. Busque el nombre de usuario correspondiente a su equipo y antelo.
Nombre de usuario SQLAdmin1 SQLAdmin2 SQLAdmin3 SQLAdmin4 SQLAdmin5 SQLAdmin6 SQLAdmin7 SQLAdmin8 SQLAdmin9 SQLAdmin10 SQLAdmin11 SQLAdmin12 SQLAdmin13 SQLAdmin14 SQLAdmin15 SQLAdmin16 SQLAdmin17 SQLAdmin18 SQLAdmin19 SQLAdmin20 SQLAdmin21 SQLAdmin22 SQLAdmin23 SQLAdmin24 Nombre del equipo Vancouver Denver Perth Brisbane Lisbon Bonn Lima Santiago Bangalore Singapore Casablanca Tunis Acapulco Miami Auckland Suva Stockholm Moscow Caracas Montevideo Manila Tokyo Khartoum Nairobi Direccin IP 192.168.x.1 192.168.x.2 192.168.x.3 192.168.x.4 192.168.x.5 192.168.x.6 192.168.x.7 192.168.x.8 192.168.x.9 192.168.x.10 192.168.x.11 192.168.x.12 192.168.x.13 192.168.x.14 192.168.x.15 192.168.x.16 192.168.x.17 192.168.x.18 192.168.x.19 192.168.x.20 192.168.x.21 192.168.x.22 192.168.x.23 192.168.x.24
34
Contrasea
2. Inicie el Administrador corporativo de SQL Server. 3. Expanda Servidores Microsoft SQL Server, expanda Grupo de SQL Server, expanda su servidor, expanda Seguridad, haga clic con el botn secundario del mouse (ratn) en Inicios de sesin, haga clic en Nuevo inicio de sesin, agregue a SQL Server un inicio de sesin para su compaero y convirtalo en miembro de la funcin sysadmin. 4. Haga clic con el botn secundario del mouse en su servidor, haga clic en Nuevo registro de servidor SQL Server, registre el servidor de su compaero y especifique la Autenticacin de Microsoft Windows.
35
5. Cierre el cuadro de dilogo Crear y administrar publicaciones. 6. En el rbol de la consola, expanda Monitor de duplicacin. 7. Haga clic en S para actualizar automticamente el Monitor de duplicacin (al sondear el distribuidor) y, despus, en Aceptar. 8. Expanda Publicadores, expanda su servidor y, a continuacin, haga clic en NorthwindProductsTablePublication:Northwind. 9. En el panel de detalles, revise los agentes NorthwindProductsTablePublication y anote sus propiedades e historiales.
36
Cundo se programa el Agente de lector de registro para ejecutarse? El Agente de lector de registro se programa para iniciarse automticamente siempre que se inicia el Agente SQL Server. ____________________________________________________________ ____________________________________________________________ A qu hora se programa el Agente de instantnea para ejecutarse? El Agente de instantnea se programa para ejecutarse todos los das. La hora exacta variar. ____________________________________________________________ ____________________________________________________________ Para crear una suscripcin (en el servidor suscriptor) En este procedimiento el suscriptor crear una suscripcin para extraer la publicacin que public el publicador en el procedimiento anterior. 1. En el servidor suscriptor, en el rbol de la consola del Administrador corporativo de SQL Server, expanda Grupo de SQL Server y, a continuacin, haga clic en el servidor suscriptor. 2. En el panel de detalles, haga clic en Asistentes y, a continuacin, haga clic en Crear una suscripcin de extraccin. Si la ficha Asistentes no aparece, haga clic en la opcin Cuadro de tareas del men Ver. 3. Use el Asistente para crear suscripciones de extraccin y la informacin de la tabla siguiente para extraer NorthwindProductsTablePublication del publicador.
Opcin Buscar publicaciones Publicador Publicacin Inicio de sesin del Agente de sincronizacin Base de datos de destino Valor De los servidores registrados El servidor de su compaero NorthwindProductsTablePublication: Northwind Suplantar la cuenta del Agente SQL Server Crear una base de datos nueva llamada ReplicatedNorthwind con los valores predeterminados S, inicializar el esquema y los datos Usar los archivos de instantneas de la carpeta de instantneas predeterminada Continuamente Agente SQL Server en el suscriptor
Inicializar suscripcin Entrega de instantnea Programacin del Agente de distribucin Iniciar los servicios requeridos
37
4. Cuando se haya creado la suscripcin, en el rbol de la consola del Administrador corporativo de SQL Server, expanda su servidor, expanda Administracin, expanda Agente SQL Server y, a continuacin, haga clic en Trabajos. Revise el trabajo Repl-Distribution creado y anote su programacin. A quin pertenecen los recursos del sistema que usa este trabajo? Cambiara una suscripcin de insercin los recursos que se usan? Este trabajo usar los recursos del sistema del suscriptor. Si se utilizara una suscripcin de insercin, se usaran los recursos del sistema del distribuidor. ____________________________________________________________ ____________________________________________________________ Para ejecutar el Agente de instantnea (en el servidor distribuidor y publicador) En este procedimiento el distribuidor iniciar el Agente de instantnea para crear una instantnea de los datos y el esquema de la publicacin. 1. En el servidor distribuidor y publicador, en el rbol de la consola del Administrador corporativo de SQL Server, expanda Monitor de duplicacin, expanda Publicadores, expanda su servidor y, a continuacin, haga clic en NorthwindProductsTablePublication:Northwind. 2. En el panel de detalles, haga clic con el botn secundario del mouse en Instantnea y, a continuacin, haga clic en Iniciar agente. 3. Cuando el Agente de instantneas haya generado una instantnea correctamente, revise el historial del agente y los detalles de la sesin. 4. En el rbol de la consola, expanda Monitor de duplicacin, expanda Agentes y, a continuacin, haga clic en Agentes de distribucin. 5. En el panel de detalles, haga clic con el botn secundario del mouse en el agente de suscripcin de extraccin y, a continuacin, haga clic en Historial del agente. Vea el historial del agente. 6. Abra el Analizador de consultas SQL y, si as se le pide, conctese al servidor local con Autenticacin de Windows. Tiene permiso para iniciar sesin y administrar SQL Server ya que ha iniciado sesin como SQLAdminx, que es miembro del grupo local Administradores de Windows 2000. A todos los miembros de este grupo se les asigna automticamente la funcin sysadmin de SQL Server. 7. Conecte con el suscriptor mediante la Autenticacin de Windows. Compruebe que el artculo se public en la tabla Products; para ello, ejecute la instruccin siguiente:
USE ReplicatedNorthwind SELECT * FROM Products
38
Para actualizar el artculo publicado (en el servidor distribuidor y publicador) En este procedimiento el publicador actualizar la tabla Products y comprobar que la informacin actualizada se duplica en el suscriptor. 1. En el servidor distribuidor y publicador, escriba y ejecute la siguiente instruccin mediante el Analizador de consultas de SQL Server.
USE Northwind SELECT * FROM Products
2. Revise el conjunto de resultados. Observe el nivel de reordenacin de ProductID = 1. 3. Escriba y ejecute la siguiente secuencia de comandos:
USE Northwind UPDATE Products SET ReorderLevel = 20 WHERE ProductID = 1 GO SELECT * FROM Products
4. Cambie al Administrador corporativo de SQL Server, abra el historial del Agente de lector de registro y revise los detalles de la sesin. 5. Abra el historial del Agente de distribucin y revise los detalles de la sesin. 6. Cambie al Analizador de consultas SQL y conctese con el servidor suscriptor. Ejecute la instruccin siguiente para ver el nivel de reordenacin de la tabla Products y comprobar que los datos de duplicaron:
USE ReplicatedNorthwind SELECT * FROM Products WHERE ProductID = 1
39
40
Para configurar las propiedades del distribuidor (en el servidor distribuidor y publicador) En este procedimiento configurar las propiedades del distribuidor. 1. En el servidor distribuidor y publicador, abra el Administrador corporativo de SQL Server. 2. En el rbol de la consola, haga clic en el servidor distribuidor. 3. En el panel de detalles, haga clic en la ficha Asistentes y, a continuacin, haga clic en Configurar publicacin y distribucin. 4. Configure su equipo como distribuidor con la informacin de la tabla siguiente.
Opcin Usar su equipo como distribuidor Carpeta de instantnea Personalizar configuracin de publicar y distribuir Nombre de base de datos de distribucin Carpeta para archivo de base de datos de distribucin Carpeta para archivo de registro de distribucin Permitir a los publicadores usar este distribuidor Habilitar bases de datos de publicacin Habilitar suscriptores Valor S \\suServidor\Repldata S Distribution (valor predeterminado) (valor predeterminado) Su servidor de distribucin Northwind (mezcla) El servidor de su compaero
Para crear una publicacin de mezcla en el publicador (en el servidor distribuidor y publicador) En este procedimiento crear una publicacin de mezcla en el publicador. 1. En el rbol de la consola del nuevo servidor distribuidor y publicador, haga clic en el publicador. 2. En el panel de detalles, haga clic en la ficha Asistentes y, a continuacin, haga clic en Crear publicacin. 3. Compruebe que est seleccionada Northwind y, a continuacin, haga clic en Crear publicacin.
41
Agregar columna uniqueidentifier Nombre de publicacin Definir filtros de datos, habilitar suscripciones annimas o personalizar otras propiedades Filtrar datos Permitir suscripciones annimas Establecer programacin del Agente de instantneas
No No, permitir nicamente suscripciones con nombre Usar la programacin predeterminada Crear la primera instantnea inmediatamente
Para revisar el historial de trabajos del Agente de instantnea (en el servidor distribuidor y publicador) En este procedimiento abrir el Monitor de duplicacin y revisar el historial de la creacin de archivos de instantnea. 1. En el nuevo servidor distribuidor y publicador, cierre el cuadro de dilogo Crear y administrar publicaciones. 2. En el rbol de la consola, expanda Monitor de duplicacin. 3. Haga clic en S para actualizar automticamente el Monitor de duplicacin (al sondear el distribuidor) y, despus, en Aceptar. 4. Expanda Publicadores, expanda el servidor publicador y, a continuacin, haga clic en Northwind:Northwind. Observe que la columna ltima accin del panel de detalles indica que la creacin de archivos de instantnea se est produciendo. Este proceso tardar varios minutos. Puede que tenga que actualizar esta publicacin. Advertencia No contine. Espere hasta que la columna ltima accin del panel de detalles muestre un mensaje como el siguiente: Generada instantnea de 6 artculos.
42
5. Cuando la instantnea est completa, en el panel de detalles, haga clic con el botn secundario del mouse en Instantnea y, a continuacin, haga clic en Historial del agente. 6. Haga clic en Detalles de la sesin. Revise los detalles de la sesin que estn asociados a la creacin de la instantnea.
43
Inicializar suscripcin
44
5. Cuando se haya creado la suscripcin, en el rbol de la consola del Administrador corporativo de SQL Server, expanda su servidor, expanda Bases de datos, expanda NorthwindMergeDB y, a continuacin, haga clic en Suscripciones de extraccin. 6. En el panel de detalles, despus de que la columna Estado indique que el Agente de mezcla se ha ejecutado correctamente, revise el Historial de trabajos. A quin pertenecen los recursos que usa este Agente de mezcla? Cambiara una suscripcin de insercin los recursos que se usan? Este Agente de mezcla usa los recursos del sistema del suscriptor. Una suscripcin de insercin usara los recursos del sistema del distribuidor. ____________________________________________________________ ____________________________________________________________ Para actualizar la tabla de origen en el publicador (en el servidor distribuidor y publicador) En este procedimiento el publicador actualizar la tabla Customers y comprobar que la informacin actualizada se duplica en el suscriptor. 1. En el servidor distribuidor y publicador, cambie al Analizador de consultas SQL y, despus, abra una nueva ventana de consulta. 2. Escriba y ejecute la siguiente secuencia de comandos:
USE Northwind SELECT * FROM Customers
3. Revise el conjunto de resultados. Observe la primera fila con el valor Maria Anders en la columna ContactName. 4. Escriba y ejecute la siguiente secuencia de comandos:
USE Northwind UPDATE Customers SET ContactName = 'Maria Anders-Smith' WHERE CustomerID = 'ALFKI' SELECT * FROM Customers
Cunto tardar en duplicarse esta actualizacin? La duplicacin de estas actualizaciones tardar hasta dos minutos en funcin de la programacin que se estableci en el procedimiento anterior. ____________________________________________________________ ____________________________________________________________
45
5. En el servidor suscriptor, cambie al Analizador de consultas SQL y, despus, abra una nueva conexin al servidor. 6. Escriba y ejecute la siguiente secuencia de comandos para comprobar si la actualizacin se ha duplicado en la base de datos NorthwindMergeDB:
USE NorthwindMergeDB SELECT * FROM Customers
7. En el servidor distribuidor y publicador, cambie al Administrador corporativo de SQL Server. 8. Expanda Monitor de duplicacin, expanda Agentes y, despus, haga clic en Agentes de mezcla. Puede que tenga que hacer clic en Actualizar. 9. En el panel de detalles, haga clic con el botn secundario del mouse en Northwind y, a continuacin, haga clic en Historial del agente. 10. Haga clic en la sesin que indica que los cambios se han mezclado y, a continuacin, haga clic en Detalles de la sesin. Revise las acciones que se realizaron durante la sesin. Puede iniciar el trabajo del Agente de mezcla desde el servidor distribuidor y publicador? S, puede iniciar el trabajo del Agente de mezcla desde el servidor distribuidor y publicador. ____________________________________________________________ Para actualizar simultneamente desde un publicador y un suscriptor En este procedimiento el publicador y el suscriptor actualizarn cada uno la tabla Customers con informacin que entra en conflicto y se revisarn los resultados. 1. En el servidor distribuidor y publicador, cambie el Analizador de consultas de SQL Server. 2. Escriba y ejecute la siguiente secuencia de comandos:
USE Northwind UPDATE Customers SET ContactName = 'Maria Anders-Smyth' WHERE CustomerID = 'ALFKI' SELECT * FROM Customers
3. En el servidor suscriptor, abra una ventana de consultas. 4. Escriba y ejecute la siguiente secuencia de comandos:
USE NorthwindMergeDB UPDATE Customers SET ContactName = 'Maria Anders-Smythe' WHERE CustomerID = 'ALFKI' SELECT * FROM Customers
Precaucin Asegrese de que usa el contexto de base de datos apropiado para cada una de estas instrucciones UPDATE.
46
5. En el servidor distribuidor y publicador, cambie al Administrador corporativo de SQL Server. 6. En el panel de detalles del Agente de mezcla, compruebe que la actualizacin se ha duplicado y que se ha resuelto un conflicto. Esta operacin tardar hasta dos minutos. Qu actualizacin se ha aplicado? La actualizacin realizada en el servidor distribuidor y publicador, o la realizada en el servidor suscriptor? Se aplic la actualizacin del servidor distribuidor y publicador. ____________________________________________________________ ____________________________________________________________ Para revisar la resolucin del conflicto (en el servidor distribuidor y publicador) En este procedimiento revisar la resolucin del conflicto mediante el Visor de conflictos de duplicacin de Microsoft. 1. En el servidor distribuidor y publicador, en el men Herramientas, seleccione Duplicacin y haga clic en Crear y administrar publicaciones. 2. Expanda la base de datos Northwind y, a continuacin, haga clic en la publicacin Northwind. 3. Haga clic en Propiedades y suscripciones. 4. Haga clic en Aceptar para reconocer que algunas propiedades de la suscripcin no se pueden modificar. 5. Haga clic en Suscripciones y, a continuacin, haga clic en Ver conflictos. Aparecer el Visor de conflictos de duplicacin de Microsoft que indica que se ha producido un conflicto en la tabla Customers de la base de datos Northwind. 6. Haga clic en Ver. 7. Modifique los datos del conflicto que result perdedor. 8. En el cuadro ContactName, escriba Maria Anders y, a continuacin, haga clic en Resolver con estos datos. 9. Haga clic en Cerrar. 10. Mediante el Analizador de consultas SQL, compruebe que los datos revisados se han aplicado a ambos servidores.
47
Repaso
Reforzar los objetivos del mdulo mediante el repaso de los puntos clave.
Introduccin a la distribucin de datos Introduccin a la duplicacin de SQL Server Agentes de duplicacin de SQL Server Tipos de duplicacin de SQL Server Modelos fsicos de duplicacin
Explicacin previa
Las preguntas de repaso abarcan algunos de los conceptos clave impartidos en el mdulo.
******EL USO POR QUIENES NO SEAN INSTRUCTORES NO EST AUTORIZADO Y RESULTA ILEGAL****** Sugerencia 1. Su compaa sufre problemas de conflictos de datos. Estos problemas aparecen cuando los departamentos de ventas y mercadotecnia realizan sus informes diarios mientras el departamento de procesamiento de pedidos procesa pedidos. La compaa ha decidido implementar alguna forma de duplicacin de datos. A la hora de elegir el mtodo adecuado para hacer copias de los datos de la compaa, qu factores y caractersticas se deben considerar? Como mnimo, debe considerar la coherencia transaccional, la latencia, la autonoma de los sitios, la seguridad, los orgenes de datos existentes, la frecuencia de actualizacin de los datos, el rendimiento, la administracin y si se permitir a los suscriptores actualizar los datos en el publicador.
Utilice estas preguntas para repasar los temas del mdulo. Pregunte a los alumnos si tienen alguna duda antes de continuar.
2. Su compaa, un gran fabricante internacional con numerosas oficinas de ventas en todo el mundo, ha decidido distribuir sus datos mediante duplicacin. Actualmente usted se encuentra en la fase diseo de la estrategia de duplicacin. Su objetivo es recibir diariamente toda la informacin de ventas de las oficinas en la sede central de la compaa. La mayor parte de las oficinas son remotas, por lo que le preocupan los costos de la comunicacin a larga distancia. Qu modelo o modelos de duplicacin utilizar? Por qu? La mejor forma de satisfacer los requisitos es combinar dos de los modelos de duplicacin. Podra haber un suscriptor central en cada regin, que actuara como distribuidor remoto para duplicar, cada noche, la informacin de ventas diaria en la sede central. El uso de distribuidores regionales remotos reduce al mnimo los costos de la comunicacin a larga distancia.