我已经阅读了一些资料,我感觉答案是“不”,但在做出可能困扰我多年的实施决定之前:
您可以在 Windows 2012 中将 SSD 用作纯[写入]缓存吗? 例如,通过设置-WriteCacheSize
为快速存储层的总大小。
我有相当多的使用 ZFS 的经验,但几乎没有使用 Windows 存储池的经验,理想情况下,我从 Win2012 中寻找的是附加到池的缓存,而不是分层存储。
这似乎是不可能的,因为在 Win2012 分层存储模型中,特定的数据块被存储任何一个在 SSD 上或者HDD。SSD 仅充当读取缓存,因为频繁访问的数据将存储在已移动到 SSD 层。但是,快速层确实充当写入缓存。
此外,我需要快速层中的 SSD 数量与普通层中的 HDD 数量一样多。这样对吗?还是只需要与 HDD 层一样多的 SSD 即可实现相同的弹性级别?
最后,我希望有人能帮助我了解写入缓存在 SSD 上的分配方式。在 SSD 上写入的缓存是否与卷具有相同的弹性模式?
我的理想配置是 ZFS 提供的:4x 64GB SSD 镜像/条带(~RAID10)读/写缓存连接到 8x 4TB 单奇偶校验(~RAID5)池。
由于我的实现是写入密集型的,因此我可以使用 100% 分配给写入缓存的 SSD 层不SSD 支持的“读取缓存”。我相信在 PS 中设置卷New-VirtualDisk [..] –WriteCacheSize xxGB
并将写入缓存大小设置为快速层大小的 100% 时可以实现这一点。但了解 Windows 后,我感觉这可能会导致服务器崩溃。
答案1
看来我想要的是专用的日志磁盘。它们将有效地充当写入缓存,至少就我的应用程序而言。
这可以通过添加一个或多个磁盘(最好是 SSD)作为专用日志磁盘来实现:
Add-PhysicalDisk -StoragePoolFriendlyName "<your storage pool name>" -PhysicalDisks <physical disk name> -Usage Journal
感兴趣的人请注意:我读到,创建卷后,您无法将日志磁盘附加到存储池。(更准确地说,您能但现有卷不会使用新磁盘进行日志记录。)
要创建具有存储层的存储空间,虚拟磁盘必须使用固定配置,并且两个层上的列数相同(具有存储层的四列双向镜像需要八个固态驱动器和八个硬盘驱动器)。
但,存储层与我的实现无关,因为:“使用存储层时,不支持奇偶校验布局。” 真的吗,MS?在我看来,有点错过了整个分层事物的要点。
此外: