Дисковые пространства в Windows 10 и многоуровневое хранение

Дисковые пространства в Windows 10 и многоуровневое хранение

У меня есть несколько дисков на моем рабочем столе Windows 10 (профессиональная, если это имеет значение) и я играюсь с дисковыми пространствами. Мне бы хотелось получить совет о том, как настроить тома хранилища для моих вариантов использования. Я знаю, что пользовательский интерфейс Windows 10 ограничен, но, похоже, вы можете получить доступ к функциям многоуровневого хранения из Powershell. Я с удовольствием прочту документацию по дисковым пространствам и попытаюсь разобраться в этой функции, но хотел бы получить некоторую информацию, если моя стратегия разумна.

Вот что у меня есть на данный момент:

  • 2x256 ГБ SSD - нераспределенный, был моим старым томом RAID0 boot+apps
  • 1x5TB HDD - медиа+игры+приложения (я хочу удалить этот диск)
  • 1x8TB HDD - медиа+документы+фотографии
  • 2x8TB HDD - новые неиспользованные диски
  • Процессор: i7 4790k на чипсете Z97, возможно, обновлю до Ryzen3, когда придет время
  • Мой загрузочный диск — это диск NVMe емкостью 512 ГБ.

Я хотел бы создать два тома из дисков выше. В идеале это то, что я хотел бы:

  • игры+чистый том: 256 ГБ чередующийся уровень SSD + 3 ТБ чередующийся уровень HDD
  • Объем мультимедиа+документов+фото: зеркальный уровень SSD объемом 256 ГБ + уровень HDD «четности» объемом 14 ТБ

Все, что находится в томе games+scratch, я могу потерять, так как я могу просто перекачать данные. Например, я бы поместил файлы «памяти» моей виртуальной машины, базу данных plex и т. д. на рабочий диск. Все, что является конфиденциальным, я бы сделал резервную копию на другом томе.

Мне нужна хотя бы одна избыточность диска на томе media+documents+photos. У меня есть резервные копии моих документов+фото вне офиса. Так что это просто избавит меня от головной боли, если я потеряю диск.

Кажется ли мне такая настройка разумной и смогу ли я добиться этого на компьютере с Windows 10 Pro?

Я также читал, что в прошлых версиях Windows у дисковых пространств была очень плохая производительность пула «четности». Этовсе ещеправда? Я не смог провести настоящий тест конфигурации четности, потому что 2 из моих 4 HDD используются. Я решил спросить здесь, если у кого-то есть опыт в этом.

Какие еще решения мне следует рассмотреть?

решение1

Чтобы создать многоуровневые хранилища Windows 10, ознакомьтесь со следующими ссылками:

Я воспроизвожу здесь скрипт PowerShell Нильса Шиммельмана для создания двухуровневых пространств хранения данных для SSD и 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

решение2

В следующем примере показано, как создать многоотказоустойчивый том, в котором уровень SSD зеркалируется, а уровень HDD настроен с контролем четности.

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

Источник:https://www.starwindsoftware.com/blog/configure-a-resilient-volume-on-windows-server-2016-using-storage-spaces

решение3

Ответ @harrymc мне не помог.

Мне пришлось немного уменьшить оба размера (в данном случае на коэффициент «Делитель»)

Кроме того, я увидел, что уровни сообщают об устойчивости как о «Зеркале», поэтому я также установил их как «Простые», но я не уверен, было ли это необходимо.

#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

решение4

Избыточность RAID может помочь при отказе диска, но не поможет, если вирус-вымогатель зашифрует ваши файлы или при (маловероятном) катастрофическом отказе блока питания, который может вывести из строя все подключенные к нему жесткие диски (видел такое). Мой подход заключается в том, чтобы иметь в автономном режиме на ящике полную копию жесткого диска и раз в два месяца обновлять и заменять их рабочим набором. Таким образом, часы использования будут распределены. Для критически важных данных есть дополнительная резервная копия. Для быстрой синхронизации я использую Total Commander. Также полезен полный текстовый файл MD5 всего содержимого для обнаружения возможных повреждений. Очень полезный создатель файла избыточности для добавления в резервную копию для восстановления в случае повреждения или удаления:http://www.ice-graphics.com/ICEECC/IndexE.html

Связанный контент