小数点后11个9都避免不了人为错误。
随着越来越多的企业将重点任务数据转移到云端,云端平台必须提供高层次的可用性和持久性,保证您的数据在需要时保持可访问性和完整性至关重要。
以99.999999999999999999的耐久性和99.99%的对象可用性为目的。AmazonS3引用数字9(9s)作为数据保护和运营业绩水平的指标。
但是,各大云商之间似乎正在进行军备竞赛,每个供应商都试图达到尽可能多的九成。微软Azure有12个9个,AmazonS3、Backblaze和谷歌CloudPlatform有11个9个。但比较棘手的是,关于这些数字怎么算,还没有公认的公式。在详细介绍之前,从这9个意思开始基本知识吧。
数据持续性:保持存储的数据一致,具有完全不腐烂、驱动故障或任何形式损坏的能力。99.9999999999%(11个9)的持续性意味着如果保存1000万个对象,预计每10,000年就会失去数据对象。
服务可用性:确保断电或系统故障的连续无中断服务(即正常运行时间)的能力。SLA(服务水平协议)保证99.99%的可用性,意味着每年可能经历约53分钟的停机时间。
可用性(%)=正常运行时间/总时间(正常运行时间+停%)=正常运行时间/总时间(正常运行时间+停止时间)在数据持续性方面要复杂得多。以下是我们数学运算前应该知道的三个重要因素
1.AFR(年度故障率):给定年度的平均故障率。AFR=(24*365)/MTBF(hr)BF(hr)。MTBF(平均无故障时间)是指设备到寿命为止的平均运转时间。
2.MTR(平均维护时间):指发生故障后,系统恢复正常运行所需的平均时间。MTTR是重点指标之一,因为数据的持久性完全取决于重建过程中另一个驱动器发生故障的可能性。
3.删除代码(里德-所罗门代码):数据保护方法可以将对象分为m+n带布局的片段(m:数据片段、n:奇偶检查片段)。这些碎片在储存池中均匀分布。以12+3擦码方案为例。这意味着存储的对象最多可以容忍3个损坏的段落,至少需要12个段落来恢复数据。
在灰**域内。
尽管数据的持久性如何计算尚未达成共识,但云存储行业有两种可用公式。一个。
这是第一个公式的样子
1–(AFR/(365/MTTR)^(奇偶检查数)
假设AFR为5%,MTTR为3.4天的4个驱动器容错能力,重建故障驱动器时发生4个驱动器故障的概率如下
(AFR*MTTR)4=(.05/年*3.4天*1/365年/天)4=4.66*10-4)4=4.7*10-14。
数据的持续性等于:
1–(4.7*10-14)=.999999999999530(13个9)
接下来的第二个公式是遵循泊松分布,这个泊松分布用于显示在给定时间段内发生的事件数的概率。
在哪里?
k=1、2、3…(事件数)
e=2.7182818284。
λ=给定时间间间隔内连续事件的平均数。
网络存储服务的EC方案为17+3,AFR为0.41%,MTTR为156小时,lambda为(((0.0041*20)/(365*24)/156)=0.00146027397。
4个驱动器在156小时内发生故障的概率如下
P=(2.7182818284-0.00146027397)*(0.001460273974)/(4*3*2*1)=1.89187284e-13)。
换句话说,(1-P)没有并发驱动器故障的概率为0.9999999999999810812715(12个9)。一年有56个156小时间隔,年耐久性实际上等于(1-1.89187284e-13)56=0.99999999999(11个9)。
SynologyC2对象的耐久性。
Synology选择第二个公式来计算SynologyC2的耐久性,因为我们相信泊松分布比第一个公式更能准确地反映耐久性。驱动器故障应视为连续事件,而不是离散事件。当一个驱动器发生故障时,同时安装的其他驱动器很可能很快发生故障。
目前,SynologyC2的EC方案为12+3,AFR为0.8%,MTTR为286(hr),数据持续性为9个。我们在这些关键因素上做了很多努力。AFR显着下降(从1.79%下降到0.8%)。为提供数据的任何人提供可靠性,持久的云服务是我们不懈的追求,所以我们一直在思考如何提高持久度。
选项之一是增加数据条的宽度。如下表所示,添加奇偶校验片段在实现9s方面效果较好。我们还发现,16+4条带的布局效果最好,因为它可以从9个9到12个9,不影响存储效率。因此,将数据从12+3添加到16+4是我们近期要做的事情。
现实的场景。
在我们扩展群晖SynologyC2云存储的三周内,六个驱动器出现故障,其中两个驱动器击中了同一个对象。幸运的是,由于我们的容错存储基础设施,我们可以幸免。
那么,同时发生的驱动器故障需要几个九个问题。并发驱动器发生故障的可能性接近奇偶检测驱动器的RAID阵列。因此,如果一卷有六个以上的驱动器,建议配置RAID6。你将有两个奇偶测试驱动器,可以实现更高的数据冗余。
避免数据丢失。
如前所述,在数据持久性的精准计算上并未达成共识,在一定程度上,各大云商通过夸大一些数字来滥用它作为云服务的卖点。
听起来不错,但没有九位数可以防止数据丢失。事实上,三分之二的数据丢失事件不是由硬件故障引起的。不管基础架构存储多久,你的数据仍然会受到人为错误的影响。
为了最大限度地减少数据丢失的风险,最好的实践是建立可靠的数据保护战略。对于重要的任务数据,不必太小心。确保采用3-2-1备份战略,确保重要数据的服务可用性和数据完整性。保留三份数据复印件,存储在两种不同的介质中,一种存储在异地。
数据保护从当地扩展到云?使用SynologyC2迈出坚实的备份计划第一步,在社区里告诉我们你的想法。
地址:北京市海淀区白家疃尚品园 1号楼225
北京群晖时代科技有限公司