美文网首页
关于独立磁盘冗余阵列RAID

关于独立磁盘冗余阵列RAID

作者: WM8 | 来源:发表于2017-04-25 20:46 被阅读0次

      为了提高运行速率,CPU频率不断提高,但由于发热问题已达到瓶颈,从而导致开发产商转而研究多核处理器,从并行方面提高运行速率;

      同样地,为了提高对磁盘的读取速率,磁盘阵列出现了。通过多个磁盘,多个独立的I/O请求可以并行地进行处理,只要他们所需的数据驻留在不同的磁盘中。此外,如果要访问的数据块分布在多个磁盘上,I/O请求也可以并行地执行。

      但是磁盘阵列的安全性是一个问题:如果阵列中的某个磁盘损坏,则整个盘区的数据都将永久丢失,这样的损失是巨大的,对此,RAID7级方案(0-6)出现了。这里只介绍RAID0、RAID1、RAID4、RAID5、RAID6。对其他方案感兴趣的可以自己查阅有关资料。

    RAID0(无冗余):把数据分块,一次放入多个磁盘中,没有冗余,存储速率高,磁盘利用率为100%,不允许出错。简单地说,RAID0就是磁盘的并行化。

    RAID 0

    RAID1(镜像):磁盘并行化后对数据进行成对备份,有效数据只占50%。

    RAID 1

    RAID4(块奇偶校验):对每个有效数据磁盘中相应的条带计算一个逐位奇偶校验,奇偶校验位保存在奇偶校验磁盘相应的条带中。也即前几个数据磁盘储存有效数据,最后一个磁盘储存前面的所有磁盘的异或值,利用异或运算的性质(参与运算的n个数字(包括结果值),知道任意n-1个可以计算出未知的哪一个),可以在某个磁盘数据丢失时恢复数据,磁盘利用率为(n-1)/n,只容许一个盘出错。但奇偶校验磁盘的存在对写入少量数据时会产生额外的开销:既要修改有效数据所在的磁盘,也要修改奇偶校验磁盘的数据。对此有一些技巧,但对小写数据的处理研究还在进行中:

            如果有7个磁盘组成一个并行磁盘阵列,前6个1-6储存有效数据,第7个磁盘P(1-6)储存异或结果,则有:

            1⊕2⊕3⊕4⊕5⊕6=P(1-6)

            2⊕3⊕4⊕5⊕6=P(1-6)⊕1

            1'⊕2⊕3⊕4⊕5⊕6=P(1-6)'

            所以数据更新后的奇偶校验位P(1-6)'=1'⊕1⊕P(1-6)


    RAID 4

    RAID5(块分布奇偶校验):组织形式类似RAID4,但与RAID4相比,校验值随机分配在所有磁盘中,利用率为(n-1)/n,只容许一个盘出错,但能较好地做到负载均衡,避免RAID4中一个奇偶校验磁盘潜在的I/O瓶颈问题。

    RAID 5

    RAID6(双重冗余):采用两种不同的奇偶校验计算并保存在不同磁盘的不同块中,利用率为(n-2)/n,容许2个盘出现错误,但是会有较严重的写性能损失,因为每次写操作除了影响相应的数据块外还会影响两个校验块。读性能与RAID5相当。

    RAID 6

    最后附上数据布局的动画展示:www.acnc.com/raid

    相关文章

      网友评论

          本文标题:关于独立磁盘冗余阵列RAID

          本文链接:https://www.haomeiwen.com/subject/fzqbzttx.html