
У меня есть несколько дисков на моем рабочем столе 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, ознакомьтесь со следующими ссылками:
- Блог Нильса Шиммельмана: Технология Intel Smart Response и многоуровневые хранилища Windows 10
- Как настроить многоуровневые хранилища в Windows 10
- vWorkspace Hyper-v с многоуровневыми пулами хранения – Часть 1
Я воспроизвожу здесь скрипт 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
решение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