收稿日期: 2021-08-04
网络出版日期: 2021-09-28
基金资助
国家自然科学基金(U1811264, U1911203, 61972152)
Blockchain-oriented data management middleware
Received date: 2021-08-04
Online published: 2021-09-28
作为一种去中心化的分布式账本, 区块链被广泛应用于互不可信的多方之间共享数据. 相比于发展多年的传统数据库, 区块链存在无法支持丰富查询、对外提供查询接口单一和查询响应慢的问题. 简单的组织结构和离散的存储方式是限制交易数据表达的主要原因. 为了弥补现有区块链系统的不足, 构建抽象模型、封装易于使用的接口以及提升查询效率是实现基于区块链的高效应用开发的主要方式. 鉴于此, 提出一种面向区块链的通用数据管理中间件, 具有如下特征: ①支持自定义构建数据模型, 灵活地为交易数据抽象新模型; ②提供多种数据访问接口支持丰富查询并采用同步缓存机制等优化方式提升查询效率; ③设计提前哈希计算和异步批处理策略优化交易的延迟和吞吐. 提出的数据管理中间件已集成于开源区块链CITA中, 并通过实验验证其易用性与高效性.
邓思佳 , 佟兴 , 唐海波 , 张召 , 金澈清 . 面向区块链的数据管理中间件[J]. 华东师范大学学报(自然科学版), 2021 , 2021(5) : 60 -73 . DOI: 10.3969/j.issn.1000-5641.2021.05.006
As a decentralized distributed ledger, blockchain technology is widely used to share data between untrusted parties. Compared with traditional databases that have been refined over many years, blockchains cannot support rich queries, are limited to single query interfaces, and suffer from slow response. Simple organizational structures and discrete storage limits are the main barriers that limit the expression of transaction data. In order to make up for the shortcomings of existing blockchain technology and achieve efficient application development, users can build abstract models, encapsulate easy-to-use interfaces, and improve the efficiency of queries. We also propose a general data management middleware for blockchain, which has the following characteristics: ① Support for custom construction of data models and the flexibility to add new abstractions to transaction data; ② Provide multiple data access interfaces to support rich queries and use optimization methods such as synchronous caching mechanisms to improve query efficiency; ③ Design advance hash calculation and asynchronous batch processing strategies to optimize transaction latency and throughput. We integrated the proposed data management middleware with the open source blockchain CITA and verified its ease of use and efficiency through experiments.
Key words: blockchain; data management; transaction data; abstract model
1 | MCCONAGHY T, MARQUES R, MüLLER A, et al. Bigchaindb: A scalable blockchain database [R]. White Paper, BigChainDB, 2016. |
2 | ZHU Y, ZHANG Z, JIN C, et al. SEBDB: Semantics empowered blockchain database [C]//35th IEEE International Conference on Data Engineering. 2019: 1820-1831. |
3 | ELHINDI M, BINNIG C, ARASU A, et al. Blockchaindb - A shared database on blockchains. Proceedings of the VLDB Endowment, 2019, 12 (11): 1597- 1609. |
4 | LI Y, ZHENG K, YAN Y, et al. Etherql: A query layer for blockchain system [C]//Database Systems for Advanced Applications 22nd International Conference. 2017: 556-567. |
5 | LUU L, CHU D, OLICKEL H, et al. Making smart contracts smarter [C]//Proceedings of the 2016 ACM SIGSAC Conference on Computer and Communi cations Security. 2016: 254-269. |
6 | NATHAN S, GOVINDARAJAN C, SARAF A, et al. Blockchain meets database: Design and implementation of a blockchain relational database. Proceedings of the VLDB Endowment, 2019, 12 (11): 1539- 1552. |
7 | PENG Y, DU M, LI F, et al. Falcondb: Blockchain-based collaborative database [C]//Proceedings of the 2020 ACM SIGMOD International Conference on Management of Data. 2020: 637-652. |
8 | 邵奇峰, 金澈清, 张召, 等. 区块链技术: 架构及进展. 计算机学报, 2018, 41 (5): 3- 22. |
9 | 邵奇峰, 张召, 朱燕超, 等. 企业级区块链技术综述. 软件学报, 2019, 30 (9): 2571- 2592. |
10 | 钱卫宁, 邵奇峰, 朱燕超, 等. 区块链与可信数据管理: 问题与方法. 软件学报, 2018, 29 (1): 150- 159. |
11 | 蔡磊, 朱燕超, 郭庆兴, 等. 面向区块链的高效物化视图维护和可信查询. 软件学报, 2020, 31 (3): 680- 694. |
12 | SHARMA A, SCHUHKNECHT F M, AGRAWAL D, et al. Blurring the lines between blockchains and database systems: The case of hyperledger fabric [C]//SIGMOD Conference. 2019: 105-122. |
13 | RUAN P, CHEN G, DINH T T A, et al. Finegrained, secure and efficient data provenance on blockchain systems. Proceedings of the VLDB Endowment, 2019, 12 (11): 975- 988. |
14 | WANG J, WANG H. Monoxide: Scale out blockchains with asynchronous consensus zones [C]//USENIX Symposium on Networked Systems Design and Implementation. 2019: 95-112. |
15 | DANG H, DINH T T A, LOGHIN D, et al. Towards scaling blockchain systems via sharding [C]//SIGMOD Conference. 2019: 123-140. |
16 | WANG H, XU C, ZHANG C, et al. Vchain: A blockchain system ensuring query integrity [C]//Proceedings of the 2020 International Conference on Management of Data. 2020: 2693-2696. |
17 | AMIRI M J, AGRAWAL D, ABBADI A E. CAPER: A cross-application permissioned blockchain. Proceedings of the VLDB Endowment, 2019, 12 (11): 1385- 1398. |
18 | XU Z, HAN S, CHEN L. Cub, aconsensusunit-based storage scheme for blockchain system [C]//34th IEEE International Conference on Data Engineering. 2018: 173-184. |
19 | ZHANG C, XU C, XU J, et al. Gem2-tree: A gas-efficient structure for authenticated range queries in blockchain [C]//35th IEEE International Conference on Data Engineering. 2019: 842-853. |
20 | WANG S, DINH T T A, LIN Q, et al. Forkbase: An efficient storage engine for blockchain and forkable applications. Proceedings of the VLDB Endowment, 2018, 11 (10): 1137- 1150. |
21 | AL-BASSAM M, SONNINO A, BANO S, et al. Chainspace: A sharded smart contracts platform [C]//25th Annual Network and Distributed System Security Symposium: abs/1708.03778. 2018. |
/
〈 |
|
〉 |