副本和EC

网友投稿 1068 2022-05-28

副本和EC

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

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

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

多副本

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

图1-2 多副本的基本原理

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

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

副本和EC

表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级别)

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

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

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

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

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

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

再将数据分片和校验分片以冗余配比的形式写入到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分钟启动重构。

其他

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:给公司开发培训的MySql数据库优化方案
下一篇:【VR】(三)Unity3D中开发VR程序的流程
相关文章