加快区块链事务处理速度的技术
本技术介绍参考了以下链接
English
2018年03月30日
加快区块链事务处理速度的技术
交易性能提速约2.7倍,可应用于高性能系统
株式会社富士通研究所(注1)(以下简称,富士通研究所)开发了一种在Hyperledger Fabric框架内加快事务处理速度的技术,Hyperledger Fabric是由The Linux Foundation主导的Hyperledger(超级帐本)中的一个区块链框架。
开发背景
在区块链中,参与者通过相互验证交易数据的有效性并保持链状连接,无需集中式管理,即可实现极难篡改的共享账本系统,它的透明度和可靠性都非常高。
富士通株式会社作为主要成员参与了Hyperledger项目,Hyperledger Fabric作为其中的一个开放式区块链框架,可构建强大的商业交易平台,受到了广泛关注。 Hyperledger Fabric针对称为联盟型(注2)的多个特定参与者,开始在各个领域尝试使用,如金融领域、制造业中的供应链管理、房地产合同、许可证管理、能源交易等领域。
课题
在区块链中,对应参与者人数的节点集群形成网络,执行交易处理、验证交易有效性等一系列处理,通过这个网络进行协作。因此,与传统的集中式管理系统相比,网络通信的影响限制了单位时间可执行的交易数量,这对于需要通过较高性能来快速执行大量交易处理的在线交易系统应用来说是一个挑战。

图1 区块链中的交易处理
开发的技术
在区块链中,节点之间达成协议的同时,应用程序通过将数据读写到共享账本来实现交易处理,并通过链状连接和管理这些交易数据来确保安全性。
基于富士通研究所独特的分析技术进行验证,结果表明,在网络需要的响应时间不超过64ms的情况下,如在日本国内的多个地点运用联盟型区块链的事例等,交易处理过程中应用程序和区块链平台之间的通信是造成瓶颈的主要原因。
为此,富士通研究所开发了以下两种技术,通过减少应用程序和区块链平台之间的通信次数来加快事务处理。 开发的技术的具有以下特点:
- 数据的差分更新(DUS: Differential Update State)功能
在区块链交易处理中,最常用的处理是获取特定数据并在应用程序上执行计算处理,然后写回区块链平台。此次,我们开发了一种功能,仅在区块链平台上对指定数据的差分计算执行一次处理,以减少与通信次数直接相关的计算数。
- 批量更新(CR: Compound Request)功能
富士通研究所开发出一种可向区块链平台集中发送多个处理并批量执行的功能。该功能通过整合多个处理,简化了区块链平台上的操作,并减少了通信次数。当整合的处理中出现部分错误时,返回到批量执行的起点,通过重新处理以确保其准确性。

图2 基于差分更新功能与批量更新功能减少通信次数(账户A向账户B汇款X元)
效果
富士通研究所在稳定版“Hyperledger Fabric v0.6.1(注3)”中安装了这项技术,并在由4台服务器组成的区块链平台上进行了交易性能测试。与每秒约500次交易的传统方法相比,通过使用此次开发的技术,每秒的交易次数达到约1,350次,是传统技术的2.7倍。
今后
基于此次开发的技术,可将Hyperledger Fabric框架应用于金融机构等需要每秒超过1,000次交易的高性能在线交易系统。
富士通研究所在响应最新版本Hyperledger Fabric框架的同时,将继续推进高速化技术的研发,并对本技术的业务应用进行进一步验证,目标在富士通株式会社实现其商品化。