Speicherplätze unter Windows 10 und Tiering

Speicherplätze unter Windows 10 und Tiering

Ich habe eine Reihe von Festplatten auf meinem Windows 10-Desktop (Pro, falls das wichtig ist) und habe mit Speicherplätzen herumgespielt. Ich hätte gerne Ratschläge, wie ich Speichervolumes für meine Anwendungsfälle konfiguriere. Ich weiß, dass die Windows 10-Benutzeroberfläche eingeschränkt ist, aber es scheint, dass Sie die Tiering-Funktionen über Powershell erreichen können. Ich lese gerne die Dokumentation zu Speicherplätzen und versuche, die Funktion zu entschlüsseln, hätte aber gerne ein paar Anregungen, ob meine Strategie sinnvoll ist.

Folgendes habe ich derzeit:

  • 2x256GB SSD - nicht zugeordnet, war mein altes RAID0 Boot+Apps-Volume
  • 1x5 TB Festplatte – Medien+Spiele+Apps (ich möchte dieses Laufwerk entsorgen)
  • 1 x 8 TB Festplatte – Medien + Dokumente + Fotos
  • 2x8 TB HDD – neue, unbenutzte Festplatten
  • CPU: i7 4790k auf Z97-Chipsatz-Motherboard, wahrscheinlich Upgrade auf Ryzen3, wenn es soweit ist
  • Mein Startlaufwerk ist eine 512 GB NVMe-Festplatte

Ich möchte aus den oben genannten Laufwerken zwei Volumes erstellen. Im Idealfall würde ich Folgendes wollen:

  • Spiele+Arbeitsvolumen: 256 GB SSD-Streifenschicht + 3 TB HDD-Streifenschicht
  • Medien-, Dokument- und Fotovolumen: 256 GB gespiegelte SSD-Ebene + 14 TB „Paritäts“-HDD-Ebene

Alles im Games+Scratch-Volume kann ich verlieren, da ich die Daten einfach erneut herunterladen kann. Ich würde beispielsweise meine VM-Speicherdateien, Plex-Datenbank usw. auf das Scratch-Volume legen. Alle sensiblen Daten würde ich auf dem anderen Volume sichern.

Ich möchte mindestens ein Laufwerk als Redundanz auf dem Datenträger für Medien, Dokumente und Fotos. Ich habe meine Dokumente und Fotos extern gesichert. Das erspart mir also einiges an Ärger, falls ich ein Laufwerk verlieren sollte.

Erscheint diese Konfiguration sinnvoll und ist sie auf einem Windows 10 Pro-Rechner umsetzbar?

Ich habe auch gelesen, dass Storage Spaces in früheren Windows-Versionen eine wirklich schlechte „Paritäts“-Pool-Performance aufweist. Ist dasTrotzdemstimmt das? Ich konnte keinen echten Test einer Paritätskonfiguration durchführen, da 2 meiner 4 Festplatten verwendet werden. Ich dachte, ich frage hier, ob jemand damit schon Erfahrung hat.

Nach welchen anderen Lösungen sollte ich suchen?

Antwort1

Informationen zum Erstellen mehrstufiger Speicherbereiche in Windows 10 finden Sie in den folgenden Referenzen:

Ich reproduziere hier Nils Schimmelmanns PowerShell-Skript zum Erstellen von zweistufigen Speicherplätzen für SSD und HDD:

#Variables
$StoragePoolName = "My Storage Pool"
$TieredSpaceName = "My Tiered Space"
$ResiliencySetting = "Simple"
$SSDTierName = "SSDTier"
$HDDTierName = "HDDTier"

#List all disks that can be pooled and output in table format (format-table)
Get-PhysicalDisk -CanPool $True | ft FriendlyName,OperationalStatus,Size,MediaType

#Store all physical disks that can be pooled into a variable, $PhysicalDisks
$PhysicalDisks = (Get-PhysicalDisk -CanPool $True | Where MediaType -NE UnSpecified)       

#Create a new Storage Pool using the disks in variable $PhysicalDisks with a name of My Storage Pool
$SubSysName = (Get-StorageSubSystem).FriendlyName
New-StoragePool -PhysicalDisks $PhysicalDisks -StorageSubSystemFriendlyName $SubSysName -FriendlyName $StoragePoolName

#View the disks in the Storage Pool just created
Get-StoragePool -FriendlyName $StoragePoolName | Get-PhysicalDisk | Select FriendlyName, MediaType

#Create two tiers in the Storage Pool created. One for SSD disks and one for HDD disks
$SSDTier = New-StorageTier -StoragePoolFriendlyName $StoragePoolName -FriendlyName $SSDTierName -MediaType SSD
$HDDTier = New-StorageTier -StoragePoolFriendlyName $StoragePoolName -FriendlyName $HDDTierName -MediaType HDD

#Identify tier sizes within this storage pool
$SSDTierSizes = (Get-StorageTierSupportedSize -FriendlyName $SSDTierName -ResiliencySettingName $ResiliencySetting).TierSizeMax
$HDDTierSizes = (Get-StorageTierSupportedSize -FriendlyName $HDDTierName -ResiliencySettingName $ResiliencySetting).TierSizeMax 

#Create a new virtual disk in the pool with a name of TieredSpace using the SSD and HDD tiers
New-VirtualDisk -StoragePoolFriendlyName $StoragePoolName -FriendlyName $TieredSpaceName -StorageTiers $SSDTier, $HDDTier -StorageTierSizes $SSDTierSizes, $HDDTierSizes -ResiliencySettingName $ResiliencySetting  -AutoWriteCacheSize -AutoNumberOfColumns

#Alternatively try adjusting the sizes manually:
#New-VirtualDisk -StoragePoolFriendlyName $StoragePoolName -FriendlyName $TieredSpaceName -StorageTiers @($SSDTier,$HDDTier) -StorageTierSizes @(228GB,1.816TB) -ResiliencySettingName $ResiliencySetting -AutoWriteCacheSize -AutoNumberOfColumns

Antwort2

Das folgende Beispiel zeigt, wie ein Multi-Resilient-Volume erstellt wird, bei dem die SSD-Ebene gespiegelt und die HDD-Ebene in Parität konfiguriert ist.

New-StorageTier -StoragePoolFriendlyName Pool1 -FriendlyName SSD_Tier -MediaType SSD -ResiliencySettingName Mirror
New-StorageTier -StoragePoolFriendlyName Pool1 -FriendlyName HDD_Tier -MediaType HDD -ResiliencySettingName Parity
$ssd_tier = Get-StorageTier -FriendlyName SSD_Tier
$hdd_tier = Get-StorageTier -FriendlyName HDD_Tier
New-VirtualDisk -StoragePoolFriendlyName Pool1 -FriendlyName "VirtualDisk" -StorageTiers @($ssd_tier,$hdd_tier) -StorageTierSizes 100GB, 300GB

Quelle:https://www.starwindsoftware.com/blog/configure-a-resilient-volume-on-windows-server-2016-using-storage-spaces

Antwort3

Die Antwort von @harrymc hat bei mir nicht funktioniert.

Ich musste beide Größen etwas reduzieren (hier um den Faktor des "Divisors")

Außerdem habe ich gesehen, dass die Ebenen die Ausfallsicherheit als „Spiegel“ gemeldet haben. Deshalb habe ich sie auch auf „Einfach“ eingestellt, bin mir aber nicht sicher, ob das notwendig war.

#Variables
$StoragePoolName = "MyPool"
$TieredSpaceName = "MySpace"
$ResiliencySetting = "Simple"
$SSDTierName = "SSDTier"
$HDDTierName = "HDDTier"

#List all disks that can be pooled and output in table format (format-table)
Get-PhysicalDisk -CanPool $True | ft FriendlyName,OperationalStatus,Size,MediaType

#Store all physical disks that can be pooled into a variable, $PhysicalDisks
$PhysicalDisks = (Get-PhysicalDisk -CanPool $True | Where MediaType -NE UnSpecified)       

#Create a new Storage Pool using the disks in variable $PhysicalDisks with a name of My Storage Pool
$SubSysName = (Get-StorageSubSystem).FriendlyName
New-StoragePool -PhysicalDisks $PhysicalDisks -StorageSubSystemFriendlyName $SubSysName -FriendlyName $StoragePoolName

#View the disks in the Storage Pool just created
Get-StoragePool -FriendlyName $StoragePoolName | Get-PhysicalDisk | Select FriendlyName, MediaType

#Create two tiers in the Storage Pool created. One for SSD disks and one for HDD disks
$SSDTier = New-StorageTier -StoragePoolFriendlyName $StoragePoolName -FriendlyName $SSDTierName -MediaType SSD -ResiliencySettingName $ResiliencySetting
$HDDTier = New-StorageTier -StoragePoolFriendlyName $StoragePoolName -FriendlyName $HDDTierName -MediaType HDD -ResiliencySettingName $ResiliencySetting

#Identify tier sizes within this storage pool
$SSDTierSizes = (Get-StorageTierSupportedSize -FriendlyName $SSDTierName -ResiliencySettingName $ResiliencySetting)
$HDDTierSizes = (Get-StorageTierSupportedSize -FriendlyName $HDDTierName -ResiliencySettingName $ResiliencySetting)

#Create a new virtual disk in the pool with a name of TieredSpace using the SSD and HDD tiers
New-VirtualDisk -StoragePoolFriendlyName $StoragePoolName -FriendlyName $TieredSpaceName -StorageTiers $SSDTier, $HDDTier -StorageTierSizes @(($SSDTierSizes.TierSizeMax - $SSDTierSizes.TierSizeDivisor * 8), ($HDDTierSizes.TierSizeMax - $HDDTierSizes.TierSizeDivisor * 10)) -ResiliencySettingName $ResiliencySetting  -AutoWriteCacheSize -AutoNumberOfColumns

Antwort4

RAID-Redundanz kann bei einem Laufwerksausfall helfen, aber nicht, wenn ein Ransomware-Virus Ihre Dateien verschlüsselt oder bei einem (unwahrscheinlichen) katastrophalen Ausfall der Stromversorgung, der alle angeschlossenen Festplatten zerstören kann (das habe ich schon erlebt). Mein Ansatz ist, eine vollständige Kopie des Festplattensatzes offline in einer Schublade zu haben und sie alle zwei Monate zu aktualisieren und mit dem Arbeitssatz auszutauschen. Auf diese Weise werden die Nutzungsstunden verteilt. Kritische Daten haben ein zusätzliches Backup. Für eine schnelle Synchronisierung verwende ich Total Commander. Auch eine vollständige MD5-Textdatei aller Inhalte ist nützlich, um mögliche Beschädigungen zu erkennen. Ein sehr nützlicher Redundanzdatei-Maker, der zu einem Backup hinzugefügt werden kann, um es im Falle einer Beschädigung oder Löschung wiederherzustellen, ist:http://www.ice-graphics.com/ICEECC/IndexE.html

verwandte Informationen