RAID DP(其中P代表一个奇偶盘和DP表示的双奇偶校验盘)
RAID 6的受欢迎程度远不及RAID 5,到本世纪初甚至已少有人知。原因并不复杂:RAID 6采用双重校验,在一个RAID组中需要“浪费”两台硬盘驱动器的容量来保存校验数据,写入数据的速度亦因此而受到更大的影响。既然所消耗的磁盘空间超过 RAID 5,并有明显的性能下降,RAID 6遭到冷遇也就不足为奇了。
直到上世纪90年代末,RAID 5还是SCSI/FC硬盘的领地,它们的可靠性很高,一个RAID组内同时坏掉两台硬盘驱动器的几率不大。另一方面,为了保证性能,有些大型数据仓库(OLTP类应用)甚至舍RAID 5而RAID 1。在这种情况下,效率和性能都有所不及的RAID 6自然难觅出头的机会。
2001年之后,SATA RAID的异军突起给RAID 6带来了“咸鱼翻生”的契机。SATA硬盘驱动器的容量动辄几百GB(现在已达1TB),速度又相对较慢,完全访问一遍至少要几个小时,加之可靠性没有 SCSI/FC硬盘驱动器那么高,坏掉一台硬盘驱动器的RAID组在重建过程中,“幸存者”们再有个三长两短的可能性要大很多。正所谓“祸兮福所倚”,RAID 6由此获得了再战江湖的主要推动力。
人们对“双保险”的需求使RAID 6重获关注,但并非每种能够容忍两台硬盘驱动器(同时)离线的技术都属于RAID 6。不过,由于RAID 6的“名头”过于响亮,引得惠普(HP)的RAID 5 ADG和NetApp的RAID-DP等技术都来搭顺风车,客观上也壮大了RAID 6的声势。
ADG是Advanced Data Guarding的简写,即“高级数据保护”,其历史可以追溯到康柏(Compaq)时代。RAID 5 ADG与RAID 5一样将校验数据分散在所有的硬盘驱动器上,只是多了一重校验,并需要增加一块硬盘驱动器来保证同样的有效存储空间,因而从血统上来说,RAID 5 ADG符合RAID 6的传统定义。当初RAID 6的知名度还不高,用“ADG”的称呼对市场宣传比较有利,现在改成“RAID 6 (ADG)”的写法也无可厚非。
RAID-DP是在RAID 4的基础上发展而来,继承了后者的独立校验盘设计,区别在于校验盘增加了一个,形成Double-Parity,明明白白地告诉大家是“双重校验”。从这个意义上来说,RAID-DP不能算RAID 6,然而两者所用的算法却有一定的渊源。
很多种算法都可以实现RAID 6,其中就有一种在横向和斜向两个方向上进行XOR(异或)运算的Dual-XOR算法,横向当然是与RAID 5一样了,区别在于斜向,所以也被称为“对角线算法”。它的校验数据生成过程相对简单,但在两台硬盘驱动器掉线的时候,只能支持逐个数据块的恢复,而且不同条带之间还要一起参与计算(斜向嘛)。这种做法在分布式校验的环境中很是麻烦,却很适合独立校验的口味,于是成为了RAID-DP的基础。
真正被广为接受的还是基于P+Q的RAID 6算法。这个P么,就是RAID 5的那个P(Parity),也即同一条带中全部原始数据(当然不包括Q)的XOR运算结果。至于多出来的Q,则是同一条带中其他数据(包括P)进行伽罗华域(Galois Field,简称GF,有限域)乘法运算的结果。
P+Q算法的优势在于恢复数据相对简单。在一台硬盘驱动器掉线时,丢掉原始数据或P内容的条带,与RAID 5一样利用XOR恢复数据;丢掉Q域的条带,利用GF变换的逆运算恢复数据。而如果有两台硬盘驱动器掉线,就需要同时使用XOR和GF变换来恢复数据了。
然而,无论采用哪种算法,RAID 6都比RAID 5需要更多的计算资源。如果I/O处理器(IOP)没有对此进行专门的优化,性能下降显然是不可避免的。
RAID-DP 提供以下显著优势:
最大程度地提高数据保护。如果采用 NetApp RAID-DP,双磁盘故障带来数据丢失的可能性是 RAID 5 配置的数百分之一。尽管 RAID 1+0 能够提供优于 RAID 5 的数据保护,但是在发生双镜像磁盘故障时,仍然存在数据丢失的风险。RAID-DP 可以提供 100% 的双磁盘故障保护,成本仅为 RAID 1+0 的一半。
成本最低。RAID 5 实施通常会将 RAID 组大小限制在 3+1 或 5+1 内(表示成本开销在 17% 到 25% 之间)。而 RAID 1+0 要求的组大小为 1+1(50%的开销)。相比之下,NetApp 支持的 RAID 组大小可达 28 (26+2) 个磁盘,而只需 7% 的容量开销。
卓越的性能。如前所述,与之竞争的其他奇偶校验技术可能会明显降低写入性能,并且可能最适合“主读”型的应用程序。相较于单奇偶校验 RAID,作为 NetApp 默认选项的 NetApp RAID-DP 带来的性能损失几乎为零,并且适用于所有工作负载。
无软件许可费用。RAID-DP 功能是所有 NetApp 系统中的标准功能。您无需花费额外成本即可使用该功能,节省的成本可用于添加奇偶校验磁盘,而使用更大的 RAID 组可抵消这笔开支。
如何在 Netapp Data ONTAP 中实施 RAID-DP
与 NVRAM 和 WAFL 紧密集成
在 Data ONTAP 中实施 RAID-DP 与 NetApp NVRAM 和 NetApp WAFL?(任意位置写入文件布局)紧密相关。这是通过 RAID-DP 获得优于其他 RAID 6 实施的卓越性能的关键所在。
因为写入内存的速度远远快于写入磁盘,所以存储系统供应商通常使用电池后备、非易失性 RAM (NVRAM) 来缓存写入并提高写入性能。NetApp 在其所有存储系统中都提供 NVRAM,但是 NetApp Data ONTAP 操作环境使用 NVRAM 的方式明显不同于典型的存储阵列。
NVRAM 用作 Data ONTAP 自上个一致点接收的写入请求的日志。每隔几秒钟,Data ONTAP 就会创建一个称为一致点的特殊 Snapshot? 副本,即磁盘上文件系统的完全一致映像。因为 Data ONTAP 绝不会覆盖现有磁盘块,所以即使在向磁盘写入新块时,一致点也会保持不变。凭借此方法,当发生故障时,Data ONTAP 只需恢复到最近的一致点,然后回放来自 NVRAM 的写入请求的日志。
相对于传统的存储阵列,这是 NVRAM 一个非常不同的使用方式,即在磁盘驱动程序层缓存写入请求,这样可带来以下几项优势:减少所需的 NVRAM 数量、缩短对编写程序的响应时间并支持优化写入磁盘。
声明: 此文观点不代表本站立场;转载须要保留原文链接;版权疑问请联系我们。