SQL Azure Data Sync es una de las funcionalidades de SQL Azure accesible desde el portal de administración de Windows Azure, aunque esté todavía en CTP.
Básicamente, como se puede entender de su nombre, es un servicio de sincronización de datos, que permite sincronizar base de datos de SQL Azure que estén en el mismo o diferente datacenter o based de datos que se encuentren on-premise con base de datos que se encuentren hosteadas en Windows Azure.
La sincronización entre las base de datos se podrá hacer de forma bidireccional.
Como paso adicional que se verá posteriormente, la sincronización con una base de datos on-premise requiere la instalación de un agente de sincronización en el servidor on-premise. Este paso no es necesario en el caso de realizar el proceso entre base de datos que estén en Windows Azure.
Como se ha comentado anteriormente toda la funcionalidad está accesible desde el portal de administración de Windows Azure.
Una vez se accede a la característica de sincronización, el primer paso será realizar un aprovisionamiento del servicio. El proceso de aprovisionamiento pedirá que aceptar los términos de licencia e indicar en qué datacenter se quiere realizar dicho aprovisionamiento.
Una vez realizado el proceso se habilitarán las opciones de sincronización. En proceso de sincronización es un asistente en el cuál se guiará paso a paso sobre todas las acciones necesarias para configurar un proceso de sincronización.
Sincronización entre base de datos SQL Azure
Si se selecciona la opción de sincronización entre base de datos SQL Azure, el primer paso será dar un nombre a dicho proceso.
El siguiente paso será añadir una de las base de datos a sincronizar, indicando la ubicación de la misma y las credenciales de acceso.
El siguiente paso será elegir la base de datos con la cuál se realizar la sincronización.
En este paso, como se puede apreciar en la figura, se debe elegir la dirección del proceso de sincronización.
Una vez indicados los dos puntos de la sincronización el siguiente paso será indicar la periodicidad del proceso y el método de resolución detección de conflictos que quiere aplicarse.
Y en el último paso puede definirse con más detalle qué información es la que se desea sincronizar; qué tablas, qué columas etc…
Y por último, el asistente pedirá guardar los cambios seleccionando la opción de “deploy”.
Una vez configurado todo el proceso desde el portal de administración podrá verse toda la información del proceso y claro está, modificar cualquiera de los elementos configurados en el asistente.
Así mismo también el portal de administración nos ofrece la posibilidad de consultar un log con todas las operaciones que se realizan en los procesos de sincronización.
Comentar por último que aunque en este apartado el proceso de creación del grupo de sincronización se ha hecho a través de un asistente, existe también la posibilidad de no usarlo y de crear el proceso de sincronización de forma “manual” consiguiendo, claro está, el mismo resultado.
Sincronización con un servidor on-premise
El proceso de sincronización con un servidor on-premise es prácticamente igual al realizado entre servidores SQL Azure, salvo por el hecho que implica la instalación de un agente de sincronización en el servidor on-premise.
Aunque para realizar un proceso de este tipo se podría utilizar un asistente similar al visto anteriormente, en este ejemplo lo que se va a realizar es añadir un servidor on-premise al grupo creado anteriormente.
Para ello, sobre el diagrama de la Figura anterior puede seleccionarse la opción de añadir un servidor on-premise.
Dicha opción permite añadir un servidor que ya disponga del agente de sincronización o un nuevo servidor que no lo tenga. En este caso se optará por la segunda opción.
Después de este paso será necesario descargarse el agente de sincronización (msi) e instalarlo en el servidor on-premise. Una vez instalado hay que arrancar el agente (desde el menú inicio) e indicarle la clave de acceso generada en el paso 3.
Una vez hayamos configurado la clave, el siguiente paso será registrar la base de datos local que queremos sincronizar.
Una vez hecho este paso, se podrá ver cómo la base de datos registrada se muestra en el servidor y podemos seleccionarla para ser usada en el proceso de sincronización.
Una vez añadido el servidor, para que la modificación tenga efecto será necesario volver a realizar un despliegue, seleccionado la acción “deploy”.