Raid 0,1,5,6,10之间有什么性能差异?

我曾经听过/读过各种突袭风格的不同演出故事。 我很好奇最好的答案是什么。

一个值得检查的位置是StorageReview.com的RAID级别比较

但重点是答案:

 LEVEL |  CAPACITY | 存储| 失败|  RDM READ |  RDM WRITE |  SEQ READ |  SEQ WRITE |
 0 |  S * N |  100%|  0 |  **** |  **** |  **** |  **** |
 1 |  S |  50%|  1 |  *** |  *** |  ** |  *** |
 5 |  S *(N-1)|  (N-1)/ N |  1 |  **** |  ** |  *** |  *** |
 6 |  S *(N-2)|  (N-2)/ N |  2 |  **** |  * |  *** |  ** |
 0 + 1 |  S *(N / 2)|  50%|  1 |  **** |  *** |  **** |  *** |

传说:
容量:驱动器的大小
存储:实际可用的所有驱动器上的空间量
失败:可能失败的驱动器数量

同意最佳答案…

我会说它是特定于应用程序的。 如果你是一个玩家想要加快速度并注意风的话,那么RAID0真是太棒了! 如果你的数据不重要,谁会在乎呢?

RAID1正好相反; 它提供了所有数据的热备份,并且可以承受单个磁盘故障,从而减less数据丢失的概率。

RAID5和RAID6更昂贵(需要更多的磁盘),但是具有能够承受磁盘损耗的好处,同时提供方便的速度增加。 用RAID5将数据丢失的概率减半,并用RAID6将其减半(可以承受两个丢失的磁盘和function)。

当涉及到RAID1 + 0与RAID5 / 6时,RAID5 / 6将提供比RAID1 + 0更高的速度提升(由于更高级别的条带化),但在磁盘丢失的情况下可能会减慢速度(因为数据必须通过奇偶校验信息重build)。但是,在磁盘丢失的情况下,RAID1 + 0不会失去任何速度(因为镜像集没有太多的带宽增益)。

至于恢复从破坏集(1 + 0,5和6)function1 + 0将是最容易这样做。 您只需要将镜像驱动器中的数据复制到新驱动器,而使用RAID5 / 6时,arrays中的所有驱动器都将参与重新创build丢失的磁盘数据。

希望这有助于:)

Chealion的答案是完美的,但我会补充说,你的问题的答案(什么是最好的),主要取决于三个因素:

  • 成本
  • 优先
  • 工作量

最便宜的解决scheme(也可以使用最less数量的磁盘进行操作)是RAID 0和1,分别针对速度和数据丢失进行了优化。 更昂贵的解决scheme需要更多的驱动器,更多的电源,更多的散热以及更昂贵的RAID控制器。 使用基于主板(基于软件)的​​RAID与购买真正的数百美元的电池支持的RAID控制器不同(并且比较慢),这种控制器会将大部分的繁重工作转移到硬件上。

优先级是指您对数据丢失/速度/容量的重要性(select任意两个)。 如果你有4个500GB硬盘,configuration为RAID 0,那么你将拥有2TB的容量,略低于单个硬盘的4倍。 但是,如果这些驱动器中的任何一个发生故障,您的所有数据都将丢失。 如果使用与RAID 1相同的4个驱动器,则只具有单个驱动器的容量和速度,但是可能有三个驱动器发生故障,并且不会丢失任何数据。 RAID 0或1与这么多的驱动器将是有点浪费,而像RAID 5或10等级是一个很好的中间地带。

最后,工作量有所改变。 RAID 5和RAID 6的写入速度比其他几个RAID级别慢,这是因为每次写入都必须计算和写入校验和(而读取速度与主轴速度一样快)。 一些工作负载(例如数据库)可能会非常写入密集型,运行RAID 5可能会使性能出现明显的差异。 写入密集型工作负载通常在RAID级别(如10,50,60等)下工作得更好。其他工作负载(例如Web服务器)主要是读取密集型的,写入不是优先级。 在这种情况下,使用比5更便宜的RAID级别比投资RAID 10/50/60所需的硬件更有意义。

请帮我填写这个! 我正在把这个表作为一个社区维基。 我没有看到降价的方法,我不希望每个人都重蹈覆辙。 所以请帮我填写(如果我有错误,请修复)。

各种RAID级别的理论读/写性能:

|_____No_Failures____|_____One_Failure______ ________|_Read_____|__Write__|__Read____|___Write___ RAID0 | 1x - Nx | Nx | FAIL | FAIL RAID1 | Nx | 1x | (N-1)x | 1x | | | | RAID5 | | | | RAID6 | | | | | | | | RAID1+0 | | | | 

一般而言,0是最快的,然后是10,然后是1,然后是50,然后是60,然后是5,然后是6,再次,这些都是一般的。 看一下像anandtech.com或tomshardware.com这样的站点,以获得有关磁盘/arrays特定types和速度的更详细的细分。

我已经看到RAID6的实现速度和RAID5一样快,有些速度慢了许多倍。 使用RAID6时,必须非常小心地进行testing – 如果它正常工作,这是正确的select,但这可能是一场灾难。

任何build议anandtech或tomshardware严肃的build议,如此应避免。 这些是严重的问题,这些网站不做严肃的testing。 他们是笑话。 也许他们开始合法,但他们根本不是现在。

我已经看到随机写入工作负载大量的高速caching,其中RAID5与RAID1 + 0一样快,甚至更快。 这是因为数据正在以足够低的速度写入(大量写入,但是所有小块),caching可以将其刷新到磁盘。

如果你真的在意你必须testing你的工作量。

如果速度是唯一的担忧,那么RAID0不会比较。 但是只关心速度是很less见的。 RAID0根本没有冗余,并且比单个驱动器更有可能失败,所以要小心使用它。