jueves, 20 de octubre de 2011
Are Out !!! SQL Azure DataSync CTP y Windows Azure Autoscaling Block Beta
Muy buenas,
Hace unos días escribía un post sobre la Preview de SQL Azure DataSync, pues bien, ya tenemos la CTP y, como parece ser que no ha cambiado desde entonces, me ahorro el hacer el tour con la herramienta, jeje..
Como no hay una buena noticia sin dos, también tenemos a nuestra disposición una beta de Patterns & Practices, “Windows Azure Autoscaling Block” que puedes descargar directamente desde desde NuGet:
Si estás interesado como yo en el auto-escalado, entonces empieza por aquí con sus novedades:
- El estabilizador aumenta la histéresis (“tendencia de un material a conservar una de sus propiedades, en ausencia del estímulo que la ha generado.”) en el escalo de operaciones mediante la prevención de reglas reactivas de acciones repetidas y erróneas.
- El Throttiling (regulador), permite limitar o desactivar ciertas operaciones relativamente caras en la aplicación cuando la carga está por encima de determinados umbrales.
- Notificaciones de emails, permite enviar notificaciones a destinatarios configurados para tomar decisiones manuales o realizar alguna otra acción correctiva.
- Conjunto valores de contadores para cada role definido en el almacén de información de servicios (utilizado principalmente por el estabilizador, pero los usuarios también podrán usarlo en operandos de condiciones de la reglas).
- Capacidad para definir acciones personalizadas para reglas reactivas.
- Capacidad de especificar operandos personalizados para su uso en condiciones de reglas reactivas.
- Nueva funciones "Max" y "Growth" en la definición de operaciones.
- Mejora en los mensajes para la evaluación de reglas y escalado para determinar mejor lo que está sucediendo en el sistema.
- Nuevo ID de evaluación para correlacionar todos los mensajes de registro de un pase de evaluación específica.
- Cargas JSON para registrar los mensajes para ayudar a las herramientas que monitoricen e interpreten los mensajes.
- Clases de utilidad y definiciones de constantes para leer y analizar los mensajes de registro.
- Mejoras en la herramienta de configuración, mejores nombres y descripciones de objetos de configuración, validación, y un editor de cadenas de conexión de Windows Azure.
- Actualización de la lógica en el RulesEvaluator.
- Renombrado de la propiedad "nombre" por "alias" a fin de eliminar ciertas ambigüedades.
- Renombrado "SourceLogger" por "SystemDiagnosticsLogger".
- Refactorizado del elemento XML “scale” en el esquema de reglas para hacerlas más amigables (mediante la la eliminación de las propiedades "targetType" y "unit") e inferirlas a partir de su uso.
- Proporcionan una mejor definición de puntos cuando hay datos suficientes para que el block/componente pueda evaluar una regla.
- Nuevo elemento booleano NOT para especificar condiciones de la regla.
- Soporte para expresiones aritméticas básicas (multiplicación y división) en los parámetros en la especificación de condiciones de la regla.
- "Rank" (prioridad) a las reglas reactivas.
Para más detalle, no te olvides de CodePlex.
Hasta aquí por el momentosobre el auto-escalado !
Saludos @Working hard...
Juanlu
Etiquetas: Enterprise Library, SQL Azure DataSync, Windows Azure
martes, 11 de octubre de 2011
SQL Azure DataSync Preview. Sincronizando… ¡Step by step!
Muy buenas,
Como sabéis durante esta semana estamos en el Pass Summit 2011, donde SQL es el protagonista y donde espero que salgan a relucir muchas de las novedades que estamos esperando y principalmente desde el área de Windows Azure, concretamente en este caso, SQL Azure.
Esta son los puntos a tratar sobre SQL Azure :
- A lap around Microsoft SQL Azure and a discussion of what’s new
- Building Offline Applications for Windows Phones and Other Devices using Sync Framework and SQL Azure
- Migrating & Authoring Applications to Microsoft SQL Azure
- Building Large Scale Database Solutions on SQL Azure
- Introducing SQL Azure Reporting Services
- Loading and Backing Up SQL Azure Databases
- SQL Azure Data Sync - Integrating On-Premises Data with the Cloud
- SQLCAT: SQL Azure Learning from Real-World Deployments
- SQLCAT: Administering SQL Azure and new challenges for DBAs
De momento SQL Azure Data Sync en su nueva y reciente versión Preview y su integración en el Portal de Azure.

En un post anterior ya comenté como se llevaba a cabo esta sincronización para la CTP 2. Ahora todo es más intuitivo y fácil gracias a los nuesvos Wizards paso a paso. Muy bien conseguidos, sin duda !!! +10.
En primer lugar, lo que tenemos que hacer es generar una provisión, y para ello, bastará con hacer click en “Provisión”, acertar los terminos de uso, seleccionar una subscripción y esperar unos segundos.
A continuación ya estamos listo para comenzar el proceso de sincronización y seguir el Wizard, ¡a buen entendedor pocas palabras bastan!:
He aquí los los pasos para trabajar con esta nueva versión y generar un proceso completo de sincronización en este caso una sincronización BIDIRECCIONAL, entre una BBDD en SQL OnPremise y otra en SQL Azure:
- Indicar un nombre para el grupo de sincronización, ej.: “Sync 1”
- Añadir al proceso una BBDD SQL local
- La primera vez que ejecutes este paso (2) necesitarás instalar en local el software “Client Sync Agent”, de manera que este permitirá al Portal de Azure configurar las sincronizaciones conociendo así las conexiones SQL Server locales. Para completar este paso por primera vez sigue estas indicaciones:
A continuación descarga e Instala el “Client Sync Agent” (Herramienta de Configuración con SQL Server Local + Servicio Windows).
Introduce un nombre cualquiera a asignar al agente. También tendrás que obtener la Key para poder configurar el “Client Sync Agent”.
Una vez instalado el cliente (necesitaras las credenciales de un usuario para hacer el logon del servicio Windows (Agente)), sigue estos otros pasos para configurar el agente:
- Introduce la key obtenida en el paso anterior haciendo click en el botón "Submit Agent Key Configuration".
- Introduce las credenciales del servidor local de SQL Server haciendo click en el botón “Register”.
Vuelve al portal. Ahora ya podrás tener acceso a la BBDD local desde el portal de Azure y podrás continuar con el proceso.
Una vez completados los pasos anteriores o si ya tenías configurado un agente puedes optar por uno de las siguientes opciones, dependiendo de si ya habías creado o no una sincronización.
Opción (1) - Por primera vez:
Opción (2):
Paso 3: Ahora a configurar la BBDD de Azure sobre la que queremos realizar el proceso de sincronización, para ello, esta debe existir previamente.
Paso 4: Indicar cada cuanto tiempo queremos que se ejecute la sincronización, si queremos o no habilitar el proceso de sincronización y la política de conflictos (que información prevalece ante un conflicto, la de SQL Azure (Hub) o SQL Server Local (Client)),
Paso 5: Editar el mapeo de sincronización, (eso sí, de momento para una sóla base de datos) e incluso establecer filtros en relación a valores de campos.
Después de esto y para terminar, lo único que nos queda es “Deploy”.
Y aquí, el resultado del portal una vez la sincronización ya está esta en curso:
Una vez finalizado el proceso las BBDD, tanto la local como la SQL Azure, incluirán un mayor numero de objetos; tablas, procedimientos almacenados y tipos definidos por el usuario, todos ellos con el prefijo “DataSync.”
Proceso listo, modifiquemos donde modifiquemos, en SQL Server o en SQL Azure, la información se verá reflejada en ambos.
También he de decir, que la consulta de logs (Log Viewer) ha mejorado bastante con respecto a su predecesor, ahora permite búsquedas por filtros (Sync Group, Agent, Database, Log Type y Date range):
Nota: Si la sincronización en lugar de ser bidireccional, es entre BBDDs de Azure (“Sync between SQL Azure databases”), la instalación del Agente en local no es necesaria.
Ahora a esperar a ver que más nos van contando en el Pass Summit 2011 !!! .
Saludos
Juanlu, elGuerre
Etiquetas: SQL Azure, SQL Azure DataSync, Windows Azure
domingo, 3 de abril de 2011
SQL Azure Data Sync. Sincronizando…
Tras este grato fin de semana y tras haber celebrado junto con alguno de vosotros el 10º Aniversario de Avanade, ¡FELIZ ANIVERSARIO! me encuentro con ánimo de escribir este Post, antes de que finlize. Además, hace ya un tiempo que recibí el código de activación de SQL Azure Data Sync y llevo con ganas de escribir el resultado de las pruebas desde hace ya un tiempo.
En primer lugar decir que SQL Azure Data Sync lleva a cabo la sincronización de datos entre SQL Server (On-premisse) y SQL Azure, aquí, podemos encontra más información.
A continuación enumero los pasos para poner en marcha el componente y para comprobar su funcionamiento.
- Haciendo uso del Portal de Azure, crear un Base de Datos en SQL Azure utilizando la opción “create” una vez seleccionado el servidor.
- Introducir el nombre de la Base de Datos “NorthWind”.
- Partir de la BBDD local por todos conocida “NorthWind” y optar por una de las dos opciones para crearla en SQL AZure.
- Haciendo uso de la herramienta de exportación de Scripts de SQL Server 2008 “Generate Scripts…” (Seleccionar en este caso). En este caso ten en cuenta dos propiedades ”avanzadas” importantes: “Script for the database engine Type” y “Types of data to scripts” (Para este caso no es importante, pero será necesario tenerlo en cuenta a la hora de crear BBDD con datos). Una vez generado el Script crear una coneción con el servidor de SQL Azure para la BBDD creada durante los pasos anteriores, y ejecutar este scripts.
- Haciendo uso de la herramienta SQL Azure Migration Wizard (“SQL Azure MW v3.5.7”), partiendo en este caso desde la BBDD local o incluso desde el fichero de Script SQL referente a la misma. En este caso, la herramienta hará todo el trabajo una vez indicado el origen y destino.
Aunque no son necesario crear las BBDD en SQL Azure con Datos he aprovechado para comentar el proceso de migración,
Ahora a poner en marcha el proceso de sincronización de datos:
- Acceder al portal de SQL Azure Data Sync “https://datasync.azure.com/SADataSync.aspx”
- En la pestaña “Agents”
- Genera una key para el agente introduciendo un nombre.
- Descarga el servicio, “AgentServiceSetup.msi” e instalalo en local para la sincronización.
- Configura el Servicio indicando entre la key generada en el paso anterior y añadiendo la BBDD local de la que quieres realizar la sincronización.
- A partir de aquí, pensaba seguir comentando uno a uno todos los pasos, pero, ¿Para que hacerlo si tenemos un buen articulo en la TechNet, bastante mejor que el que pueda completar yo? En este tambien se explica los pasos necesarios para el registro para la obtención del código de activación.
- http://social.technet.microsoft.com/wiki/contents/articles/sql-azure-data-sync-scenario-sql-server-to-sql-azure-synchronization.aspx
Una vez finalizado el proceso y comenzada la sincronización los datos estarán replicados tanto en SQL On-Premisse como en SQL Azure, y por ello, como comentaba antes no sería necesario la creación de datos en SQL Azure al crear la BBDD.
Tras dicho proceso, si consultamos las BBDD tanto On-Premisse com SQL Azure, veremos que se han generado nuevos objetos:
- Una nueva tabla por cada una de las existentes y con el sufijo “_dss_tracking”.
- Un “User-Defined Tables Types” por cada tabla de la BBDD.
- Once (11) nuevos procedimientos almacenados por cada tabla. Ej.: para la tabla “Categories”.
Como siempre hay que encontrar alguna pega, el número de objetos de la BBDD puede verse incrementado enormemente si de por sí nuestra BBDD tiene ya muchos.
Adicionalmente, la sincronización es un éxito, eligiendo el modod “Bi-Direccional”, modifiques donde modifiques los cambios son reflejados.
Habrá que seguir probando para encontrar algunas limitaciónes, ¡si es que las tiene!
Hasta aquí una vez más, Azure sigue ofreciendo posibilidades y acercándonos más al verdadero mundo Cloud.
Saludos @Azureños
Juanlu
Etiquetas: SQL Azure, SQL Azure DataSync, Windows Azure