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.
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.
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 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
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.