与传统和遗产的存储系统,廉价磁盘冗余阵列或RAID一直长时间的手段确保磁盘上的数据是有弹性的,可以容忍的损失甚至整个磁盘阵列或多个磁盘数组中没有数据丢失。然而,随着当今硬盘容量的不断增长,以及软件定义存储的不断发展,行业不得不重新评估在软件定义解决方案中磁盘上或节点间保护数据的方式。一般有三种最新的保护存储系统的方法:

  • 突袭
  • 擦除编码
  • 复制

这些数据保护解决方案如何应用于存储系统?每一种的优点和缺点是什么?让我们更仔细地看看上述在存储系统中普遍实现的数据保护机制。

冗余廉价磁盘阵列(RAID)

任何在过去几十年里接触过传统存储系统或服务器架构的人都熟悉廉价磁盘冗余阵列(Redundant Array of Inexpensive Disks)或RAID。RAID允许将相对较少的磁盘分组到一个存储组中,并且通过使用分布在磁盘上的奇偶校验信息,能够在磁盘故障的情况下重新创建数据。目前有各种级别的RAID,它们能够提供良好的性能和可靠性,其中包括:

  • RAID1——这被称为“磁盘镜像”。需要至少(2)驱动器。(1 x)写处罚
  • RAID5—创建RAID5至少需要(3)个硬盘。可以抵挡(1)驱失。(4 x)写处罚。
  • RAID6—创建RAID6至少需要(4)块硬盘。可以承受(2)驱动器丢失。(5 x)写处罚。
  • RAID10—至少需要(4)块硬盘。结合条纹和镜像。没有奇偶性,是写的简单副本。

RAID技术包括奇偶校验,也实现了CRC纠错。这有助于确保没有由于损坏而导致的数据丢失。在今天的RAID阵列中,为了提高性能,通常使用某种类型的“缓存”位于RAID阵列前面,并允许在RAID奇偶校验执行之前确认“写”操作。有趣的是,RAID控制器本身既可能成为瓶颈,也可能成为额外的故障点。

下载的横幅

在考虑现代RAID阵列时,另一个需要考虑的问题是磁盘的大小。现代磁盘的可用大小呈指数级增长。今天有消费驱动达到了惊人的12TB!在考虑RAID阵列时,这一点非常重要,因为它直接影响磁盘故障时的重建时间。在过去的日子里,具有更小磁盘成员大小的RAID阵列可以在几分钟到几小时内重建故障磁盘。然而,使用多tb的驱动器,重建时间可能以天甚至星期计算!

在大多数企业数据中心环境中,这种过长的重建时间是不可接受的。在重建期间,由于重建期间的RAID阵列被称为降级状态,因此您更容易遇到另一个驱动器故障甚至数据损坏。在降级的RAID中,为了成功重建故障的硬盘,需要查询其他硬盘的数据,从而影响性能。

在过去的几十年里,RAID一直是企业数据中心的主要组成部分。然而,很明显,随着驱动器容量的增加和数据中心中使用更新的软件定义的工作负载,RAID作为存储系统的数据保护技术变得越来越不实用,而且不能很好地扩展。让我们来看看下一个用于保护存储系统和数据擦除编码的数据保护技术。

用于存储系统数据保护的擦除编码

如果您深入研究过软件定义存储的世界,您很可能会遇到术语—擦除编码。什么是擦除编码,它是如何工作的?术语“erasure code”指的是任何编码和分割数据到片段的方案,允许您恢复数据,即使有几个片段丢失。不要混淆这种比较,RAID本身就是一种擦除代码。RAID5奇偶校验是一种用位奇偶校验来理解的擦除码。

许多著名的擦除码都属于里德-所罗门纠错码,这是由欧文·s·里德和古斯塔夫·所罗门在1960年开发的。错误校正码使用多项式计算下的二进制算术(异或),以计算擦除码,允许重建数据。

用擦除编码,数据通常以10/16的比率编码。这相当于每10位数据被编码为16位。这允许在数据不可恢复之前丢失6部分数据。擦除编码通常对所有数据进行编码,这意味着剩余数据的任何部分都可以用来恢复丢失的数据。

我们在这里描述的擦除编码通常是通过所谓的独立节点冗余阵列(Redundant Array of Independent Nodes,简称RAIN)实现的。因此,这里我们将超越单一主机内的简单RAID阵列,更多地考虑扩展或软件定义的跨多个主机的系统。软件定义的存储解决方案,如VMware vSAN,采用擦除编码来保护节点之间的数据。

Erasure编码更适合扩展系统,但是,它确实会带来CPU开销和磁盘写方面的损失。这些传统的擦除编码的限制已经被今天的现代cpu的能力所抵消,这些cpu包括像SSSE3和AVX2这样的指令集,这些指令集使得擦除代码操作在今天的系统中非常高效。擦除编码的主要好处之一是,相对于复制,它有更好的空间效率。然而,这些空间效率的好处是以写放大为代价的。

用于数据保护的复制

在保护存储系统的情况下,每次写操作都是同步的,在存储系统的不同位置创建数据副本。复制可以像前面提到的那样部署在RAIN体系结构中。如果数据丢失,可以从另一个副本副本重新创建。复制有其自身的优势,包括比擦除编码更少的CPU密集型和更快的重建。写操作很简单,读取性能也可以提高,因为我们可以从多个位置提取数据。复制至少需要2倍的空间。在使用复制保护存储系统的同时,通过压缩和重复数据删除可以在一定程度上抵消空间成本。

最后的想法

在最新的企业数据中心中,当今的高性能和软件定义的存储工作负载需要超越传统技术来保护存储系统中的数据。虽然RAID已经被证明是一种可靠的数据保护手段,但它已经跟不上不断增长的硬盘大小以及在多个节点甚至站点之间扩展工作负载的需求。通过查看RAID、擦除编码和复制之间的差异,您可以看到存储系统的每种数据保护技术都有各种优点和缺点。今天的组织必须查看他们特定的工作负载,并使用适合特定用例的数据保护技术。无论在存储层使用何种数据保护,您仍然必须考虑使用能够保护在本文中提到的技术之上运行的生产工作负载的数据保护软件解决方案。这使您能够承受由于与硬件无关的灾难事件(如勒索软件攻击)造成的数据丢失。使用功能强大的数据保护解决方案,如Vembu BDR Suite,使用3-2-1备份方法保护工作负载。这允许您在不考虑灾难事件的情况下保持业务连续性。

体验现代数据保护与这个最新的Vembu BDR Suite v.3.8.0免费版。试用30天免费试用这里://www.brugalaccesorios.com/vembu-bdr-suite-download/

跟随我们的推特脸谱网为新发布,更新,见解深刻的帖子和更多的Feeds。