E’ stata da poco rilasciata una nuova CTP release di SQL Azure Data Sync, un motore di sincronizzazione cloud che permette appunto di mantenere allineate basi dati presenti sia nel Cloud che on premise. E’ quindi possibili attivare una sincronizzazione tra più database SQL Azure oppure realizzare una sincronizzazione tra un database presente sulla propria macchina locale o su un server aziendale con uno o più database presenti nel cloud. Con questa nuova funzionalità di Windows Azure si possono aprire scenari molto interessanti quali :

  1. Backup live di un database locale : potrebbe essere utilie utilizzare SQL Azure come sistema di backup real time di una base dati locale che viene utilizzata per un software interno. Questo permetterebbe non solo di avere una copia allineata del proprio DB ma anche di poter fare un restore molto rapidamente avendo a disposizione il database nel cloud sempre attivo. Microsoft si occupa poi di fare il backup dei dati in SQL Azure il che garantisce un ulteriore strato di sicurezza delle proprie informazioni
  2. Esporre verso l’esterno alcuni dati aziendali : alle volte le aziende hanno costruito delle soluzioni interne utilizzate dai dipendenti dell’azienda stessa. Quando arriva la necessità di esporre questi dati all’esterno ovviamente si devono affrontare problemi di sicurezza, dmz , firewall perchè il server normalmente è all’interno delle mura aziendali. E’ possibile con Data Sync sincronizzare alcune tabella dal database centrale verso SQL Azure e poi costuire un applicazione di front end per consumare questi dati magari utilizzando i SQL Azure Reporting Services come motore di reportistica. Dato che è possibile fare una sincronizzazione bidirezionale è possibile anche recuperare delle informazioni dagli utenti esterni (agenti, fornitori) e portarle semplicemente all’interno dell’azienda in modo sicuro senza dover costruire un infrastruttura locale complessa.
  3. Distribuzione della propria applicazione su diversi
    datacenter
    : immaginate di avere un applicazione che viene usata in Europa ma anche in America. Per poter dare una esperienza unica ai proprio utenti e per poter rendere l’accesso alla propria applicazione il più veloce possibile è possibile con Windows Azure distribuire i proprio front end su datacenter diversi (America e Europa) e attraverso il Traffic Manager direzionare gli utenti al datacenter più comodo e volece. Ovviamente se l’applicazione ha bisogno di un database non avrebbe senso in una situazione di questo tipo avere un SQL Azure solo in uno dei due datacenter. Usando Data Sync è possibile mantenere allineati due database SQL Azure presenti in due datacenter diversi dando alla propria applicacazione un distribuzione completa.
  4. Distaster e Recovery : immaginate un applicazione mission critical in esecuzione sul datacenter di Amsterdam. Windows Azure garantisce una sicurezza e una affidabilità molto alta ma potrebbe accadere ovviamente di tutto e il datacenter potrebbe non essere più in grado di fornire il servizio. E’ possibile pubblicare la propria applicazione anche in un altro datacenter (Dublino per esempio) e lasciarla spenta (cioè gli utenti si collegano sempre ad Amsterdam) e sincronizzare il database nel primo datacenter con uno nel secondo. Nel caso di situazione critica è possibile attivare la propria applicazione a Dublino, farla puntare al database anch’esso a Dublino che è stato costantemente sincronizzato e con il Traffic Manager spostare gli utenti verso l’Irlanda garantendo una continuità di servizio completa.

Probabilmente ci sono molto altri scenari che si possono realizzare con il Data Sync ma già l’elenco qui sopra ci da un buon motivo per capire come funziona.

Qui trovate il post completo che vi spiega passo per passo come attivare il Data Sync e una sincronizzazione tra un database on-premise e un database SQL Azure.