Tabelle in memoria più efficienti

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

-

Tabelle in memoria più efficienti

L’ultimo dei pilastri che caratterizzano principalmente SQL Server 2016 è in realtà una serie di modifiche e migliorie che sono state apportate alla funzione di “in memory table”, cioè la possibilità di gestire nella memoria RAM del server le tabelle su cui si devono operazioni ad alta velocità o complessità.

Le “in memory tables” erano già state introdotte nella versione 2014 di SQL Server, ma avevano molte limitazioni che le rendevano poco flessibili e ne tarpavano le potenzialità. Adesso la situazione è molto migliorata e nella tabella qui sotto riassumiamo cosa è cambiato.

tabella

Inoltre, il motore che gestisce le tabelle è stato ottimizzato e, grazie a un nuovo sistema di allocazione, memorizza più versioni delle tabelle nella memoria, implementando un sistema di controlli che non causa ritardi nell’elaborazione dei dati.

In questo modo, le prestazioni sono migliorate moltissimo e a seconda degli usi si vedono miglioramenti che vanno dal semplice raddoppio del numero di operazioni a “miracoli” che arrivano a performare fino a 50 volte meglio delle tabelle su disco fisso.

Uno strumento di analisi interna dell’uso delle tabelle, inoltre, suggerisce all’amministratore quali sono quelle che converrebbe gestire “in memory” per ottenere il massimo incremento nelle prestazioni.

Non solo performance

Come abbiamo accennato all’inizio di questo articolo, le novità di SQL Server 2016 non si fermano ai tre pilastri. Ci sarebbero da segnalare decine di altri miglioramenti e inserimenti tra i quali sceglieremo i più significativi.

Adesso, in SQL Server è inclusa una suite di servizi R, conseguenza dell’acquisizione da parte di Microsoft di Revolution Analytics. Le potenzialità nella gestione dei report e dell’analisi dei dati sono davvero molto più interessanti, ma non è un’aggiunta che si padroneggia in pochi minuti: serve studiare parecchio, ma i benefici sono molti.

R

Molto utile è anche l’aggiunta delle temporal tables, tabelle che contengono al loro interno anche le versioni precedenti ad eventuali cambiamenti, con tanto di data e posizione in modo da render semplice il ritorno di una tabella a un determinato momento, magari precedente a un problema che ne ha comportato la corruzione.

Infine, i nuovi servizi di reportistica creano in tempi molto breve degli schemi chiari, eleganti e che si adattano automaticamente alle dimensioni dello schermo sui quali vengono visualizzati. In questo modo, è semplice consultare gli andamenti per qualsiasi utente, dovunque si trovi.

In conclusione

Come si è intuito, SQL Server 2016 è, secondo noi, un upgrade davvero interessante. Peccato che le innovazioni più interessanti (tra le quali in memory tables e la possibilità di fare query sempre codificate) siano disponibili solo nella versione Enterprise, lasciando un po’ spiazzate tutte quelle realtà più piccole che avrebbero potuto beneficiarne soprattutto dal punto di vista della sicurezza.