jump to navigation

msSQL – Replicación Peer-to-Peer en SQL Server 2008

Fuente: http://www.sql-server-performance.com/articles/dba/PeertoPeer_Replication_in_SQL_Server_2008_p1.aspx

 Autor: Dinesh Asanka

Introducción
Peer-to-Peer (P2P) Replication fue introducida en SQL Server 2005 para mejorar la disponibilidad y el rendimiento. En SQL Server 2008 la característica de P2P Replication ha madurado aún más con el agregado de más características. Este artículo describe las razones para usar P2P, como configurarlo y demas temas relacionados. 

¿Por qué usar P2P Replication?
En un escenario típico de replication, hay un publicador y uno o más suscriptores como en la figura 1.

p2p01 

Figura 1 : Configuración típica de Replicación. 

En el escenario de arriba se puede observar, si el suscriptor no responde, otros subscriptores y publicadores podrán seguir con el trabajo. Luego de la presencia del suscriptor con fallos, este se sincronizará con el publicador y luego podrá volver a las operaciones normales. Sin embargo, ¿Qué pasaría si hay una falla en el publicador?. Bueno, entonces todo el sistema fallaría. Esto significa que la configuración de arriba dará lugar a un único punto de fallo.
Para abordar las problemáticas anteriores en una replicación típica, P2P replication es la opción que se puede usar tal cuál está mostrada a continuación en la figura 2:

 

p2p02 

Figura 2: P2P Replication

En P2P replication, cada base de datos actúa como un publicador y un suscriptor. Por esto en esta topología de replicación no los llamaremos publicador y suscriptor. En cambio los llamaremos Nodos porque están todos en el mismo nivel. Una transacción originada en un nodo será replicada a los nodos restantes, pero no volverá a ser replicada al nodo originador.

Usos y beneficios de la P2P Replication

La figura 3, muestra la implementación de Replicación de P2P en tres ciudades diferentes: Londres, Los Angeles y Taipei.

 p2p03

Figura 3: Implementación de P2P    Fuente: MSDN 

Configurando de P2P Replication
Tal como en SQL Server 2005, necesitarás configurar replicación transaccional antes de configurar P2P Replication.

Habilitando la P2P Replication
Después de configurar la replicación transaccional, antes de añadir suscriptores, necesitarás habilitar la P2P Replication.

Para hacer esto, seguir los siguientes pasos:

1. Click derecho en publicación y seleccione propiedades.
2. Seleccione la página de opciones de suscriptores.
3. En esta página, ponga en verdadero la opción de permitir suscriptores peer-to-peer de la figura 4.

 p2p04

Figura 4: Permitiendo suscriptores P2P 4. Después de habilitar la suscripción Peer-to-Peer hacer click derecho en publicador, verás una nueva Topología de configuración Peer-to-Peer … la opción está presente en el menú contextual mostrado en la figura 5. Podés seleccionar esa opción para configurar la topología de P2P.

  p2p05

Figura 5: Nueva opción de menú para configurar P2P

5. Luego de la página de inicio, tendrás la lista de las publicaciones habilitadas de P2P para que las puedas seleccionar.
6. Hasta este punto, no hay nada nuevo en la configuración de réplica P2P en SQL Server 2008 en comparación con SQL Server 2005. A continuación verá una linda interfaz para configurar P2P.

 p2p06

Figura 6: Configurar la topología P2P

7. Al principio, sólo verá un nodo (en P2P hay editor y abonados, ya que todos al mismo nivel, por lo que se llaman nodos). Si hace clic derecho, verá un menú contextual con cinco opciones.

8. Tome nota de la tercera opción que es agregar un nuevo nodo de pares que nos permite añadir otro nodo. En este (Figura 7), es necesario seleccionar una base de datos de la lista. A diferencia de otras opciones de replicación, no puede crear bases de datos inmediatamente. En lugar de ello, es necesario crear una base de datos de SQL Server Management Studio y restaurar la última versión de la base de datos.

 p2p07

Figura 7: Añadir un nuevo nodo de pares.

En esta pantalla, Peer originarios ID se utilizan para la detección de conflictos. Esto tiene que ser único a través de una topología de los P2P.

9. Haga clic derecho y seleccione la opción Gráfico Redibujar. Esto le dará una buena representación visual sobre su topología, como se muestra en la Figura 8.

 

p2p08

Figura 8: Después de configurar la configuración de P2P.

 A diferencia de SQL Server 2005, ahora se puede visualizar fácilmente la topología de replicación de P2P. Puede borrar y añadir nuevas topologías muy fácilmente. Además, no tiene que parar todos los nodos antes de añadir un nuevo nodo.

10. Las siguientes dos pantallas le permitirán entrar en el Registro de Agente de Seguridad Reader y distribución de la configuración de seguridad del agente.
11. El siguiente paso es sincronizar bases de datos. La mejor opción es la de restaurar las bases de datos y no hacer nada a las publicaciones. (Opción 1 en la Figura 9) De lo contrario, después de la restauración mantenga el archivo de copia de seguridad con usted, ya que lo necesitará en este punto para la sincronización. (Opción 2 en la Figura 9)

 p2p09

Figura 9: Nuevos pares de inicialización.

12. Después de esta pantalla usted será llevado a la pantalla final y tendrá una pantalla de conformación.

 

 p2p10

Figura 10: Conformación de creación P2p.

En esto usted puede ver que ha creado dos publicaciones adicionales además de la publicación creada  originalmente. También habrá seis suscripciones creadas entre tres publicaciones.

 

Detección de conflictos
Conflicto de detección no estaba disponible en la replicación P2P en SQL Server 2005. Esta fue la principal razón de DBAS para no utilizar replicación P2P. Todos los nodos del par deben estar ejecutándose en SQL Server 2008 para tener detección del conflicto permitida.
La detección de conflictos es gestionada por cada fila de la columna con una lista oculta que identifica el carácter originario del par de nodo ID. 
Advertencias

Cuando un conflicto ocurre en la réplica entre iguales, se levanta la alarma entre iguales de la detección del conflicto. Se recomienda que se configure esta alarma para que se le avise cuando se produce un conflicto.

1. Haga clic derecho y seleccione la opción del monitor de la réplica del lanzamiento.
2. En el monitor de la réplica, navegue a cualquier editor del P2P.
3. Seleccione la ficha de alerta y seleccione el botón Alertas de Conflictos. Usted será llevado a la Figura 11. Este primer alerta es de igual a igual de alerta de detección de conflictos. Seleccione el botón Configurar:

 p2p11

Figura 11: Configurar la replicación de Alertas

4. En la lengüeta de la respuesta, puede definir los operadores y los medios de la notificación.

Limitaciones
La réplica entre iguales se puede ejecutar solamente en las ediciones Enterprise y Developer de SQL Server. Como usted sabe, usted no puede utilizar la edición para desarrolladores en un entorno de producción. Esto significa que para la aplicación de P2P, hay un elemento de coste que se debe prestar atención.
Como cada nodo actúa como un editor y el suscriptor, habrá gran número de suscripciones. El cuadro 1 muestra el número de subscripción basado en nodos. Este cuadro indica que los nodos con más de diez nodos no son factibles:

 

p2p11 

Tabla 1: Nodos y Suscripciones

 

 

La figura 12 muestra el número de suscripciones vs nodos. En esto se puede ver hay una relación exponencial entre los nodos y las suscripciones. Un gran número de nodos significa que hay un gran número de suscripciones que puede dar lugar a problemas de rendimiento. Por lo tanto, se recomienda tener menos de diez nodos en su configuración de replicación P2P.

No está permitido hacer fila o columna de filtración en el filtrado de replicación P2P. Esto significa que cada base de datos necesita todas las filas y todas las columnas. Simplemente, tiene que replicar todos sus datos. Sin embargo, tiene la opción de no incluir algunos objetos de la base de datos.
Una tabla puede ser utilizada en una sola topología P2P. Sin embargo, es poco probable que una tabla se incluirá en dos o más topologías P2P.
Si quiere invertir su réplica del P2P de nuevo a la réplica de la fusión o a cualquier otra topología de la réplica, no puede invertir directamente. En lugar de ello, necesita parar la réplica del P2P y configurar de nuevo la réplica.

 p2p12

Figura 12: Nodos Vs. suscripción


Conclusión

Alegre, Santiago                       3701-0148
Altube, Alejandro                    3701-1197
Barrionuevo, Milva                 1325-0212
Seguí, María Victoria              3701-0508
Zalazar, Sebastián                   3601-3102   

La Peer-to-Peer Replication es una característica que se implementa en SQL Server a partir de la versión 2005, la misma garantiza mejoras en la disponibilidad y rendimiento. En este escenario existen nodos (cada uno de ellos actúan como publicadores y suscriptores). Esto es para evitar el problema de que algún publicador se caiga.
La configuración es sencilla, consta de Habilitar la P2P Replication y luego configurar la topología de configuración P2P, además de la interfaz de usuario; también tiene un nuevo método para detectar los conflictos entre los nodos P2P.

Sql Server 2008 permite la creación de nodos con una interfaz de visualización mas accesible que en sql Server 2005. Además permite agregarlo sin necesidad de parar los nodos que se encuentren ejecutando en ese momento.

La detección de conflictos en nodos se encuentra en esta nueva versión. Para ello es necesario configurar unas alertas que avisen cuando se produce un conflicto. Esta configuración es de fácil interpretación para el usuario.

Como cada nodo actúa como un editor y el suscriptor, habrá gran número de suscripciones. En esto se puede ver que hay una relación exponencial entre los nodos y las suscripciones. Un gran número de nodos significa que hay un gran número de suscripciones que puede dar lugar a problemas de rendimiento. Por lo tanto, se recomienda tener menos de diez nodos en su configuración de replicación P2P.

 

Martínez  Leonardo          1330-0238
Navarro Noelia                  3901-2530
Pirovano Varela  Matías   3801-0113
Rojas  Florencia                3901-2565
Scioli  Laura                      3101-2258
Vega  Nicolás                    3801-2095

La replicación transaccional de punto a punto fue diseñada para aplicaciones que pueden leer o modificar los datos en cualquiera de las base de datos que interactúan en la réplica. Generalmente está réplica es utilizada para todo lo que es comercio electrónico, ya que para estas aplicaciones pueden distribuir las consultas que leen datos entre las distintas replicas de la Base de Datos y así mejorar su rendimiento. Además, si algunos de los servidores que maneja las base de datos no se encuentra activo puede crearse una aplicación que dirija el volumen de datos hacia otro servidor que contienen copias idénticas e estos datos. El rendimiento de lectura mejora porque la actividad se puede repartir entre todos los nodos. El rendimiento acumulado de actualización, inserción y supresión para la topología es similar al de un solo nodo, porque al final todos los cambios se propagan a todos los nodos.

 

A %d blogueros les gusta esto: