什么是 Sharding?
Sharding 是一种让区块链将其数据和工作负载拆分为更小组的方案,以便能并行处理更多任务。仍然是同一条链,但责任被分散。可以把它想象成超市开设更多收银通道,使排队更快,但大家仍然在同一家店消费。
有人认为 Sharding 是你的钱包运行在独立的小链上。并非如此。它将网络划分为多个相互协作的 节点,然后汇总结果以保持链的一致性。
Sharding 的工作原理
想象一个有多条车道的网络。交易被分类到不同车道,同时处理,然后再同步回合并为一个统一账本。简要说明:
- 开始:链根据简单规则将交易分配到不同的分片,例如基于账户或合约地址。
- 划分:每个分片由本地委员会验证其各自的交易批次。
- 执行:并行处理提高了 吞吐量,因为许多分片同时工作。
- 同步:结果被打包并固定到协调层上,以保证所有分片达成一致。
- 跨分片:需要与其他分片通信时,会通过跨分片消息让余额和合约调用保持正确。
就是这个过程。多条车道,一本账本。
为什么 Sharding 很重要
这对你和你的应用有什么好处:
- 好处:支持更多用户、缩短等待时间,且通常手续费更低,归功于 可扩展性提升。
- 视角:大型公链希望服务数百万用户而不至于像交通堵塞。Sharding 是实现目标的一种方式。
- 相关性:如果你关心 NFT 铸造、交易或 去中心化应用 (dApps),这会影响你真实感受到的速度与费用。
在阅读路线图时,留意跨分片调用与 智能合约 的配合方式。如果调用快速且可预测,即使跨分片你的应用也会运行流畅。
Sharding 的关键特征
其突出特点:
- 并行性:链的多个部分同时处理不同的工作。
- 分区:数据和活动被划分,这样不会由单一群体承担全部负载。
- 协调:信标或协调层保持各分片达成一致。
- 消息传递:跨分片通信让资金和调用在车道间安全流动。
- 弹性:委员会会轮换,从而降低分片被攻占的概率。
变体
Sharding 并非单一做法。常见类型包括:
- 网络:验证者集合被划分,每组管理一个分片。
- 状态:账户数据被分区,降低参与者的存储负担。
- 交易:交易处理被分割,提高并发能力。
- 数据:数据可用性分片侧重于为 rollups 发布和抽样大块数据。
Sharding 提升了规模,但仍依赖可靠的共识和诚实的验证者分布。如果安全出现问题,速度就无意义。
示例
Sharding 允许链在一个分片上处理 DeFi 清算的同时,在另一个分片上进行热门铸造,随后两者都在相同检查点完成结算而互不干扰。
趣闻
Sharding 这个词源自数据库工程学,早于加密领域流行。大型科技公司通过这种方式拆分数据以保持应用响应,然后区块链借用了这一策略来支持共识记账。
总结
Sharding 将工作分散,使区块链既快速又保持一致。可以把它想成更多车道,相同终点。
