什么是区块链分片技术
扫描二维码
随时随地手机看文章
对区块链比较熟悉的朋友们可能都知道,公链的吞吐量一直是个让人诟病的问题,比如比特币和以太坊的吞吐量每秒只有个位数,如果想要在以太坊上面搭载一个吞吐量需求较大的DApp,那么这条公链就需要具备可扩展性。
但是区块链扩容这种事情,说起来容易做起来难,有什么解决方案可以实现呢?这就不得不说一说我们今天的主角——上将“分片技术”!
那这个分片技术有什么不同呢?别急,七维矩阵(ID:dongzi716)专业讲解会让你明白的,往下看。
吞吐量
在说分片技术之前,我们需要通过了解“吞吐量”的概念,来帮助我们进一步了解区块链的分片技术。
吞吐量这个概念很好理解,它基本上相当于人们正常吃饭、排泄一样:当你在访问某个网站点开这个链接的时候,就相当于人吃下去食物了;当服务器接收到你的链接请求后,会给你反馈相应的数据使该网页呈现在你的面前,就相当于这个人吃进去的东西消化完毕且把废物排泄出来了,这整个过程就是一个吞吐。
一个人自从吃进去事物到排泄出去所需要的时间就可以看成区块链网络进行一个吞吐所需要的时间,单位时间内吞吐的次数,就用吞吐量来形容。
为什么需要分片技术?
我们在了解了吞吐量之后,就可以回头看看现有的扩容问题。
我们常说区块链是一个分布式账本,是因为区块链网络是由一个个节点链接起来的,然后要求每一个完全参与的节点都必须要验证每一笔交易,而且这些节点还必须跟全网的所有其他节点保持一致。
虽然这样的机制可以最大限度的保证全网的安全,在容错性、安全性、政治中心和真实性上面有很大的优势,但是这种方式是以降低可扩展性为代价的。
当公链变得越来越大时,它就需要越来越多的处理能力来验证这些公共交易,进而可能造成交易瓶颈。众所周知,当前阶段公链的吞吐量实在是小的可怜,平均每秒只能处理7-15笔交易,所以,这在极大程度上阻碍了那些对吞吐量有较高要的应用在链上的发展(即使聊天、实时支付等)。
发现问题总是好的,但如何解决问题却又成为了一个新的问题。关于这个新问题,业界提供的解决方案主要分为链上和链下两种。
链下的解决方案就是利用闪电网络将大量交易放到链外进行,只把关键环节放到链上确认(缺点很明显就是没有区块链的保护不是很安全)。
鉴于前者的情况,我们就需要一种与其互补的、链上的解决方案,也就是今天所讲的:分片技术(还有侧链、DAG等,此处暂且不表)。
什么是分片技术?
分片(Sharding)是一种基于数据库分成若干片段的传统概念扩容技术,它将数据库分割成多个碎片并将这些碎片放置在不同的服务器上,在底层公链的系统内,网络上的交易将被分成不同的碎片,其由网络上的不同节点组成。
因此,只需要处理一小部分输入的交易,并且通过与网络上的其他节点并行处理就能完成大量的验证工作。将网络分割为碎片会使得更多的交易同时被处理和验证,我们将这种技术称之为“分片技术”(或水平扩容),可以简单地理解为“分而治之”。
其实分片技术不止一种,为了满足不同的需求,分片技术还分为:网络分片、交易分片和状态分片等。(七维君说好是浅谈,那就一定是浅谈,因为程度太深的话非专业人士真的很难理解清楚。)举个例子方便理解:
现有的区块链网络就像一条繁忙的高速公路,这条高速公路的收费站暂时只有一个收费出口,在这样的布局下,车辆稍微增加,交通很容易堵塞。比如当时基于以太坊发布的加密猫游戏,游戏玩家暴增,导致以太坊网络拥堵。
若是想减少高速拥堵的情况,就需要在高速公路上增加N个收费口,这才能极大地提高汽车通过收费站的速度。因此,分片技术可以为区块链网络带来巨大的改善,并显著提高区块链的交易速度。
可以想象,当我们将低费用与高交易处理能力结合起来的时候,必然会使公共链变得越来越有吸引力。这些积极的趋势所持续的时间越长,我们就越能看到更多的主流的加密技术和区块链应用程序的出现,最终呈现一个百花齐放的状态。
分片技术带来的好处
基于分片技术的区块链的实现底层公链有很多好处:
1.区块链上处理交易的速度变成了每秒上千笔甚至更多,这可以改变人们对加密货币作为支付方式效率的看法。
2.改善交易吞吐量将会给去中心化的系统带来使越来越多的用户和应用程序,而这反过来可以促进区块链技术的进一步发展与采用,也使挖矿变得更有$可图,同时也能吸引更多不同人士加入到公共网络上的节点,从而形成一个良性循环。
3.分片技术因为验证单笔交易的处理量减少了,可以帮助降低交易费用,节点盈利的同时减少收取的费用,在现实的区块链世界中,将降低节点费用与提高交易处理能力结合,使底层公有链更具吸引力与竞争力。
分片技术独特在于其他解决扩容的链上技术的关键特性,就是它可以进行水平扩容,也就是说,网络的吞吐量随着挖矿网络的扩展而增加,这种特殊的特性可能使它成为推动区块链技术被快速采用的理想技术。
简单来说,分片技术的本质是通过改变网络内部各步骤之间的验证方式来增加吞吐量,各步骤之间验证范式可以采用链上验证,也可以采用链下验证的方式,没有统一,这就足以为现有公链带来诸多好处。
总结
分片技术信息量巨大,它无疑是区块链中解决扩容问题的一个绝佳方案,同时分片技术还可以保证了去中心化和透明度的情况。但是分片技术,在设计和实现层面都是困难重重的,挑战还有很多,目前一切还只是个开始(七维君不讲难点,讲了普通人也解决不了,还是留给技术大佬们解决吧)。
七维君想说的是,在我们普通人还没有领会到这些技术时,最需要的是提高深度的逻辑分析思考能力(持续学习才是王道),这样才能迎接区块链时代的到来,不被大浪潮所淘汰。如何做到持续学习呢?