SQL Server, dall'on premises ad Azure SQL

Datamaze
01.09.20 02:51 PM Comment(s)

Quando parliamo di un database relazionale come SQL Server, sono disponibili due principali opzioni per quanto riguarda l’installazione del database server:

·    In locale o on premises

·    In cloud

SQL Server on premises

L’installazione di un database in locale presuppone la presenza in loco (tipicamente la sede fisica dell’azienda che utilizza SQL Server per i propri applicativi) di un server fisico dove si andrà ad installare SQL Server ed i relativi database, oppure su di una virtual machine installata sul server stesso. Questa soluzione è stata adottata per molti anni (quando non esisteva il cloud) e ancora oggi la troviamo presente in diverse realtà aziendali.


Il cloud con Azure SQL

Un database in cloud, al contrario, viene ospitato su macchine messe a disposizione dal provider in remoto, con accesso tramite la rete internet.


Azure SQL è una famiglia di database SQL in cloud che offre una serie di opzioni e servizi flessibili per la migrazione, la modernizzazione e lo sviluppo di applicazioni.


Cos’è Azure SQL di Microsoft

Azure SQL segue un approccio PaaS (Platform-as-a-Service): consente infatti di essere subito operativi, evitando di dover gestire la configurazione hardware o configurare una macchina virtuale (come invece avviene nel caso dell'Infrastructure-as-a-Service o IaaS). Il servizio infatti si occupa non solo di gestire l’hardware, ma anche di gestire la configurazione software del DBMS, evitando il lavoro di manutenzione e aggiornamenti.


Servizi di questo tipo consentono di ottimizzare i costi e di dedicare le risorse ai compiti strategici per il business. I servizi gestiti di Azure SQL garantiscono high availability nativa, backup automatizzati, aggiornamento, applicazione delle patch e tuning delle performances.


La gamma di servizi disponibili
A seconda delle esigenze aziendali, sono disponibili diverse tipologie di servizi:

  • SQL Server su Azure Virtual Machines: consente di migrare le operazioni SQL in cloud, mantenendo la piena compatibilità con SQL Server e l’accesso al sistema operativo.
  • Azure SQL Managed Instance (istanza gestita di SQL di Azure):un servizio di database cloud intelligente, completamente gestito e scalabile, che combina la piena compatibilità del motore di database SQL Server con tutti i vantaggi di una piattaforma distribuita e scalabile. Perfetto per trasferire e modernizzare le proprie applicazioni SQL Server preesistenti.
  • Azure SQL Database: è il servizio di database relazionale, scalabile e intelligente creato per il cloud. È sempre aggiornato, grazie a funzionalità automatizzate basate su intelligenza artificiale che ottimizzano le prestazioni e la durabilità per conto tuo. Le risorse di calcolo serverless e le opzioni di archiviazione Hyperscale dimensionano automaticamente le risorse on demand, senza doversi preoccupare delle dimensioni delle risorse di archiviazione o della potenza di calcolo.

Aggiornamenti e gestione

Utilizzando i servizi cloud di Azure, si ha accesso ad una istanza SQL Server sempre aggiornata in modo automatico, con le patch più recenti non appena queste diventano disponibili, garantendo qualità e sicurezza. In questo modo, si evitano anche i problemi relativi alla fine del supporto, come ad esempio è avvenuto con SQL Server 2008 r2.


Con Azure SQL vengono automatizzate tutte quelle attività complesse di manutenzione di cui ci si deve occupare quotidianamente con parecchio dispendio di tempo, come ottimizzazione delle prestazioni, disponibilità elevata, ripristino in caso di emergenza e backup.


Azure SQL è basato sulla stessa tecnologia di SQL Server on premises e non richiede quindi nuove competenze SQL per essere utilizzato.


Licenze SQL Server

Per quanto riguarda tipologia e costi delle licenze, ci sono due differenti approcci da valutare:

  • Licenze acquistabili
  • Tariffe a consumo o a risorse richieste

L’acquisto di una licenza è necessario per istanze SQL Server on premises o per quelle installate su virtual machine in cloud. 


Per quanto riguarda il secondo approccio invece, Azure SQL offre una gamma di soluzioni di pagamento a seconda delle esigenze aziendali e della tipologia di servizio richiesto.
  • Per le macchine virtuali SQL Server Enterprise:
    • In base al consumo, con costo al secondo per le risorse richieste
    • Acquisto anticipato di un’istanza di macchine virtuali riservate
    • Prezzi spot per acquisto di capacità di calcolo non utilizzata


  • Per i database SQL di Azure:
    • Flessibile a seconda del livello di servizio richiesto
    • Fatturazione oraria o al secondo per le risorse effettivamente utilizzate


  • Per istanza gestita di SQL di Azure:
    • Fatturazione oraria o mensile per le risorse effettivamente utilizzate

Azure SQL, tramite il programma Azure Hybrid, consente l’utilizzo in cloud delle licenze locali di SQL  Server con Software Assurance che si possiedono. Inoltre, è disponibile l’opzione di prenotazione: acquistando in anticipo i servizi Azure SQL per periodi di uno o tre anni, sono disponibili sconti fino al 72% rispetto al pagamento in base al consumo. 

Conclusioni su SQL Server su Azure

Indubbiamente il cloud offre numerosi vantaggi, come testimonia anche la sua continua espansione. I database utilizzati tramite servizi gestiti consentono ai DBA di risparmiare tempo evitando operazioni come aggiornamenti e patching, ma richiedono particolare cura per altri aspetti come la sicurezza, il monitoraggio delle perfomances e il rapporto con il provider di servizi. 


di Alice Sella, pubblicato l'1 settembre 2020