Windows 10 上的存储空间和分层

KZ.*_*KZ. 6 windows freenas software-raid storage-spaces

我的 Windows 10(专业版)桌面上有许多磁盘,并且一直在玩弄存储空间。我想要一些关于如何为我的用例配置存储卷的建议。我知道 Windows 10 UI 是有限的,但您似乎可以从 Powershell 获得分层功能。我很高兴阅读存储空间的文档并尝试解开该功能,但如果我的策略合理,我希望得到一些输入。

这是我目前拥有的:

  • 2x256GB SSD - 未分配,是我旧的 RAID0 启动+应用程序卷
  • 1x5TB HDD - 媒体+游戏+应用程序(我想淘汰这个驱动器)
  • 1x8TB 硬盘 - 媒体+文档+照片
  • 2x8TB HDD - 新的未使用磁盘
  • CPU:i7 4790k on Z97 芯片组主板,可能到时候升级到 Ryzen3
  • 我的启动盘是 512GB NVMe 磁盘

我想从上面的驱动器中构建两个卷。理想情况下,这就是我想要的:

  • 游戏+暂存卷:256GB 条带 SSD 层 + 3TB 条带 HDD 层
  • 媒体+文档+照片卷:256GB 镜像 SSD 层 + 14TB 'parity' HDD 层

游戏+刮刮卷中的所有内容我都可以忍受丢失,因为我可以重新下载数据。例如,我会将我的虚拟机“内存”文件、plex 数据库等放在暂存盘上。任何敏感的东西我都会备份到另一个卷。

我希望媒体+文档+照片卷上至少有一个驱动器冗余。我在异地备份了我的文档+照片。所以如果我失去驱动器,这只是让我省去一些头痛。

这个设置看起来合理吗,我可以在 Windows 10 专业版机器上实现吗?

我还读到,在过去版本的 Windows 中,存储空间的“奇偶校验”池性能非常差。这仍然是真的吗?我无法对奇偶校验配置进行真正的测试,因为我使用了 4 个 HDD 中的 2 个。我想我会在这里问,以防有人以前有过这样做的经验。

我应该研究哪些其他解决方案?

har*_*ymc 6

要创建 Windows 10 分层存储空间,请参阅以下参考资料:

我在这里复制 Nils Schimmelmann 的 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
Run Code Online (Sandbox Code Playgroud)