A Hierarchical Sharded Blockchain Balancing Performance and Availability

本文提出了 PyloChain,一种通过结合本地链的投机并行执行与基于 DAG 的全局主链来平衡性能与可用性的分层分片区块链,其实验结果显示其吞吐量比现有最先进方案提升 1.49 倍,延迟降低 2.63 倍。

Yongrae Jo, Chanik Park

发布于 Mon, 09 Ma
📖 1 分钟阅读☕ 轻松阅读

Each language version is independently generated for its own context, not a direct translation.

这篇文章介绍了一个名为 PyloChain 的新型区块链系统。为了让你轻松理解,我们可以把区块链想象成一个超级繁忙的跨国物流公司,而 PyloChain 就是他们为了应对业务爆炸式增长而设计的一套**“分层智能物流网络”**。

1. 背景:物流公司的困境(区块链的痛点)

想象一下,以前这个物流公司(传统区块链)只有一个巨大的中央仓库,所有包裹(交易)都要在这里排队、检查、打包。

  • 优点:非常安全,大家都能查到所有包裹的流向(去中心化、透明、不可篡改)。
  • 缺点:一旦包裹多了,仓库就堵死了,处理速度极慢(可扩展性差)。

为了解决拥堵,人们想出了**“分仓”(Sharding)**的办法:把大仓库拆成很多个小仓库,每个小仓库只处理一部分包裹。

  • 方案 A(性能优先):每个小仓库只存自己那一堆货。
    • 比喻:就像把文件分散存到不同的抽屉里,取货极快。
    • 风险:如果某个抽屉坏了(服务器故障),里面的文件就永远找不到了(数据不可用)。
  • 方案 B(可用性优先):每个小仓库都存一份所有货物的清单。
    • 比喻:每个抽屉里都有一份完整的目录。
    • 风险:虽然丢了抽屉也不怕,但每个抽屉都要存那么多东西,太占地方,而且更新目录太慢(性能差)。

现在的难题是:我们既想要方案 A 的速度,又想要方案 B 的安全。

2. PyloChain 的解决方案:双层物流网络

PyloChain 提出了一种**“分层架构”,就像建立了一个“区域配送站 + 中央调度中心”**的体系。

第一层:区域配送站(Local Chains / 本地链)

  • 角色:分布在各个城市(分片)的本地仓库。
  • 工作:它们只负责处理本地包裹(本地交易)。
  • 特点
    • 并行处理:每个城市同时发货,互不干扰,速度极快。
    • 投机执行:它们会先“大胆”地把货发出去(预执行),假设没问题。
    • 缺点:如果发错了,后面可能会发现需要撤回。

第二层:中央调度中心(Main Chain / 主链)

  • 角色:由每个城市的“区域经理”(全节点)组成的超级大脑。
  • 工作
    1. 汇总:收集所有区域站发来的包裹清单。
    2. 仲裁:处理跨城市包裹(全局交易,比如从北京寄到上海)。
    3. 纠错:检查区域站“大胆发货”有没有出错。如果北京和上海的交易冲突了,中央中心会决定谁对谁错,并通知区域站撤回错误的包裹。
  • 核心技术(DAG):传统的中央中心是“排队等一个接一个”(线性),而 PyloChain 的中央中心像是一个**“网状交通图”**。它允许很多区域经理同时汇报,系统能自动理清先后顺序,不会堵车。

3. 三大创新点(如何让系统更聪明)

A. 聪明的“发货顺序”(调度技术)

  • 问题:如果中央中心在处理“跨城市包裹”时,不小心把“本地包裹”的发货顺序搞乱了,就会导致很多本地包裹被退回(中止),浪费大家的时间。
  • PyloChain 的做法:它有一个简单的**“排队规则”**。
    • 比喻:就像在餐厅,先让所有本地客人(本地交易)点菜上菜,最后再统一处理跨桌拼单(全局交易)。
    • 效果:这样本地包裹就不会被跨桌拼单插队搞乱,大大减少了“退菜”的情况,效率翻倍。

B. 防作弊的“透明监控”(审计机制)

  • 问题:区域经理(全节点)权力很大,如果它们偷懒不汇报,或者故意乱报,下面的小仓库(本地节点)怎么知道?
  • PyloChain 的做法:它把经理的每一个关键动作都拆碎了,变成**“透明小纸条”**发给下面的小仓库。
    • 比喻:经理每做一步(比如收到货、打包、发货),都要贴一张带签名的便签。小仓库只要看便签,就能知道经理有没有偷懒或作弊。如果经理超时没贴便签,小仓库就会报警,换一个新的经理。

C. 弹性网络(应对网络卡顿)

  • 问题:有时候网络会突然变慢(像堵车)。
  • PyloChain 的做法:它不强制要求所有人必须“同时”到达。只要在一定时间内,大家陆续把货送到,系统就能自动整理好顺序。这就像快递车即使晚点,只要最终都到了,分拣中心依然能工作,不会因为一辆车迟到就停摆整个系统。

4. 实际效果:快了多少?

作者做了实验,结果非常亮眼:

  • 速度:在同样的条件下,PyloChain 的吞吐量(每秒处理交易数)比现有的平衡方案高了 1.49 倍
  • 延迟:处理交易的速度快了 2.63 倍(也就是等待时间更短)。
  • 稳定性:即使网络不好,或者某个区域经理“掉链子”,整个系统依然能稳定运行,不会像以前那样容易瘫痪。

总结

PyloChain 就像一个既懂“分权”又懂“集权”的超级物流管家。

  • 它让小仓库(本地链)放手去跑,追求速度
  • 它让大管家(主链)用网状思维(DAG)来统筹全局,保证安全秩序
  • 它通过聪明的排队规则透明的监控,解决了“快”和“稳”难以兼得的千古难题。

这就好比以前大家挤在一个大超市排队结账(慢且容易乱),现在变成了:每个小区有个小超市(快),但有一个中央大脑负责协调跨小区的订单(稳),而且中央大脑非常聪明,知道怎么安排顺序最不容易出错。