Page 143 - 《软件学报》2026年第1期
P. 143

140                                                        软件学报  2026  年第  37  卷第  1  期


                 最初的加密货币应用       [3,4] 逐渐扩展至供应链管理     [5] 、医疗健康  [6] 以及物联网  [7] 等多个领域. 然而, 传统的区块链系
                 统要求每个节点都需要验证所有交易并存储完整的区块链数据, 导致区块链节点面临着严重的计算和存储负担,
                 极大限制了系统的可扩展性          [8,9] . 为解决这一问题, Luu  等人  [10] 在  2016  年提出了  Elastico  分片协议. 随后分片技术
                 被广泛应用于以太坊        2.0  [11] 、Zilliqa [12] 、QuarkChain [13] 和  Harmony [14] 等多个项目中, 这些实际应用进一步验证了
                 该技术在提升区块链系统可扩展性方面的前景与优势.
                    区块链分片技术包括网络分片、交易分片和状态分片这                    3  个层次  [15] . 通常, 将实现网络分片和交易分片的区
                 块链称为部分分片系统, 同时实现网络、交易以及状态分片的区块链称为全分片系统                            [16] . 网络分片是区块链分片
                 系统的基础, 它将网络节点划分为多个不相交的小型分片, 同一分片内的节点将维护相同的状态数据并就一组交
                 易达成共识. 交易分片中每个节点仍保存完整的状态数据, 因此每个分片可独立验证任意交易, 交易则是被划分为
                 不相交的子集, 并分配到不同的分片中进行处理, 从而实现各分片的交易处理并行化, 理论上可实现系统吞吐量随
                 着分片数量线性扩展. 状态分片技术则是进一步将区块链系统的全局状态进行划分, 每个分片只需存储部分状态
                 数据, 从而降低了节点的存储开销, 提高了系统的存储效率, 理想情况下状态分片可实现存储效率和系统吞吐量的
                 线性扩展. 然而, 由于每个分片仅存储部分状态数据, 因此每个分片只能处理那些与其维护状态相关的部分交易,
                 这在一定程度上为系统引入了跨分片交易和负载不均衡等问题                      [15] . 状态分片技术涉及多个复杂的理论和技术问
                 题, 包括状态分配、状态迁移以及跨分片交易处理等. 由于状态分片技术可有效解决区块链系统可扩展性问题, 该
                 技术近年来引起了广泛的关注与研究.
                    本文将围绕区块链状态分片的关键问题与主流解决方法, 从状态分配、状态迁移以及跨分片交易处理这                                   3  个
                 方面  (如图  1  所示), 对该技术的最新研究成果进行分析与综述, 论述已有解决方案的优势和不足, 并探讨该技术未
                 来的发展方向. 本文旨在为状态分片技术的研究提供有价值的参考和帮助.


                                                                静态分配              基于哈希的分配

                                             状态分配                                 基于图论的分配
                                                                动态分配              交易级状态调度

                                                                                 基 于 机 器 学 习 的 分 配
                                                               周期性迁移
                            关键理论与方法          状态迁移
                                                                动态迁移

                                                               基于 2PC 协议


                                            跨片交易处理             基于中继交易

                                                                  其他
                                            图 1 区块链状态分片技术关键理论与方法

                  1   背 景

                  1.1   区块链及其可扩展性问题
                    区块链本质上是一个分布式账本系统, 通过共识算法来维护数据的一致性. 在该系统中, 每个节点都保存一份
                 完整的区块链账本副本, 并利用密码学等技术保证数据的不可篡改性, 从而在无需中心化机构的情况下, 实现了点
                 对点的可信交易. 然而, 传统区块链系统的可扩展性严重受限: 随着节点数量的增多以及交易规模的扩大, 区块链
   138   139   140   141   142   143   144   145   146   147   148