Raid 0、Raid 1、Raid 5、Raid6、Raid 10 读/写性能?

Raid 0、Raid 1、Raid 5、Raid6、Raid 10 读/写性能?

假设单个磁盘具有基线1W1R性能,不同的 RAID 配置如何表现?

我最初的猜测:

Raid 0: 2W 2R 
Raid 1: 1W 2R
Raid 5:  ?  ?
Raid 6:  ?  ?
Raid 10: ?  ?

更新:

假设:

  • 使用硬件 RAID
  • 需要最少数量的磁盘,例如 Raid5 需要 3 个磁盘

答案1

  • R0:环比表现大约翻倍
  • R1:对写入没有或仅有轻微的负面影响,对随机读取的影响为 1-1.7(估计)倍
  • R10:大致将所有东西都翻倍...(使用 linux mdadm 和一些调整,您可以将连续读取次数增加三倍)
  • R5 3驱动器:与R0 2驱动器相同(假设您的控制器足够强大)
  • R6 4drive:与 R0 2 drive 相同(假设您的控制器足够强大)

由于写入更改需要执行读取-修改-写入操作,因此 R5 和 R6 都会大大降低小规模(随机)写入的性能。

维基百科文章中有很多你正在寻找的信息标准 RAID 级别

答案2

使用 raid 0,理论上可以获得两倍的读写性能,但实际上这确实取决于工作负载。raid 1 不会为您提供额外的写入性能,我不确定它是否会为您提供额外的读取性能(它可能从两个磁盘读取,但我不知道它是否会)。

对于 raid 5/6,这不仅仅取决于磁盘数量。每次读取或写入将导致至少使用两个(raid 6 为三个)磁盘,并且您还需要计算资源(CPU 或 raid 卡)来计算和验证奇偶校验。

所有这些都省去了 RAID 控制器上的(电池供电的)写缓存。这也可以大大提高性能(事实上,如果没有它,我的许多数据库都无法运行!),而且这种性能提升与 RAID 级别或磁盘数量关系不大。

因此,找到问题实际答案的唯一方法是尝试一下,调整缓存设置并调整文件系统。没有任何理论答案是正确的,因为大多数行为在很大程度上取决于应用程序和配置。

答案3

它是非线性的,取决于磁盘数量(RAID-5 可以≥3 个磁盘)、条带大小、工作负载等。因此,这是完全错误的性能评估方法。

但通常考虑的是逻辑磁盘上单次写操作所涉及的R/W操作次数。

相关内容