Vantaggi dell'uso di Azure NetApp Files per la distribuzione di SQL Server
Azure NetApp Files riduce il costo totale di proprietà (TCO) di SQL Server rispetto alle soluzioni di archiviazione a blocchi. Con l'archiviazione a blocchi, le macchine virtuali hanno imposto limiti all'I/O e alla larghezza di banda per le operazioni su disco. Solo i limiti della larghezza di banda di rete vengono applicati ad Azure NetApp Files e solo in uscita. In altre parole, non vengono applicati limiti di I/O a livello di macchina virtuale ad Azure NetApp Files. Senza questi limiti di I/O, SQL Server in esecuzione su macchine virtuali più piccole connesse ad Azure NetApp Files può funzionare bene come SQL Server in esecuzione su macchine virtuali molto più grandi. Il ridimensionamento delle istanze riduce il costo del calcolo al 25% del prezzo precedente. È possibile ridurre i costi di calcolo con Azure NetApp Files.
I costi di calcolo, tuttavia, sono ridotti rispetto ai costi delle licenze di SQL Server. Le licenze di Microsoft SQL Server sono associate al numero di core fisici. Di conseguenza, la riduzione delle dimensioni delle istanze introduce un risparmio di costi ancora maggiore per le licenze software. È possibile ridurre i costi di licenza software con Azure NetApp Files.
Questo articolo illustra un'analisi dettagliata dei costi e i vantaggi in termini di prestazioni relativi all'uso di Azure NetApp Files per la distribuzione di SQL Server. Non solo le istanze più piccole hanno una CPU sufficiente per eseguire il funzionamento del database solo con blocchi su istanze di dimensioni maggiori, in molti casi le istanze più piccole sono ancora più efficienti rispetto alle controparti più grandi basate su disco a causa di Azure NetApp Files.
Analisi dettagliata dei costi
I due set di elementi grafici in questa sezione illustrano l'esempio di TCO. Il numero e il tipo di dischi gestiti, il livello di servizio Azure NetApp Files e la capacità per ogni scenario sono stati selezionati per ottenere il miglior rapporto prezzo-capacità-prestazioni. Ogni grafico è costituito da computer raggruppati (D16 con Azure NetApp Files rispetto a D64 con disco gestito ad esempio) e i prezzi sono suddivisi per ogni tipo di computer.
Il primo set di elementi grafici mostra il costo complessivo della soluzione usando una dimensione del database a 1 TiB, confrontando il D16s_v4 con D64, D8 e D32 e D4 con D16. Gli IOP proiettati per ogni configurazione sono indicati da una linea verde o gialla che corrisponde all'asse Y sul lato destro.
Il secondo set di elementi grafici mostra il costo complessivo usando un database da 50 TiB. In caso contrario, i confronti sono uguali: D16 rispetto ad Azure NetApp Files rispetto a D64 con blocco, per esempio.
Prestazioni di alto livello
Rispettare un'asserzione significativa di riduzione dei costi richiede prestazioni molto elevate, ad esempio le istanze più grandi dell'inventario di Azure supportano 80.000 operazioni di I/O sul disco al secondo. Un singolo volume di Azure NetApp Files può raggiungere 80.000 operazioni di I/O del database al secondo e le istanze come D16 possono consumare la stessa quantità. D16, in genere in grado di compiere 25.600 operazioni di I/O sul disco al secondo, ha dimensioni pari al 25% di D64. D64s_v4 è in grado di eseguire 80.000 operazioni di I/O al secondo sul disco e, di conseguenza, presenta un eccellente punto di confronto di livello superiore.
D16s_v4 può guidare un volume di Azure NetApp Files a 80.000 operazioni di I/O al secondo sul database. Come dimostrato dallo strumento di benchmarking SSB (SQL Storage Benchmark), l'istanza D16 ha ottenuto un carico di lavoro maggiore del 125% rispetto a quello ottenibile su disco dall'istanza D64. Per informazioni dettagliate sullo strumento, vedere la sezione relativa allo strumento di test SSB.
Usando una dimensione del set di lavoro a 1 TiB e un carico di lavoro di SQL Server di lettura dell’80% e di aggiornamento del 20%, le funzionalità delle prestazioni della maggior parte delle istanze nella classe di istanza D sono state misurate; la maggior parte, non tutte, poiché le istanze D2 e D64 stesse sono state escluse dai test. Il primo è stato lasciato fuori perché non supporta la rete accelerata e quest'ultimo perché è il punto di confronto. Vedere il grafico seguente per comprendere i limiti di D4s_v4, D8s_v4, D16s_v4 e D32s_v4 rispettivamente. I test di archiviazione su disco gestito non vengono visualizzati nel grafico. I valori di confronto vengono disegnati direttamente dalla tabella dei limiti della macchina virtuale di Azure per il tipo di istanza della classe D.
Con Azure NetApp Files, ognuna delle istanze della classe D può soddisfare o superare le funzionalità di prestazioni del disco di istanze due volte più grandi. È possibile ridurre significativamente i costi delle licenze software con Azure NetApp Files.
- L'utilizzo della CPU D4 al 75% corrisponde alle funzionalità del disco di D16.
- La frequenza di D16 è limitata a 25.600 operazioni di I/O al secondo sul disco.
- L'utilizzo della CPU al 75% del D8 corrisponde alle funzionalità del disco di D32.
- La velocità D32 è limitata a 51.200 operazioni di I/O al secondo sul disco.
- L'utilizzo della CPU D16 al 55% corrisponde alle funzionalità del disco di D64.
- D64 è limitato a 80.000 operazioni di I/O al secondo sul disco.
- L'utilizzo della CPU D32 al 15% corrispondeva anche alle funzionalità del disco di D64.
- D64, come indicato in precedenza, è limitato a 80.000 operazioni di I/O al secondo sul disco.
Test dei limiti della CPU S3B: prestazioni vs potenza di elaborazione
Il diagramma seguente riepiloga il test dei limiti della CPU S3B:
La scalabilità è solo una parte della storia. L'altra parte è latenza. Per le macchine virtuali più piccole, un conto è avere la possibilità di raggiungere velocità di I/O molto più elevate, un altro è riuscirci con latenze basse a singola cifra, come illustrato di seguito.
- D4 ha dato luogo a 26.000 operazioni di I/O al secondo rispetto ad Azure NetApp Files a una latenza di 2,3 ms.
- D8 ha dato luogo a 51.000 operazioni di I/O al secondo rispetto ad Azure NetApp Files a una latenza di 2,0 ms.
- D16 ha dato luogo a 88.000 operazioni di I/O al secondo rispetto ad Azure NetApp Files a una latenza di 2,8 ms.
- D32 ha dato luogo a 80.000 operazioni di I/O al secondo rispetto ad Azure NetApp Files a una latenza di 2,4 ms.
Risultati della latenza S3B per tipo di istanza
Il diagramma seguente illustra la latenza per SQL Server a istanza singola su Azure NetApp Files:
Strumento di test SSB
Lo strumento di benchmarking TPC-E, per com’è progettato, fa più affidamento sul calcolo anziché sull'archiviazione. I risultati dei test illustrati in questa sezione si basano su uno strumento di test di stress denominato SQL Storage Benchmark (SSB). SQL Server Storage Benchmark può eseguire un'esecuzione SQL su larga scala su un database di SQL Server per simulare un carico di lavoro OLTP, simile allo strumento di benchmarking Oracle SLOB2.
Lo strumento SSB genera un carico di lavoro basato su SELECT e UPDATE che emette le istruzioni dichiarate direttamente nel database di SQL Server in esecuzione all'interno della macchina virtuale di Azure. Per questo progetto, i carichi di lavoro SSB sono stati netti da 1 a 100 utenti di SQL Server, con 10 o 12 punti intermedi a 15 minuti per numero di utenti. Tutte le metriche delle prestazioni di queste esecuzioni sono state dal punto di vista di perfmon; per la ripetibilità, SSB è stato eseguito tre volte per ogni scenario.
I test stessi sono stati configurati come istruzione 80% SELECT e 20% UPDATE, quindi 90% di lettura casuale. Il database stesso, creato da SSB, ha dimensioni pari a 1000 GB. È costituito da 15 tabelle utente e da 9.000.000.000 righe per tabella utente e da 8192 byte per riga.
Il benchmark SSB è uno strumento open source. È disponibile gratuitamente nella pagina GitHub di SQL Storage Benchmark.
In breve
Con Azure NetApp Files è possibile migliorare le prestazioni di SQL Server riducendo significativamente il costo totale di proprietà.