副本和EC

举报
snowofsummer 发表于 2020/08/25 13:35:54 2020/08/25
【摘要】 副本和EC存储系统支持多副本和Erasure Coding数据冗余保护方式,即在多副本和EC故障冗余范围内,当物理设备出现故障时,数据仍可被正常访问,并自动恢复故障设备上的数据。用户可根据需求灵活选择数据冗余保护方式,实现数据可靠性和存储空间利用率的最佳配比。传统的硬盘级RAID模式将数据存放于单节点内的不同硬盘,当整节点发生故障时,无法有效恢复数据。存储系统将数据在节点间进行冗余保护或副本...

副本和EC

存储系统支持多副本和Erasure Coding数据冗余保护方式,即在多副本和EC故障冗余范围内,当物理设备出现故障时,数据仍可被正常访问,并自动恢复故障设备上的数据。

用户可根据需求灵活选择数据冗余保护方式,实现数据可靠性和存储空间利用率的最佳配比。传统的硬盘级RAID模式将数据存放于单节点内的不同硬盘,当整节点发生故障时,无法有效恢复数据。存储系统将数据在节点间进行冗余保护或副本构建,有效避免数据丢失。


相同容错能力下,Erasure Coding比多副本模式的空间利用率高,多副本比Erasure Coding的系统性能好,用户可根据实际情况选择存储池的数据冗余方式。

多副本

存储系统支持二副本和三副本,实现过程以三副本为例,如图1-2所示。

图1-2 多副本的基本原理
image.png

  1. 当写入数据时,每个数据构建与之完全相同的两个副本;

  2. 数据和两个副本分别写入三个存储节点中。

    表1-2 多副本定义

    模式

    模式描述

    硬盘利用率范围

    模式所需最少节点数

    两副本

    每个数据构建1个副本,在服务器安全下,允许任意1个存储节点,或在机柜级安全下,任意1台机柜故障而不影响数据完整性。

    50%

    3

    三副本

    每个数据构建2个副本,在服务器安全下,允许任意2个存储节点,或在机柜级安全下,任意2台机柜故障而不影响数据完整性。

    33%

    3


    • 两副本模式时,节点故障后,延迟60分钟启动重构。

    • 三副本模式时,节点故障后,延迟7天启动重构。

Erasure Coding

存储系统Erasure Coding的保护级别以N+M模式表达,其中,N表示数据分片个数,M表示校验分片个数。存储系统支持N+2、N+3、N+4保护级别,保护级别及模式详情见表1-3

实现过程以N+2级别(N取值为4)为例进行说明:

  • 当存储节点个数大于等于N+2时,其基本原理如图1-3所示。

  • 当存储节点个数大于等于(N+2)/2同时小于N+2时,以3个存储节点配置4+2为例进行说明,其基本原理如图1-4所示。

图1-3 Erasure Coding的基本原理(4+2级别)
image.png

  1. 将所存入的数据切分为4个数据分片;

  2. 以4个数据分片为一组,通过计算生成2个校验分片;

  3. 再将数据分片和校验分片以冗余配比的形式写入到6个存储节点中。

图1-4 Erasure Coding的基本原理(4+2:1级别)
image.png

  1. 将所存入的数据切分为4个数据分片;

  2. 以4个数据分片为一组,通过计算生成2个校验分片;

  3. 再将数据分片和校验分片以冗余配比的形式写入到3个存储节点中。

表1-3 保护级别定义

模式

模式描述

硬盘利用率范围

模式所需最少节点数/机柜数

N+2

每个数据包括N个数据分片和2个通过计算生成的校验数据。

  • 服务器级安全

    • 节点个数大于等于N+2时,允许同时故障2个存储节点,或者允许同时故障2块主存盘。

    • 节点个数大于等于(N+2)/2向上取整且小于N+2时,允许同时故障1个存储节点,或者允许同时故障2块主存盘。

  • 机柜级安全

    • 机柜个数大于等于N+2时,允许同时故障2个机柜,或者允许同时故障2个存储节点。

    • 机柜个数大于等于(N+2)/2向上取整且小于N+2时,或者允许同时故障1个机柜,或者允许同时故障2个存储节点。

N的范围为:4、6、8、10、12、14、16、18、20、22

66.66%~91.67%

  • 服务器级安全

    最小节点数:(N+2)/2向上取整

  • 机柜级安全

    最小机柜数:(N+2)/2向上取整

N+3

每个数据包括N个数据分片和3个通过计算生成的校验数据。

  • 服务器级安全

    • 节点个数大于等于N+3时,允许同时故障3个存储节点,或者允许同时故障3块主存盘(N的范围为:6、8、10、12、14、16、18、20)。

    • 节点个数大于等于(N+3)/3向上取整且小于N+3时,允许同时故障1个存储节点,或者允许同时故障3块主存盘(N的范围为:6、8、12、14、18、20)。

  • 机柜级安全

    • 机柜个数大于等于N+3时,允许同时故障3个机柜,或者允许同时故障3个存储节点(N的范围为:6、8、10、12、14、16、18、20)。

    • 机柜个数大于等于(N+3)/3向上取整且小于N+3时,允许同时故障1个机柜,或者允许同时故障3个存储节点(N的范围为:6、8、12、14、18、20)。

66.66%~86.9%

  • 服务器级安全

    最小节点数:(N+3)/3向上取整

  • 机柜级安全

    最小机柜数:(N+3)/3向上取整

N+4

每个数据包括N个数据分片和4个通过计算生成的校验数据。

  • 服务器级安全

    • 节点个数大于等于N+4时,允许同时故障4个存储节点,或者允许同时故障4块主存盘(N的范围为:8、10、12、14、16、18、20)。

    • 节点个数大于等于(N+4)/4向上取整且小于N+4时,允许同时故障1个存储节点,或者允许同时故障4块主存盘(N的范围为:8、12、16、20)。

  • 机柜级安全

    • 机柜个数大于等于N+4时,允许同时故障4个机柜,或者允许同时故障4个存储节点(N的范围为:8、10、12、14、16、18、20)。

    • 机柜个数大于等于(N+4)/4向上取整且小于N+4时,允许同时故障1个机柜,或者允许同时故障4个存储节点(N的范围为:8、12、16、20)。

60%~83.33%

  • 服务器级安全

    最小节点数:(N+4)/4向上取整

  • 机柜级安全

    最小机柜数:(N+4)/4向上取整

注1:保护级别以N+M模式表达。其中,N表示数据分片个数;M表示校验分片个数。

注2:同一模式下,N越大,磁盘利用率越高。


  • N+M模式且节点个数大于等于N+M时,节点故障后,延迟7天启动重构。

  • N+M模式且节点个数小于N+M时,节点故障后,延迟60分钟启动重构。


【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。