为什么PPIO作为去中心化存储,也能像阿里云、AWS S3一样,保证数据不丢失?

本文探讨了去中心化存储平台PPIO如何通过全副本模式和纠删副本模式确保数据不丢失,其耐用率甚至可以达到与阿里云、AWS S3相媲美的水平。通过设置不同的冗余参数,PPIO能够在保证服务稳定的同时,提供类似大型公司存储服务的数据可靠性。
摘要由CSDN通过智能技术生成

在去中心化存储这个概念被提及之后,很多人都担心去中心化存储的数据丢失问题。

他们认为:当我在去中心存储里面存放了数据之后,虽然它有更便宜,更快,更隐私等特点,但是数据毕竟存在于矿工的矿机上,由于矿工的不稳定性,可能导致文件的丢失。就像滴滴的司机一样,大部分时间是靠谱的,偶尔不靠谱,不靠谱的时候,体验非常差,这样的产品怎么能让人放心使用呢。

另一方面,反观大公司提供的存储服务,比如:亚马逊AWS S3是专业机房,专业机器,专业硬盘,能保证数据不丢失。

其实不是这样的,总架构师在设计PPIO的时候,早就考虑到这个问题,这篇文章就来解释下大家的疑惑。

首先,需要纠正几个认知误区:

  1. AWS S3等大公司能 100 100% 100保证存储文件不丢失吗?
    其实是不能的,他们只能 99.999999999 99.999999999% 99.999999999保证存储文件不丢,专业术语称为: 11 个 9 11个9 119的保证存储文件不丢。存储行业称 99.999999999 99.999999999% 99.999999999这个服务质量指标(QoS)为耐用率。
    在这里插入图片描述
  2. 矿工可能不稳定。
    P2P(点对点)的技术核心,就是在多个不稳定的节点上,实现稳定的服务。熟悉PPTV的朋友应该知道,使用的就是P2P直播,正是在多个不稳定的节点上完成了稳定的服务。

下面来详细解释:为何PPIO也能像大型公司一样靠谱,以及是如何把这个耐用率(QoS)做到像大型公司一样高的。

PPIO的2种冗余模式

总架构师在设计PPIO的时候,设计了2种冗余模式:

​全副本模式

全副本模式就是把文件,完整地拷贝,新文件和老文件一模一样,这样做并不节约空间,但是P2P能多点下载数据,速度更快,同时可以保证用户下载体验。

​纠删副本模式

纠删副本模式就是通过纠删技术来做冗余。简单地说就是,数据分成碎片并编码,使用可配置数量的冗余分片,将所有文件分片存储在不同矿工上。这样做虽然不利于P2P多点传输,但是可以大大节约冗余空间。

PPIO就是通过将以上两种方式进行结合,以应对不同使用场景。

下面简单说一下纠删技术产生的数学特征:

不妨用 ( k , n ) (k,n) (k,n) 纠删码来编码数据,其中:

n n n表示总共有 n n n个纠删片段
k k k表示在 n n n个纠删片段中,任何 k k k个纠删片段就能完全恢复原始数据。
如果数据大小是 s s s字节,则每个纠删片段的大小大约是 s / k s/k s/k 字节。
如果 k = 1 k = 1 k=1时,就相当于复制一个全副本。

例如,1MB数据, 如果采用(10,16)纠删码,并且每个纠删片段大小是0.1M,则总存储数据大小就是1.6M。它实际总共用了1.6倍的数据空间大小。

PPIO的假设和计算

做如下假设:

令t为单位假设时间,这里先假设 t = 24 小 时 t=24小时 t=24

P t Pt Pt代表矿工的日掉线率,这里假设 P t = 5 Pt=5% Pt=5

τ为副本丢失后的修复时间,也就是如果副本丢失了,多少时间能够修复。假设 τ = 2 小 时 τ=2小时 τ=2

在可以修复的前提下,将以上数值带入下面的公式,算得单副本丢失每天丢失的概率是:

p = 1 – ( 1 − P t ) t τ = 0.4265318778 p = 1 – (1-Pt)^{\frac{t}{τ}} = 0.4265318778% p=1(1Pt)τt=0.4265318778

PPIO设计的默认全副本数冗余是2倍,纠删副本冗余是1.5倍。

下面来看全副本模式

由于全副本是完全复制,也就是2倍的冗余,即有2个副本,称为 N = 2 N=2 N=2
修复时间内的耐用率:
P a = 1 − p 2 = 99.9981807056 P_a = 1- p^2 = 99.9981807056% Pa=1p2=99.9981807056
全年耐用率:
P y a = P a ( 365 ∗ t / τ ) = 92.3406415922 P_{ya} = Pa^{(365*t/τ)} = 92.3406415922% Pya=Pa(365t/τ)=92.3406415922

再看纠删模式

假设采用的纠删算法是 ( k , n ) = ( 6 , 9 ) (k,n)= (6,9)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值