SQL Server 2016: un passo in avanti considerevole

SQL Server è ormai una piattaforma con una reputazione solida, ma Microsoft ha fatto molti passi in avanti con la versione 2016, rendendola un upgrade davvero interessante.

Avatar di Giancarlo Calzetta

a cura di Giancarlo Calzetta

-

La vocazione di Microsoft per il software aziendale non è certo una cosa recente, ma qualche anno sono onestamente stupito dall’efficienza con la quale si stanno muovendo, incorporando nelle varie piattaforme e prodotti delle funzioni davvero utili e che funzionano in maniera affidabile.

SQL Server 2014 era già un assaggio di come questa “solidità” si stesse facendo largo sui prodotti Microsoft, ma i miglioramenti che abbiamo trovato nella versione 2016 sono davvero notevoli e portano la piattaforma Microsoft su di un terreno nuovo, che concorre con soluzioni storicamente blasonate ma che ora rischiano di sentire il fiato sul collo se non addirittura di inseguire (su alcuni aspetti).sqlServerLogo

Come ogni nuova release che si rispetti, le nuove funzioni e i miglioramenti sono così tanti che servirebbe un manuale per parlare di tutte, ma io partirei mettendo l’accento sui tre aspetti più peculiari: la nuova funzione di Stretch to the Cloud, l’eliminazione di molte limitazioni sulle in memory tables, le query su contenuti sempre codificati.

Un database verso la nuvola

Partiamo da una feature forse ancora un po’ cruda, ma che ha un significato pesante per diversi risvolti: lo stretch to the cloud, ovvero la possibilità di creare un database misto composto da una parte memorizzata sui server “in casa” e un’altra memorizzata su Azure (e solo Azure, per il momento. Non vengono supportati altri provider).

Il grande vantaggio di questa di questa funzione è che si possono spostare sul cloud i dati ormai consolidati e vetusti, ai quali si accede poco, facendo in modo che siano ancora perfettamente interrogabili tramite query come se facessero parte del database locale.

L’integrazione è talmente trasparente che non serve neanche riscrivere le query: tutto funzionerà senza interventi sul codice già presente.

Le performance, ovviamente, non saranno le stesse, ma restano ragionevoli su dati dei quali non abbiamo necessità continua e le varie tabelle possono in qualsiasi momento esser riportate in locale per effettuare modifiche ed elaborazioni più veloci.

Stretch

Perché diciamo che è una funziona ancora un “po’ cruda”? Perché nonostante gli strumenti di gestione siano di buon livello (si può creare, come detto, un database misto, ma anche decidere quali righe eventualmente migrare e quali tenere in locale), non si possono aggiornare o cancellare le tabelle che vengono migrate su Azure, così come vengono a mancare un bel po’ di controlli essenziali di unicità.

Così com’è, insomma, la funzione è utile solo per i cold data, un assett comunque noioso da gestire ma che con la costante riduzione dei costi dello storage si fa speso “finta di non vedere come un peso”.

Ciononostante, c’è una motivazione che rende molto importante la disponibilità di questa opzione: permette alle aziende di andare sul cloud “progressivamente”, pian piano e senza effetti potenzialmente dirompenti sulla loro operatività.

Chi non si è ancora aperto al cloud, infatti, potrebbe iniziare a spostare quei dati obsoleti che vengono usati solo per consultazioni occasionali e non per analisi attiva o attività correnti, in modo da “aprire una porta” al cloud e testarne le funzionalità con calma.

La selezione delle tabelle da migrare su Azure è, infatti, completamente trasparente all’utente e tutto viene gestito dal motore senza che ci sia bisogno di alcun cambiamento ai processi già in uso nell’azienza.

Lo stretching in SQL Server 2016, quindi, non va (ancora) visto come una opzione per dislocare database ad alte performance su varie posizioni, ma come “sgabuzzino” di servizio molto comodo per quello che non si usa più con frequenza o solo per operazioni di consultazione.