Configurazione di spazi di archiviazione con una cache write-back NVDIMM-N

Si applica a: SQL Server

Windows Server 2016 presenta i supporti per i dispositivi NVDIMM N che consentono operazioni di input/output (I/O) estremamente veloci. Un uso interessante di tali dispositivi è come cache write-back per ottenere latenze di scrittura ridotte. Questo articolo illustra come configurare uno spazio di archiviazione con mirroring con una cache write-back NVDIMM-N con mirroring come unità virtuale per archiviare il log delle transazioni di SQL Server. Se si vuole usare lo spazio anche per archiviare tabelle di dati o altri dati, è possibile includere più dischi nel pool di archiviazione o creare più pool, se l'isolamento è importante.

Identificare i dischi appropriati

Il modo più semplice per configurare gli spazi di archiviazione in Windows Server 2016, soprattutto con funzionalità avanzate come le cache write-back, consiste nell'usare PowerShell. Il primo passaggio consiste nell'identificare i dischi che dovranno far parte del pool di spazi di archiviazione dal quale verrà creato il disco virtuale. I dispositivi NVDIMM-N hanno un tipo di supporto e un tipo di bus SCM (Storage Class Memory) per i quali è possibile eseguire query tramite il cmdlet Get-PhysicalDisk.

Get-PhysicalDisk | Select FriendlyName, MediaType, BusType  

Screenshot di una finestra di Windows PowerShell che mostra l'output del cmdlet Get-PhysicalDisk.

Nota

Con i dispositivi NVDIMM-N non è più necessario selezionare appositamente i dispositivi che possono essere destinazioni di cache write-back.

Per creare un disco virtuale con mirroring con cache write-back con mirroring sono necessari almeno due dispositivi NVDIMM-N e due altri dischi. L'assegnazione dei dischi fisici a una variabile prima di creare il pool semplifica il processo.

$pd =  Get-PhysicalDisk | Select FriendlyName, MediaType, BusType | WHere-Object {$_.FriendlyName -like 'MK0*' -or $_.FriendlyName -like '2c80*'}  

Lo screenshot mostra la variabile $pd e le due unità SSD e i due dispositivi NVDIMM-N cui è assegnata restituiti dal cmdlet PowerShell seguente.

$pd | Select FriendlyName, MediaType, BusType  

Screenshot di una finestra di Windows PowerShell che mostra l'output del cmdlet $pd.

Creare il pool di archiviazione

Con la variabile $pd contenente i dischi fisici è facile creare il pool di archiviazione usando il cmdlet di PowerShell New-StoragePool.

New-StoragePool -StorageSubSystemFriendlyName "Windows Storage*" -FriendlyName NVDIMM_Pool -PhysicalDisks $pd  

Screenshot di una finestra di Windows PowerShell che mostra l'output del cmdlet New-StoragePool.

Creare disco virtuale e volume

Dopo aver creato un pool, il passaggio successivo consiste nel creare e formattare un disco virtuale. In questo caso verrà creato un solo disco virtuale ed è possibile usare il cmdlet di PowerShell New-Volume per semplificare questo processo:

New-Volume -StoragePool (Get-StoragePool -FriendlyName NVDIMM_Pool) -FriendlyName Log_Space -Size 300GB -FileSystem NTFS -AccessPath S: -ResiliencySettingName Mirror  

Screenshot di una finestra di Windows PowerShell che mostra l'output del cmdlet New-Volume.

Il disco virtuale è stato creato, inizializzato e formattato con NTFS. La schermata seguente indica che il disco ha una dimensione di 300 GB e una cache di scrittura di 1 GB che verrà ospitata nei dispositivi NVDIMM-N.

Screenshot di una finestra di Windows PowerShell che mostra l'output del cmdlet Get-VirtualDisk.

È ora possibile visualizzare il nuovo volume nel server. È possibile usare questa unità per il log delle transazioni di SQL Server.

Screenshot di una finestra di Esplora file nella pagina Questo PC che mostra l'unità Log_Space.

Passaggi successivi