我有许多 I/O 负载非常重的服务器,目前使用 SATA3/SAS 驱动器,但 SATA 驱动器的 I/O 等待时间确实很长,我刚刚收到通知,1TB 的 SSHD 价格与我们目前使用的 1TB SATA 驱动器相同。但是,以前(直到 3 月份 Seagate 推出其首款 3.5 英寸 SSHD)它们似乎只用于上网本/笔记本电脑,这让我怀疑它们并非专为我的服务器的重度 I/O 而设计。
那么,在繁重的 I/O 环境中(例如多个非常大的高速文件传输),SSHD 是否会比 SATA3 硬盘提高性能,还是最好坚持使用 SATA3 并等待 I/O??
答案1
这在很大程度上取决于您的工作量。您所说的混合驱动器通常只有大约 8GB 的 SSD - 如果您反复读取和写入相同的约 8GB 数据,那么您将看到 SSD 性能。如果您进行大量传输,而数据只读取一两次(例如视频/媒体服务器),那么由于频繁的缓存未命中,您最好增加盘片存储。
SSHD 非常适合桌面用户(我的系统上有 5TB 的读取请求,其中 97% 都来自相同的 32GB),但文件服务器往往没有相同的使用模式。
如果您有大量顺序读/写和大量随机 I/O 的混合负载,那么我建议您查看 ZFS 并使用适当的磁盘和良好的 SSD。
作为参考,我最近使用 ZFS 设置了一个 5x4TB RAID 阵列,它可以与 SSD 进行顺序 I/O 的较量(10GB 文件的顺序读取平均速度为 450MB/s)。SSD 还充当写入/读取缓存,理论上如果一半的工作负载来自缓存,另一半来自磁盘,则可以提供 900MB/s 到 1GB/s 的速度。它实际上与非常大的 SSHD 相同,但您可以使用企业级硬件对其进行自定义和构建,并在单个部件发生故障时轻松更换它们。
注意:如果您使用 SSD 作为写入缓存,则应使用两个单独的 SSD 作为镜像写入缓存,以免丢失数据什么时候一个发生故障。您可以非常轻松地使用两个 256GB SSD,使用每个 SSD 中的 6GB 作为镜像写入缓存,然后使用剩余的 500GB 作为大型读取缓存。
答案2
配有 (8) 个英特尔 800 GB SSD 的服务器(直流 S3700)使用 RAID 6 会很不错。给你高达 4800 GB 的容量,容错能力为 2 个驱动器故障,这让我很有信心……所以,是的,我会在服务器上使用 SSD,但只使用 RAID 6。明智吗?聪明人每天都会做出愚蠢的选择……这只是为了钱!
答案3
简而言之如果您的文件缓存小于混合驱动器中的 SSD 缓存,恐怕您的服务器将无法从 SSHD/混合驱动器中受益。
您的操作系统有一个文件缓存句柄,用于保存文件以防止再次从磁盘读取。如果它可以处理超过混合驱动器中 ssd 缓存的大小,则您需要访问的内容已在文件缓存中。
检查文件缓存的大小Linux 命令免费或 Windows 中的任务管理器。
与他们保留的有些不同文件缓存和基于软件的混合处理文件,而基于固件的混合驱动器处理磁道扇区。基于软件的驱动器保存整个文件,即使您只需要读取其中的一部分,而固件仅保存指定要读取的数据。
公式给定 x 作为混合驱动器的 SSD 缓存大小变量,给定 y 作为访问混合驱动器的操作系统的文件缓存变量。当 x 大于 y 时,系统将受益于混合驱动器。
更多详情尺寸很重要硬盘和操作系统中的缓冲区和缓存解释了 SSHD 的 SSD 缓存大小