磁盘密度的增长速度远远超过了性能和可靠性方面的改善,一些存储网络行业人士甚至质疑RAID能够足够快地恢复故障磁盘以维持企业数据存储领域的相互关联性。
但是一些数据存储厂商选择了一种古老的方法来维持RAID的:分簇RAID(Declustered RAID),或者Parity Declustering,这是RAID先驱者Garth Gibson和Mark Holland在1992年的一份文件中提出的理念。
StorageIO Group创始人、高级分析师Greg Schulz表示:“我发现有趣的一点,如今RAID所面临的一些难题与十几年前是类似的。”
Schulz表示,这些问题包括:大容量磁盘驱动器的重建、分布式数据保护、可用性、性能和易用性。
分簇RAID的定义
分簇最早是针对镜像磁盘推出的,之后在卡内基梅隆大学的Gibson实验室中针对RAID 5阵列开发的。
高性能存储公司Panasas共同创始人、首席技术官卡Gibson表示:“分簇技术将小簇磁盘集群的一个RAID控制器替代成多个RAID控制器的集合,每一个都可以通过光纤通道或者iSCSI SAN访问所有磁盘。”
分簇技术因RAID的替换而有所不同,这样每个校验计算只涉及少数几个磁盘,这些磁盘的设置会根据每个磁盘的字位而有所变化。结果是,分簇RAID 5中的每对磁盘都涉及相同数量的RAID替换。
不同的RAID有不同的分簇技术,因此每个校验计算只涉及少数几个磁盘,
Gibson表示:“当一个磁盘发生故障的时候,每个磁盘都承担一部分恢复工作,分散到所有RAID控制器,而不是由一个RAID控制器和几个磁盘做所有恢复工作,而其他磁盘和RAID控制器不参与恢复工作。”
因为分簇技术还会将在线冗余空间分配给所有磁盘——而不是有几个在线冗余空间处于空闲状态,因此即使是在恢复故障磁盘过程中的写入操作也是分配到整个阵列的。
Gibson表示:“最终结果是,从一台计算机上的一个应用,到所有磁盘和所有控制器的并行计算和分布式计算,RAID都会有所变化。计算会完成的更快,或者它在恢复期间对用户性能的影响越来越小,或者两者兼有。”
解决RAID重建难题
存储、策略和系统资讯服务公司Silverton Consulting总裁Ray Lucchesi表示,驱动器重建时间的难题在于,重建一个1TB或者更大的磁盘驱动器所需的时间是按小时计算(如果不是按天的话),并且取决于存储系统和RAID组是否繁忙。
不过,通过创建更大的单校验RAID组(RAID条带中有更多磁盘盘片)、交错耦合RAID组或者使用拥有更多盘片的RAID 6等方法可以缩短重建时间。
但是对于一个大型RAID组来说,问题是数据覆写可能会引发校验磁盘上的性能瓶颈,因此RAID用户所面临的难题就是如何将大型RAID组更短的驱动器重建时间与小型RAID组更小的写惩罚两个特点结合起来。
Lucchesi认为,可以把校验分簇作为一种解决方案,因为它会在多个磁盘驱动器之间分布校验和数据,因此不会有一个磁盘来承担所有驱动器的校验。
这么做可以消除热驱动器现象,而这一般审核通过使用更小的RAID组来实现的。
Gibson表示:“问题的核心是,读取整个磁盘所花费的时间越来越长,每年增加大约20%。磁盘数据速率的增长速度逐渐落后于容量的增长,因此读取容量更大的磁盘就要花费更长的时间。”
由于磁盘容量越来越大,所以RAID系统恢复一个故障磁盘就需要更长时间。传统RAID系统通过从头到尾读取所有剩余磁盘、将缺失数据写入到在线冗余磁盘中来实现磁盘恢复。
Gibson表示,需要更长时间恢复故障磁盘和被取代磁盘是一件糟糕的事,这有两方面的原因。
首先,这意味着会危险期——更换故障磁盘和恢复其中内容的一段时间——变得越来越长。在这期间,可能会有更多故障导致数据丢失。而危险期的加长意味着数据可靠性降低。
其次,恢复是一项繁重的工作。这期间,有用的磁盘访问减少,用户工作负载的磁盘性能降低。恢复期越长,用户“事倍功半”的时间就越长。
结果就是,RAID系统需要更长时间恢复到全面保护状态,发生其他故障的几率和数据丢失的可能性也有所增加。
Gibson表示,Panasas的校验分簇技术将RAID从一个控制器和几个磁盘的本地操作转变成使用存储池中所有控制器和磁盘的并行算法。
通过由上万个单个磁盘阵列所组成的存储池,校验分簇技术能够将恢复速度提高十几倍甚至几百倍。它将工作细微地分配到每个磁盘中,减少恢复流程对并发用户工作的干扰。
将所有数据分布到多个磁盘中的方法并非Panasas独有的。其他掌握这项技术的厂商还包括EMC、Google、日立、惠普、IBM和Isilon。
特别声明:本站注明稿件来源为其他媒体的文/图等稿件均为转载稿,本站转载出于非商业性的教育和科研之目的,并不意味着赞同其观点或证实其内容的真实性。如转载稿涉及版权等问题,请作者在两周内速来电或来函联系。