数据文件的 RAID10 与 RAID5

Zer*_*net 5 performance sql-server disk-structures sql-server-2008-r2 sql-server-2012

我们正在尝试评估通过将现有应用程序 .mdf 文件切换到 RAID10 LUN 与他们目前使用的现有 RAID5 LUN 可以获得的潜在性能改进。事务日志已经存在于 RAID10 LUN 上。

所以问题是,如果我们将数据文件移动到 RAID10,最终用户会在 GUI 中看到性能改进吗?或者当检查点发生并且更改被写入数据文件时写入数据文件会更快,但在最终用户级别不会看到任何改进?

Rob*_*ley 6

这里需要考虑两种类型的活动:读取和写入。

正如您正确指出的那样,MDF/NDF 写入是通过检查点过程完成的,用户的事务时间不应受到影响。

当所需的数据尚未在 RAM 中(在缓冲区缓存中)时,就会发生读取。因此,理想情况下,用户活动不应经常受到影响。但是当它是时,无论是 RAID 10 还是 5,都可以非常快地获取数据。RAID 5 的痛点是写入而不是读取。

但是,如果您丢失了磁盘 - 那怎么办?

使用 RAID 10 不会有性能损失。放入替换磁盘后,会在其上复制镜像。使用 RAID 5,每次读取都需要进行一些数学运算。而当新磁盘到来时,它必须大量读取和写入。

但 RAID 5 更便宜。1TB 的磁盘将为您提供 800GB 的空间(取决于您的设置),但 RAID 10 只能为您提供 500GB。不过,磁盘活动稍微贵一些。

将数据文件(而不是日志)放在 RAID 5 上“很好”。但如果磁盘足够便宜,RAID 10 会更好。

  • RAID 5 降级操作的数学计算很简单:它只是一堆 XOR,现代 CPU 应该能够以 GB/s 的速度进行。降级操作期间的减速来自累积数据:为了重建故障磁盘上的内容,您需要从阵列中的每个其他磁盘读取。 (3认同)