上一篇文章我们详细解释了CESS(Cumulus Encrypted Storage System)在一致机制和区块链层的规划上的思路:经过随机选取轮值一致节点机制(RS)来确保一致达到的公平与高效,一起防止存储矿工的话语权过大。区块链本身除了买卖、证明、合约等基本信息外,还包含了用户上传内容的元数据,是罕见完成了元数据链上记录的存储公链。这些要归功于CESS高效的链上事务处理功率,使得在链上处理数据这种更去中心化的方法得以成为实际。

本篇文章将重点论述CESS在存储和内容分发层上的规划,以及CESS独特的多副本可恢复存储证明机制。与存储挖矿相关的内容我们将在后续独自向大家展现包含了一致、存储以及内容分发的挖矿机制与分发规则。

1. 存储网络

CESS目前将存储层与内容分发层并为一层网络,但我们仍是分开来看二者的功用。

作为去中心化存储网络最为重要的功用的载体,存储网络是整个CESS网络的“心脏”。CESS的存储网络由存储矿工组成,解决当前去中心化存储无法供给弹性可弹性的云存储才能的问题,CESS存储网络经过虚拟化技能将存储资源「池化」,对顶层运用或外部运用供给一致的、按需运用存储方法,屏蔽底层硬件差异化带来的不稳定问题。矿工经过一系列链上证明包含有用存储空间、存储数据量、流量奉献量、及运行性能等目标来向整个CESS网络供给有用的存储空间及可用存储空间,CESS并非经过撮合需求方和存储服务供给方来供给点对点的买卖,而是整合存储矿工供给的存储资源,并经过算法将需求按照其所需的容量、带宽等分配给相应的存储服务供给方(即虚拟化技能,指将矿工供给的具体的服务抽象为「虚拟」存储服务),即当用户有数据存储的需求时,并为运用供给存储服务。

在存储资源的使用上,CESS经过“池化”技能完成了资源使用功率的最大化。所谓“池化”,就是将一切的存储资源作为一个全体的存储资源池而非个别矿工进行看待,用户上传的数据将会随机分配给满意存储条件的存储矿工。

CESS机制详解 (3):存储、内容分发网络与多副本可恢复存储证明

具体来说,当用户上传数据后,一致节点会首先将数据进行加密(选用可信执行环境进行加密)、分片和冗余等预处理(去中心化署理重加密机制),处理完毕的数据将根据用户对数据的存储要求(例如存储时刻等)挑选满意条件的矿工进行存储。最重要的是,CESS并非选择一个或几个矿工完成存储任务,而是将切片后的数据段随机分发给满意要求的矿工。如此便防止了Filecoin点对点的存储形式中或许出现的大户独占的状况。

CESS机制详解 (3):存储、内容分发网络与多副本可恢复存储证明

另一方面,这样的形式还能够完成存储资源的使用率最大化。在现有的存储网络中,当接纳了较大规划的数据存储任务(例如超过5TB的数据量),或许对某些家庭矿工而言就无法完成全体的存储,也就失去了竞争的才能。这一点在现有的大部分存储网络中都没有得到很好的解决,当存储网络发展到一定程度,Filecoin和Arweave等都会不可防止的走向存储的中心化。举例来说,当网络中存在矿工A(3TB存储容量)和矿工B(1TB存储容量)时,关于现有的存储网络而言,2TB的数据只能由矿工A存储,而CESS能够完成A和B各存储1TB,从而完成最大的使用率。

除了使用率的提高,该形式还降低了存储设施的硬件门槛。一方面是因为矿工只需求执行存储的任务而无需进行例如“接单”和运行节点这样复杂和专业的事宜;另一方面,也是因为矿工会随机接纳数据段,并不取决于矿工本身的规划有多大。

如此而言,CESS的存储层真正完成了存储“去中心化”和运用功率最大化的愿景,真正将闲置资源使用起来,而并非完全为了获取收益而额定增加存储资源。

2. 内容分发网络

CESS中的内容分发网络事实上起到了传统的云中CDN的功用。

关于去中心化的存储网络,最大的问题之一并非存储本身,而是“数据的上传”。关于矿工尤其是国内的矿工而言,下载用户需求存储的数据不难,但当用户需求运用时上传所需求的网络本钱却比较高。这就导致很多矿工在存储数据后虽然经过存储证明确保了数据的续存但不乐意将数据上传给用户,导致了网络实际上的不可用。

不仅是去中心化的存储网络,即使是关于传统的云来说,也无法承受用户直接从云数据中心直接调取数据而发生的高瞬时并发与流量,这也是CDN存在的必要性之一。

CESS机制详解 (3):存储、内容分发网络与多副本可恢复存储证明

CESS在内容分发网络中规划了缓存以及检索矿工来帮助网络完成更加高效的运转,其中缓存矿工将缓存热门数据来完成更快的调用速度,而检索矿工则将帮助运用快速定位所需数据的位置。

3. 多副本可恢复存储证明 (PoDR)

上文中所提到的数据预处理、向矿工分发等过程,归于 CESS 创新的多副本可恢复存储证明(PoDR)机制。多副本可恢复存储证明(PoDR)机制确保 CESS 渠道有用的存储了用户上传数据时定制的副本。任意一份数据上传 CESS 体系后,将会自动仿制若干个数据副本(默认为三份,可定制),并为每个数据副本生成可恢复证明所需求辅助验证元数据,并将这些元数据保存到区块链体系之中。

此刻,CESS 可将处理后的数据下发至各个存储矿工之上,在有用的周期内,矿工需求上报自己存储的数据,便于 CESS 体系承认数据是否损坏。

值得一提的是,PoDR 机制会以组成单个文件(包含一切副本)的一切数据段为全体进行计算与监测。一旦某个数据段被认定为损坏时,CESS 会自动生成新的数据段作为补充,并发送至新的存储矿工,确保副本的可恢复性,提升体系数据存储的鲁棒性。

显而易见的是,CESS 的存储机制最大的不同点就在于:相较于依靠矿工对数据进行冗余等保护操作的规划,CESS 在体系的底层就完成了对数据的加密、冗余等保护战略,而矿工需求做的仅仅是将体系处理好的数据段进行存储并确保存储的有用性。此外,即使部分矿工丢失了数据,体系也能够经过其他的数据段完成对原始数据的还原。此举大大降低了单点故障的或许性,提高了去中心化存储网络中数据的安全性。

4. 总结

CESS 在存储机制的规划上,一方面经过多副本可恢复存储证明(PoDR)机制完成了对数据隐私和安全的保护,而且规划了容灾的应对办法;另一方面,也经过对存储资源的“池化”,完成了存储资源使用率的最大化,而且解决了真正调用“约束资源”的才能,为去中心化存储在机制和规划理念上的创新和前进做出了卓越的奉献。