更新时间:2024-03-25 GMT+08:00

云硬盘三副本技术

什么是三副本技术?

云硬盘的存储系统采用三副本机制来保证数据的可靠性,即针对某份数据,默认将数据分为1 MiB大小的数据块,每一个数据块被复制为3个副本,然后按照一定的分布式存储算法将这些副本保存在集群中的不同节点上。

云硬盘三副本技术的主要特点如下:
  • 存储系统自动确保3个数据副本分布在不同机柜的不同服务器的不同物理磁盘上,单个硬件设备的故障不会影响业务。
  • 存储系统确保3个数据副本之间的数据强一致性。

例如,对于服务器A的物理磁盘A上的数据块P1,系统将它的数据备份为服务器B的物理磁盘B上的P1''和服务器C的物理磁盘C上的P1',P1、P1'和P1''共同构成了同一个数据块的三个副本。如果P1所在的物理磁盘发生故障,则P1'和P1''可以继续提供存储服务,确保业务不受影响。

图1 数据块存储示意图

三副本技术怎样确保数据一致性?

数据一致性表示当应用成功写入一份数据到存储系统时,存储系统中的3个数据副本必须一致。当应用无论通过哪个副本再次读取这些数据时,该副本上的数据和之前写入的数据都是一致的。

云硬盘三副本技术主要通过以下机制确保数据一致性:

  • 写入数据时,同时在3个副本执行写入操作

    当应用写入数据时,存储系统会同步对3个副本执行写入数据的操作,并且只有当多个副本的数据都写入完成时,才会向应用返回数据写入成功的响应。

  • 读取数据失败时,自动修复损坏的副本

    当应用读数据失败时,存储系统会判断错误类型。如果是物理磁盘扇区读取错误,则存储系统会自动从其他节点保存的副本中读取数据,然后在物理磁盘扇区错误的节点上重新写入数据,从而保证数据副本总数不减少以及副本数据一致性。

三副本技术怎样实现数据快速重建?

存储系统的每个物理磁盘上都保存了多个数据块,这些数据块的副本按照一定的策略分散存储在集群中的不同节点上。当存储系统检测到硬件(服务器或者物理磁盘)发生故障时,会自动启动数据修复。由于数据块的副本分散存储在不同的节点上,数据修复时,将会在不同的节点上同时启动数据重建,每个节点上只需重建一小部分数据,多个节点并行工作,有效避免了单个节点重建大量数据所产生的性能瓶颈,将对上层业务的影响做到最小化。

数据重建流程如图2所示。

图2 数据自动重建流程

数据重建原理如图3所示,例如当集群中的服务器F硬件发生故障时,物理磁盘上的数据块会在其他节点的磁盘上并行重建恢复。

图3 数据重建原理

三副本技术和云备份有什么区别?

三副本技术是云硬盘存储系统为了确保数据高可靠性提供的技术,主要用来应对硬件设备故障导致的数据丢失或不一致的情况。

云硬盘备份不同于三副本技术,主要应对人为误操作、病毒以及黑客攻击等导致数据丢失或不一致的情况。建议您在日常操作中,采用云备份,定期备份云硬盘中数据。