系统关键技术

基于CITA区块链的纠删码分片存储实现

  • 尹芙蓉 ,
  • 朱承宇 ,
  • 赵斌 ,
  • 张召
展开
  • 1. 华东师范大学 数据科学与工程学院, 上海 200062
    2. 南京师范大学计算机与电子信息学院/人工智能学院, 南京 210023

收稿日期: 2021-08-07

  网络出版日期: 2021-09-28

基金资助

国家自然科学基金 (U1811264, U1911203, 61972152)

Erasure code partition storage based on the CITA blockchain

  • Furong YIN ,
  • Chengyu ZHU ,
  • Bin ZHAO ,
  • Zhao ZHANG
Expand
  • 1. School of Data Science and Engineering, East China Normal University, Shanghai 200062, China
    2. School of Computer and Electronic Information/School of Artificial Intelligence, Nanjing Normal University, Nanjing 210023, China

Received date: 2021-08-07

  Online published: 2021-09-28

摘要

区块链系统采用全复制的数据存储机制, 为每个节点保留整个区块链的完整副本, 系统扩展性差. 同时由于区块链系统中拜占庭节点的存在, 导致传统分布式系统中使用的分片方案不能被直接应用于区块链系统中. 本文结合纠删码和拜占庭容错算法, 使每个区块的存储消耗由 $ O\left(n\right) $ 降到 $ O\left(1\right) $ , 增强了系统的可扩展性. 本文还提出了对区块数据进行划分的方法, 在降低存储冗余的同时减小对查询效率的影响. 提出了无需网络通信的编码块存储方法, 降低了系统存储和通信开销. 还提出了区块链节点加入和退出的动态重编码方法, 既保证系统的稳定性, 又降低了系统重编码开销. 最后, 在开源区块链系统CITA上实现, 并通过充分的实验, 证明系统可扩展性、可用性和存储效率提升.

本文引用格式

尹芙蓉 , 朱承宇 , 赵斌 , 张召 . 基于CITA区块链的纠删码分片存储实现[J]. 华东师范大学学报(自然科学版), 2021 , 2021(5) : 48 -59 . DOI: 10.3969/j.issn.1000-5641.2021.05.005

Abstract

Blockchain system adopts full replication data storage mechanism, which retains a complete copy of the whole block chain for each node. The scalability of the system is poor. Due to the existence of Byzantine nodes in the blockchain system, the shard scheme used in the traditional distributed system cannot be directly applied in the blockchain system. In this paper, the storage consumption of each block is reduced from O(n) to O(1) by combining erasure code and Byzantine fault-tolerant algorithm, and the scalability of the system is enhanced. This paper proposes a method to partition block data, which can reduce the storage redundancy and affect the query efficiency less. A coding block storage method without network communication is proposed to reduce the system storage and communication overhead. In addition, a dynamic recoding method for entry and exit of blockchain nodes is proposed, which not only ensures the reliability of the system, but also reduces the system recoding overhead. Finally, the system is implemented on the open source blockchain system CITA, and through sufficient experiments, it is proved that the system has improved scalability, availability and storage efficiency.

参考文献

1 CASTRO M, LISKOV B. Practical byzantine fault tolerance [C]//Proceedings of the Third Symposium on Operating Systems Design and Implementation. 1999: 173-186.
2 WOOD G. Ethereum: A secure decentralised generalised transaction ledger. Ethereum Project Yellow Paper, 2014, 151, 1- 32.
3 BURCHERT C, DECHER C, WATTENHOFER R. Scalable funding of bitcoin micropayment channel networks. Royal Society Open Science, 2018, 5 (8): 180089.
4 DANG H, DINH T T A, LOGHIN D, et al. Towards scaling blockchain systems via sharding [C]// Proceedings of the 2019 International Conference on Management of Data. 2019: 123-140.
5 AL-BASSAM M, SONNINO A, BANO S, et al. Chainspace: A sharded smart contracts platform[EB/OL]. (2017-08-12) [2021-07-05]. http://arXiv.org/pdf/1708.03778.pdf.
6 REED I S, SOLOMON G. Polynomial codes over certain finite fields. Journal of the Society for Industrial & Applied Mathematics, 1960, 8 (2): 300- 304.
7 LIN W K, CHIU D M, LEE Y B. Erasure code replication revisited [C]//Proceedings of the Fourth International Conference on Peer-to-Peer Computing. IEEE, 2004: 90-97.
8 贾大宇, 信俊昌, 王之琼, 等. 区块键的存储容量可扩展模型. 计算机科学与探索, 2018, 12 (4): 525- 535.
9 DAI M, ZHANG S, WANG H, et al. A Low Storage Room Requirement Framework for Distributed Ledger in Blockchain[J]. IEEE Access, 2018(6): 22970-22975.
10 XU Y, HUANG Y. Segment blockchain: A size reduced storage mechanism for blockchain. IEEE Access, 2020(8): 17434-17441.
11 PERARD D, LACAN J, BACHY Y, et al. Erasure code-based low storage blockchain node [C]//2018 IEEE International Conference on Internet of Things and IEEE Green Computing and Communications and IEEE Cyber, Physical and Social Computing and IEEE Smart Data. IEEE, 2018: 1622-1627.
12 QI X, ZHANG Z, JIN C, et al. BFT-Store: Storage partition for permissioned blockchain via erasure coding [C]// 2020 IEEE 36th International Conference on Data Engineering. IEEE, 2020: 1926-1929.
文章导航

/