美文网首页阿Q茶馆井英俱乐部
学习使我快乐番外篇十二:分片

学习使我快乐番外篇十二:分片

作者: 7451762bf1b8 | 来源:发表于2018-09-07 23:16 被阅读6次

    今天本小白继续学习小虎总的墨客介绍系列文章之墨客分片介绍。这篇文章介绍了墨客的分片技术,并于以太坊的分片技术进行了比较,并说明了分片对墨客挖矿系统的影响。


    一、分片的概念和要求

    分片是指将网络中的所有节点分成若干个子群体,这些子群体之间通过预定义的方法执行原来所有节点都要处理的工作,从而达到提高系统处理能力的结果。

    以上是分片的概念,具体而言,分片即是将区块链整体的所有节点,分成若干组成部分,这些组成部分对特定任务做并行处理,提高系统处理能力,理论而言,分片越多,可并行处理的任务数就越多,系统处理能力就越高。

    对于一个区块链网络,分片有其具体要求:

    1、分片的子群的大小有限制,一方面,希望能够分更多的片,但是,为了维持系统的容错性,分片的节点数有个下限,比如不能低于50个。

    2、分片的共识有限制。由于节点数少的关系,POW可能不适合。

    3、分片之间必须保证数据的一致性

    二、以太坊的分片策略

    以太坊目前的分片策略是在一个周期内,将所有的节点分成若干份,然后将合约分配给每个分片,当周期结束时,会重新分片。这样做会产生的问题是:

    1、需要一个全局的存储器来保存这个分片信息。

    2、这个周期通常比较长,如果节点数动态变化比较大的话,分片的信息会很容易过时。

    3、周期结束时,当前分片处理的合约必须重新分配到新的分片,造成不必要的切换资源操作。

    4、分片的共识方式与底层的共识一样,这样分片的功能必须等主网切换到POS才能采用。

    可以看出,以太坊的分片受制于原有体系架构,无法满足当前对分片的性能要求,在实现上有较大的困难。

    三、墨客的分片策略

    墨客采用分层的办法来实现分片。墨客的底层采用POW的方式保证所有的数据的一致性,底层称为v-node,分片处理的节点称为SCS,每个SCS节点与一个v-node对应。这样SCS节点可以通过v-node获得全局一致性的区块信息。

    对于SCS和v-node而言,其分工处理不同的工作:

    与以太坊等设想的分片方法不同,墨客分片采用合约驱动的模式,就是说一个合约对应于一个系统分片,合约创建时自动随机选择相应数量的节点形成一个分片来处理这个合约,这个合约的生存周期都在这个分片中实现,从创建,到结束合约。当然,中间如果需要,可以重新洗牌来选择新的分片节点。

    对于墨客而言,一个智能合约对应于一个子链,在创建时子链选择一定数量的SCS节点进行支持,从而在分层的基础之上实现分片。

    四、墨客分片策略的优势

    墨客分片策略的优势主要体现在提高了系统的处理速度。

    墨客采用分片的技术,那么合约的执行尽可能都在SCS端执行,V-node只处理支付交易和必要的合约调用。如果能够有100个分片的话,那么合约处理的速度将提高到100倍或更多。同时,底层将大部分处理支付交易,这部分的逻辑比较简单,我们完全可以降低支付交易的gas量进一步提高处理能力而不会造成系统太大的负担。

    五、分片对墨客系统挖矿的演化影响

    整个系统的处理速度上去之后,会对v-node的要求更高。体现在两个方面,一个是网络的带宽,另一个是存储的容量。当然还有每个节点的GPU运算能力。随着光纤网络和5G网络的普及,带宽预计不会成为一个瓶颈。存储器的价格则更加不是问题。对于普通用户而言,因为有SCS可以参与挖矿,并不一定需要部署一个v-node,只要有信任的v-node可以连就可以。

    基于墨客的分片构架,会形成两个层次的挖矿节点:

    1. 大量运算能力强大,高网络带宽,大存储的v-node,执行POW,并提供SCS接入服务,维持整个网络必须的挖矿能力,这个数量在几千到一万;

    2. 海量cpu –based的SCS用于处理合约的执行。针对子链的共识多样性,这样的SCS节点甚至可以是手机等移动设备。

    这样,SCS节点的数量不会受到限制,SCS节点的高适应性和多样性,可吸引不同形态的用户终端加入,从而进一步丰富SCS节点的数量和形态,使墨客区块链的生态更加繁荣。

    相关文章

      网友评论

      本文标题:学习使我快乐番外篇十二:分片

      本文链接:https://www.haomeiwen.com/subject/qzwhgftx.html