PEEP: A Parallel Execution Engine for Permissioned Blockchain Systems

Zhihao Chen,Xiaodong Qi,Xiaofan Du,Zhao Zhang,Cheqing Jin
DOI: https://doi.org/10.1007/978-3-030-73200-4_24
2021-01-01
Abstract:Unlike blockchain systems in public settings, the stricter trust model in permissioned blockchain opens an opportunity for pursuing higher throughput. Recently, as the consensus protocols are developed significantly, the existing serial execution manner of transactions becomes a key factor in limiting overall performance. However, it is not easy to extend the concurrency control protocols, widely used in database systems, to blockchain systems. In particular, there are two challenges to achieve parallel execution of transactions in blockchain as follows: (i) the final results of different replicas may diverge since most protocols just promise the effect of transactions equivalent to some serial order but this order may vary for every concurrent execution; and (ii) almost all state trees that are used to manage states of blockchain do not support fast concurrent updates. In the view of above challenges, we propose a parallel execution engine called PEEP, towards permissioned blockchain systems. Specifically, PEEP employs a deterministic concurrency mechanism to obtain a predetermined serial order for parallel execution, and offers parallel update operations on state tree, which can be implemented on any radix tree with Merkle property. Finally, the extensive experiments show that PEEP outperforms existing serial execution greatly.
What problem does this paper attempt to address?