吴为龙:分布式存储结合公链激励的工程实践 | 巴比特加速器技术公开课

栏目: 后端 · 发布时间: 5年前

内容简介:带来了题为“分布式存储结合公链激励的工程实践”的线上分享。Genaro Network 是首个结合去中心化存储网络的图灵完备公有链,它为区块链开发人员提供了一站式解决方案,在部署智慧合约的同时,可以存储用户资料。同时,Genaro 也为每个人建立一个可靠的互联网与共享小区。
巴比特加速器推出的全球线上区块链技术深度对话栏目Geekhub Global Online,定期邀请世界各地的资深技术大咖连线对话。同时Geekhub技术社区成员也可以参与直播互动。

11月28日-30日每天14:00,Geekhub 技术社区将举行【Geekhub Global Online】技术公开课第三期的活动,主题为“ 分布式存储,数字基石 ”。

11月29日14时, Genaro Network创始人吴为龙

带来了题为“分布式存储结合公链激励的工程实践”的线上分享。

Genaro Network 是首个结合去中心化存储网络的图灵完备公有链,它为区块链开发人员提供了一站式解决方案,在部署智慧合约的同时,可以存储用户资料。同时,Genaro 也为每个人建立一个可靠的互联网与共享小区。

吴为龙:分布式存储结合公链激励的工程实践 | 巴比特加速器技术公开课

以下为直播文字实录,由巴比特整理发布:

大家好,我是Genaro Network(GNX)创始人吴为龙,很高兴来到这里,我今天分享的主题是“ 分布式存储结合公链激励的工程实践 ”。

分布式存储

我先来介绍一下分布式存储的概念。分布式存储指的是 使用分布式节点存储本地文件的方式

与目前常见的集中式存储技术不同,分布式存储技术并不是将数据存储在某个或多个特定的节点上,而是通过网络使用企业中的每台机器上的磁盘空间,并将这些分散的存储资源构成一个虚拟的存储设备,数据分散的存储在企业的各个角落。

经典的分布式存储项目

有Sia、Storj、Maidsafe、IPFS。

Maidsafe是最早的分布式存储项目,但是一直停留在α版本; Sia是一个基于POW的区块链去中心化存储的项目,以挖矿为主; Storj是一个中心化的奖励机制,即每个月storj官方根据各矿工每月的存储量来发放奖励; IPFS虽然也提供去中心化的云存储服务,但在实现机理上是在基础层而不是应用层去改变云存储。

刚才我简单解释了分布式存储的概念,现在讲一讲什么是集中式存储和云存储。

集中式存储 指的是由一台或多台主计算机组成中心节点,数据集中存储于这个中心节点中,并且整个系统的所有业务单元都集中部署在这个中心节点上,系统所有的功能均由其集中处理。

云存储本质上也是一种分布式存储,传统的云存储公司购买或租用服务器来存储他们的客户文件,同时使用RAID方案或 多数据中心的方法来保护数据的安全性。

在比较了分布式存储、集中式存储和云存储之后,我们要去思考一个问题: 为什么要使用分布式存储呢?

主要有三个理由:

1.无论是计算,还是存储,分布式最大的特点就是低成本。分布式存储让最大化使用低成本的存储; 2.用了分布式存储之后,就可以用一些无服务器的系统。下一代互联网将以无服务器为起点的; 3.区块链本身存储量很大,分布式存储也可以用于链的部分。

分布式存储方法也叫分布式哈希表(Distributed Hash Table, DHT)

。通俗的讲就是,在 DHT 中,某些被标记的信息,按照某种约定或协议被储存在多个分散的节点上,可以有效地避免中心化服务器宕机故障而带来的整个网络瘫痪。

和中心化服务器不同,DHT 网络中的各节点并不需要维护整个网络的信息,而是只在节点中存储其临近的后继节点信息,大幅减少了带宽的占用和资源的消耗。DHT网络还在与关键字最接近的节点上备份冗余信息,避免了单一节点失效问题。

接下来,我们来看一下 分布式存储需要实现的四个目标

1.DHT来保证的部分节点部分数据,路由连接; 2.节点ID和Key值的关系确定了文件存取的方向; 3.节点List按照时间顺序存储其它节点的信息; 4.主要适用于Key精确查找,很快迭代寻找。

分布式存储有两个现存的问题

1.上述只保证了节点寻址和对应的上传下载,并没有对其存储过程进行保障; 2.需要特定共识保证系统中存储的文件都可以被下载,而不是跳转几次节点后都找不到value。

分布式存储与共识机制结合

我们发现,存储本身是有规律可循的,就是缺少共识来检验过程。这里就要引入“ 分布式存储共识 ”的概念,它指的是 能够保证文件存储后能够被下载的共识 。这个共识很可能只做一件事,就是保证这个文件能被下载。

那么这个共识能否用PoW呢?其实这并不是一回事儿,因为分布式存储的共识不等于区块链的共识。区块链共识保障的是所有区块链的节点是维护同一个表单的;分布式存储共识里是保障存储节点能够给予心跳,而不是保障所有节点维护同一个表单。

Genaro Network使用的是两个共识,因为一个共识只能做一件事。共识的设计基础:

吴为龙:分布式存储结合公链激励的工程实践 | 巴比特加速器技术公开课

共识设计基于分布式系统的CAP原理;链式共识主要保证了A(可用性)和P(分区容错性),每个全节点存储的是相同的东西;存储共识不需要每一个节点存储一样的东西(DHT的设计),所以需要相对独立的设计。

我们需要看在以往的工程经验中,到底有没有对存储共识的相关设计。

吴为龙:分布式存储结合公链激励的工程实践 | 巴比特加速器技术公开课

可收回证明(PoR,Proof of Retrievability)共识算法,是一种紧凑证明,表示文件系统(证明者)中的目标文件 F 对客户端(验证者)而言是完整的。由于使用 PoR 比传输文件 F 本身而言具有更低的通信复杂性,因此 PoR 对于构建高可靠的远程存储系统是一种颇具吸引力的构建模块。作为一种共识算法,PoR 对于云存储非常有用。

吴为龙:分布式存储结合公链激励的工程实践 | 巴比特加速器技术公开课

Genaro对共识做了一些改进,改进的方式是:

由于文件不能被细分成特别小的shard(过多的验证时间),所以存在重放攻击隐患;

重放攻击需要通过增加challenge来防止,需要由链部分的hash提供给辅助信息,用指纹组来代替单一指纹;

Prover部分需要额外处理,本身Prover是中心化节点,需要来保证challenge可靠性。

吴为龙:分布式存储结合公链激励的工程实践 | 巴比特加速器技术公开课

这就是Genaro改进Prover的思路,如何将中心化的Prover变得更去中心化呢?如上图。

在Genaro网络中,每个区块由存储活动产生,矿工被称为收据制造者(Receipt Maker),他们被节点选中为存储活动生成收据。收据见证人(Receipt Prover)为网络提供算力,证明存储有效性以获得奖励。

Genaro存储网络结构基础:

吴为龙:分布式存储结合公链激励的工程实践 | 巴比特加速器技术公开课

分布式存储与公链激励结合

虽然分布式存储的成本很低,但是如果存储节点还是不愿意用这么低的成本去获得收益,那该怎么办?Genaro这半年来就是尝试将分布式存储与公链激励结合起来。

首先,存储节点需要的是激励; 然后, 激励节点可以解决分布式存储的,由于成本过低导致无法长期在线的问题; 最后, 公链本身的机制是激励出块节点(写节点)。

公链激励的设计实现如下:

公链共识分为写节点竞争或者写节点轮训,无论在什么情况下都是要提供时间属性,否则轻易被分叉。比如PoS的long range attack; 存储节点的验证后,提供的心跳可以提供时间属性; 公链可以使用时间属性完成PoS中时间缺失的问题。

吴为龙:分布式存储结合公链激励的工程实践 | 巴比特加速器技术公开课

实现共识与激励的Genaro公链整体结构

吴为龙:分布式存储结合公链激励的工程实践 | 巴比特加速器技术公开课

由刚才的VM设计出的不同的opcode以及状态上的改动,这里称之为“特殊交易”或“结算方式”。把这些功能交给由RAFT组成的Tunnel,剩下的存储部分不用改变原有的情况。

那么每一次相关的心跳都是通过状态交给链,这样就能保证每一次有效存储是在挖矿。

海报预览:

吴为龙:分布式存储结合公链激励的工程实践 | 巴比特加速器技术公开课


以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

Data Mining

Data Mining

Jiawei Han、Micheline Kamber、Jian Pei / Morgan Kaufmann / 2011-7-6 / USD 74.95

The increasing volume of data in modern business and science calls for more complex and sophisticated tools. Although advances in data mining technology have made extensive data collection much easier......一起来看看 《Data Mining》 这本书的介绍吧!

HTML 压缩/解压工具
HTML 压缩/解压工具

在线压缩/解压 HTML 代码

HEX CMYK 转换工具
HEX CMYK 转换工具

HEX CMYK 互转工具

HSV CMYK 转换工具
HSV CMYK 转换工具

HSV CMYK互换工具