Publication
ICBC 2020
Conference paper

Hyperledger Fabric Performance Characterization and Optimization Using GoLevelDB Benchmark

View publication

Abstract

Hyperledger Fabric is an implementation that enables permissioned blockchains, which provide a general blockchain framework with identifiable participants for a variety of business applications. Although many performance issues of Hyperledger Fabric have been alleviated to some extent, its performance is still limited - e.g. 2.2k transactions per second in our experiment that executes two reads and two writes in a transaction. A major performance bottleneck is incurred by accesses to the databases that store the latest key-value pairs in the ledger data, indexes to transactions, and the update history. In this paper, we characterize the performance of database systems used in Hyperledger Fabric to identify optimization opportunities by running a Hyperledger Fabric GoLevelDB (HLF-GLDB) benchmark. We developed HLF-GLDB as a standalone benchmark to simulate database accesses in Hyperledger Fabric. Results of the performance characterization revealed that: (1) the data compression of GoLevelDB is a major performance bottleneck in Hyperledger Fabric, and disabling the compression improved the performance by 54%; (2) the size of a database affects the performance significantly. For example, when the size increased by four times, the performance degraded by 25%; (3) To reduce the database access overhead in chaincode, it is better to combine small values so that they can be represented by a single key.

Date

01 May 2020

Publication

ICBC 2020

Authors

Share