科普:分片技术

科普:分片技术


1. 为什么需要 Sharding

现在感觉整个世界最热的词就是区块链了,各大公司各个行业急吼吼的布局区块链技术忙得不亦乐乎,但是让我们看一下目前落地项目里最牛的两个项目比特币和以太坊的表现如何?

目前以太坊 TPS(每秒处理的交易数)在 15 笔,比特币 5-7 笔,而我们生活中使用的 PalPay 近 200 笔,VISA 1700笔。差的可不少一个量级,距离能真正进行商业规模应用还很远很远。

这大概就是理想与现实的差距吧,但是没事儿,毕竟改变世界不是那么简单的一件事儿,只要不断一直努力着,就有希望

为了提高交易速度,比特币瞩目的扩容之争一直没有停歇,隔离见证、闪电网络等尝试也不曾停止。那么以太坊做了什么呢?

就在上个月底,V 神发推特:“Sharding is comming.”—— 分片来了!!

2. 啥是 Sharding

以太坊和比特币一样,每笔交易都需要所有的节点进行验证。网络中那么多节点,这得耗费多长时间啊~ 

如果交易只需经过小部分节点的验证,其他部分节点同时验证别的交易,效率肯定会大大提升。Sharding 就是每一笔交易只让一小部分节点看到和处理,所有的节点可以同时平行处理更多的交易。

Sharding(分片技术):最简单的分片技术就是系统切分成独立的数片,每片有专门的节点来维护,但这就相当于数个独立的区块链,真正的分片技术必须有片间的交流

在以太坊的开发者大会中,Vitalik是这样解释分片的:

假设以太坊被分割成成千上万个小的岛屿。每个岛屿都是自治的。每个岛屿都有自己的特色(features),岛屿上的每个人都可以跟其他岛民互动,并且随意享用这个岛屿的特色。如果你想跟其他岛屿互动,就必须使用某种特定的协议。

(注:feature是指一个系统的功能,特点,是一种它可以提供的东西)

3. 故事理解 Sharding

举个小故事:

一个班级50名同学来一起批改一份试卷,试卷有

100 道题目。以太坊和比特币之前的做法是把正张试卷都要全班每个同学挨个验证答案。通过分片技术呢,把试卷分成了 10 个部分,每个部分 10

道题。不用 50 名学生都验证这些题,而是同学分成对应的 10组,也就是每 5 个同学验证试卷的十分之一的题目。这样整体效率是不是提高了 10

倍?

确定是 10 倍?说,你数学是不是体育老师教的~ 每部分验证的节点从 50个减少到了 5 个,并且10 组同学同时验证,所以很明显是在 10 倍以上的。

例子不是绝对的恰当,但是足够简单的理解分片了。

因此 Sharding 的作用就是减少交易的验证时间,提高交易速度。

4. Sharding 的风险

对于每一个分片来讲,因为验证的节点变少,发动对单片的攻击的成本降低

每个分片需要保持一定独立性,但各个节点间的通讯以及和主链之间的通讯变得复杂


你可能感兴趣的:(科普:分片技术)