您好,欢迎来到12图资源库!分享精神,快乐你我!我们只是素材的搬运工!!
  • 首 页
  • 当前位置:首页 > 开发 > WEB开发 >
    分布式存储系统可靠性:系统量化估算
    时间:2021-08-02 21:29 来源:网络整理 作者:网络 浏览:收藏 挑错 推荐 打印

     

    分布式存储系统可靠性:系统量化估算

    一、引言

    我们常常听到权衡散布式存储系统好坏的两个目的:可用性和牢靠性目的。

    可用性指的是系统效劳的可用性。普通按全年可用时间除以全年时间来权衡可用性的好坏,往常我们说的 SLA目的就是可用性目的,这里就不展开细说。

    牢靠性目的指的是数据的牢靠性。我们常说的数据牢靠性11个9,在对象存储中就意味着存储一千亿个对象大约会有1个文件是不可读的。由此可见,数据牢靠性目的给散布式存储系统带来的应战不言而喻。

    本文就重点来剖析一下散布式系统的数据牢靠性的量化模型。

    二、背景

    数据的重要性不必多说,基本上数据可以称得上是企业生命力的中心,是企业赖以生活的基本。因此数据的牢靠性是基础的基础,任何数据的丧失都会给企业形成无法计算和补偿的损失。

    随着数据规模的日益增大,环境愈加复杂,我们大体可以把威协数据牢靠性的要素归为几大类:

    硬件缺点:主要是磁盘缺点、还有网络缺点、效劳器缺点、IDC缺点;

    软件隐患:内核BUG,软件设计上的BUG等;

    运维缺点:人为误操作。

    其中,第1类的硬件缺点中又以磁盘缺点最为频繁,坏盘关于从事散布式存储运维的同窗来说再正常不过了。

    因此,我们接上去从磁盘缺点这个维度来尝试量化一下一个散布式系统的数据牢靠性。

    三、数据牢靠性量化

    为了提高数据的牢靠性,数据正本技术和EC编码冗余技术是散布式系统牢靠性最常用的手腕了。以多正本为例,正本数越多,数据的牢靠性一定越高。

    为了对散布式系统的数据牢靠性作一个量化预算,进一步剖析失掉影响存储数据牢靠性的要素主要有:

    N:散布式系统磁盘的总数,可以很直观了解,磁盘的数量是和牢靠性强相关,N的大小与数据的打散水平有很大关系。

    R:正本数,正本数越高数据的牢靠性一定越高,但同时也会带来更大的存储成本。

    T:RecoveryTime出现坏盘状况下数据恢复的时间,这个也很好了解,恢复时间越短,数据的牢靠性越高。

    AFR:Annualized Failure Rate磁盘的年度缺点率,这个和磁盘本身的质量相关,质量越好,AFR越低,数据的牢靠性越高。

    S:CopySet数量,一个盘上的数据的冗余在集群中的打散水平,打得越散,则有能够恣意坏3块盘就刚好有数据的冗余数据都丧失。所以,仅从打散水平这个维度看,打散水平越小越好。

    因此,我们可以用一个公式表示散布式系统的全年数据牢靠性:

    分布式存储系统可靠性:系统量化估算

    3.1 磁盘年缺点率:AFR

    AFR:Annualized Failure Rate又称为硬盘年度失败概率,普通用来反映一个设备在全年的运用出缺点的概率,可以很直观的了解,AFR越低,系统的牢靠性越高,由于AFR与系统的数据牢靠性强相关;而这个目的通常又是由另一个磁盘质量目的MTBF(Mean Time Before Failure)推算出来,而MTBF各大硬盘厂商都是有出厂目的的,比如说希捷的硬盘出厂的MTBF目的为120W个小时。以下为AFR的计算公式:

    分布式存储系统可靠性:系统量化估算

    但是实践运用当中往往MTBF会低于硬盘出厂目的。Google就依据他们的线上集群的硬盘状况停止了统计计算AFR如下:

    分布式存储系统可靠性:系统量化估算

    ( 5年内硬盘AFR统计状况 )

    (图片来自  )

    3.2 正本数据复制组:CopySet

    正本数据复制组CopySet:用深刻的话说就是,包含一个数据的一切正本的节点,也就是一个copyset损坏的状况下,数据会丧失。

    分布式存储系统可靠性:系统量化估算

    (单个数据随机复制分组表示图)

    (图片来自 https://www.dazhuanlan.com )

    如图2所示,以9块盘为例,这9块盘的copyset就是:{1,5,6},{2,6,8},假设不做任何特殊处置,数据多了之后,数据的随机散布如下:

    分布式存储系统可靠性:系统量化估算

    (海量数据随机散布表示图)

    (图片来自 https://www.dazhuanlan.com )

    最大CopySet:如上图所示,12个数据的多正本随机打散到9块盘上,从上图中任决意挑3块盘都可以挑出包含某个数据的三个正本,就相当于从n个元素中取出k个元素的组合数量为:

    分布式存储系统可靠性:系统量化估算

    最大的CopySet配置下一旦有三块磁盘坏了,丢数据的概率是100%。另外一种状况,数据的散布是有规律的,比如一块盘上的数据只会在另外一块盘上备份,如下图所示,在这种状况下数据掩盖的CopySet只要(1,5,7)、(2,4,9)、(3,6,8)也就是说这种状况下CopySet为3。我们不难了解,9块盘的最小CopySet为3。也就是N/R。

    分布式存储系统可靠性:系统量化估算

    (磁盘粒度冗余散布表示图)

    因此,CopySet数量S契合以下:

    分布式存储系统可靠性:系统量化估算

    (责任编辑:admin)