当前位置:首页 行业动态 正文

我们为什么投资公链 Shardeum:分片的另一种可能

2025-05-03

作者:Beam

2022 年 9 月 15 日,以太坊合并(Merge)。这是一个历史性的时刻,以太坊为此准备了 5 年、推迟了 6 次,由于反复的调试与长期的开发、万众瞩目的晕轮效应,很多人误以为合并会自然而然地带来更高的可扩展性、安全性和可持续性,实际上并不是 — — 我们还是用两个列车的比喻,从 PoW(工作量证明)到 PoS(权益证明)的过渡,只是更换了轨道和轮子,它并不会直接地带来更快的速度、更大的容量、更低的车票费用,真正能完成以上三点的,是一整套解决方案:拥有分片能力的主网搭配增强可扩展性的 Layer2 解决方案。

正如以太坊创始?Vitalik Buterin 所指出的,分?是可扩展性三难困境下的一种扩容解决?案,通过将?络中的节点分成更?的组,处理不同的事务集并实现并行处理。通过分担处理整个网络上汇总所需的大量数据的负担,就像我们在 Walmart 购物结账时一样,通过多开设几条购物结账的收银通道,可以直观地减少排队时间和提升结账效率。

我们为什么投资公链 Shardeum:分片的另一种可能


图 1 分片的简单逻辑

这就是分片的逻辑,直接而简单,然而,魔鬼都在细节中 — — 原理和方向没错,但在实施中总会遇到很多问题。本文想通过理顺在 “分片” 这条路上的方向和困局,绘制一张仰望星空与脚踏实地的分片探索者地图。同时通过比较现有的分片解决方案,找到一些共性的问题,并提出一种可行的探索方向:Shardeum 与动态分片。

一、关于 “分片”

简单来说,考虑不可能三角的制约,从以太坊作为坐标系原点(0,0)出发,按照 “纵向” 和 “横向” 两种思路,我们将当前的区块链的扩展性方法分为两大类:

纵向扩容(Vertical Scaling):通过提高系统现有硬件的性能来实现。建立一个去中心化网络,而网络中的每个节点都具有超级计算能力,即每个节点都需要 “更好”的硬件 — — 这种方式简单有效,可以达成吞吐量的初步改进,尤其适用于高频交易、游戏以及其他对延迟比较敏感的应用场景。然而这种扩容方式会限制网络的去中心化水平,因为运行验证节点或全节点的成本变高了。维持去中心化水平受限于计算硬件性能的大致增长速度(这就是所谓的 “摩尔定律”:芯片上的晶体管数量每两年会翻一倍,计算成本则会减半)。

横向扩容(Horizontal Scaling):横向扩容一般有几种思路。一种是在区块链的语境下,将某一生态中的交易计算量分散到多个独立的区块链上,每条链都拥有自己的区块生产者和执行能力,这种方式可以充分定制化每条链的执行层,比如节点硬件要求、隐私功能、gas 费用、虚拟机以及许可设置等。另一种横向扩容方案是模块化区块链,将区块链的基础架构划分成执行层、数据可用性层(DA)以及共识层。最主流的区块链模块化机制就是 rollup。还有一种是将一条区块链分成很多片,并行执行。每个分片可以看成一个区块链,也就是说许多区块链可以并行执行。另外,通常还会有一条主链,其唯一的任务就是保持所有分片同步。

需要指出的是,以上的扩容思路都不是孤立存在的,每一种解决方案都是在不可能三角中找到一个权衡点,配合系统中经济力量创造的激励机制设计,达到宏观和微观层面的有效平衡。

为了讨论 “分片”,我们需要从头开始梳理。

依然假设这样一种情景,Walmart 购物结账,为了提高结账效率,降低客户等待时间,我们从单一的结账通道,扩展到 10 个结账窗口,为了避免账本错误,这个时候我们需要制定统一的规则:

第一,如果我们有 10 个收银员,该如何分配他们去哪个窗口工作?

第二,如果我们有 1000 个客户排队等待,该如何决定每一个客户去哪个窗口结账?

第三,这 10 个窗口对应的 10 个单独账本,该如何进行汇总?

第四,为了避免发生账目不匹配的情况,该如何防止收银员出现错误?

这几个问题其实对应了分片中的几个关键问题,分别是:

该如何确定全网的节点 / 验证者属于哪个分片?即:如何进行网络分片(NetworkSharding);

该如何确定每一笔交易分配给哪个分片?即:如何进行交易分片(Transaction Sharding);

区块链资料如何在不同分片中储存?即:如何进行状态分片(State Sharding);

复杂意味着风险,在以上所有的基础上,该如何避免整个系统安全性的分裂?

01 网络分片(Network Sharding)

如果我们将区块链简单理解成一种去中心化账本,无论是 PoS 还是 PoW 的共识机制,都是为了让各个节点按一定的既定规则争夺记账权,在