存储 频道

纠删码:确保RAID失效后的数据可用性

  【IT168 技术】纠删码是一种前向纠错技术,几十年来一直以多种方式被使用,现在这项技术正逐渐应用于一种新的高容量存储系统中,用以解决RAID的局限性。

  RAID在保护大容量驱动器中的数据时有一些后继无力,因为RAID技术是在1GB驱动器出现前发明的。其基本理念是将数据分散在这些小的驱动器上,因此单个硬盘故障不会导致数据丢失。

  当今的高密度磁盘驱动器让数据保护变得更加复杂了过去的20年间,驱动器的密度增加了两万多倍。企业级存储系统装有的单个驱动器容量就达2TB或3TB。此外,存储容量成本也很大程度地降低了:一个2TB的SATA驱动成本约为$100。

  分析:用更大的磁盘改变RAID的施展空间

  这些新的高密度驱动的成本/容量使让比过去更具吸引力的价格将大量数据存储到旋转存储介质中提供了可能。那么,将大规模的数据保存到高密度驱动上,比如说P级别甚至更大容量的数据会出现什么问题呢?

  目前的1TB 和 2TB磁盘驱动器中,RAID很容易导致数据丢失,因为RAID的重建过程很长,需要一天甚至更长的时间来完成某些安装启用。如果任务的优先级较低,保证正常I/O性能时,重建过程甚至会更长。

  如果磁盘驱动器密度继续增加,重建时间会长达数周也是不足为奇的。随着驱动器数量在可控范围内不断的增加,根据磁盘驱动器标准年故障率不高于3%的行业标准,一些用户或许会不断地进行RAID重建。

  在RAID-5上增加第二层保护,也就是现在的RAID-6,这个方法使得即使两个磁盘驱动器同时发生故障,数据也不会丢失。这是为了应对驱动密度增加到几万兆字节出现的技术。

  处理大量磁盘驱动器尤其是长时间重建的时候,第二个驱动器故障(RAID-5组中),或第三个驱动器故障(RAID-6组中)出现的可能性会大大增加。此外,重建RAID组的时候,如果系统碰到一个不可恢复的读错误(URE)将导致数据丢失。丢失6个或以上的磁盘驱动器,并且每个上面存有1T容量或更多的数据的话,这对企业而言,必然会造成灾难性的后果。

0
相关文章