Abstract

State sharding is a promising approach to address the scalability issue in the blockchain system. However, the previous sharding schemes using the fixed data partitioning mechanism bring high proportion of costly cross-shard transactions and cannot effectively handle the workload imbalance that occurs in practice, which slows down the performance. To address these issues, we propose EFSHARD, an efficient state sharding blockchain system that enables allocating states flexibly and timely across shards according to recent transactions. Firstly, we propose a hierarchical state partition to enable flexible mapping of states to shards. Second, we design a new state transfer protocol to efficiently migrate states across shards while guaranteeing consistency and liveness. Then, we provide a greedy-based state allocation algorithm to decide when and how to migrate states. The allocation mechanism groups highly correlated state data into the same shard to reduce the proportion of cross-shard transactions and distributes state data to shards with relatively low load to balance workload, thus improving the performance. In the end, we conduct extensive experiments to evaluate EFSHARD and the results demonstrate that EFSHARD outperforms state-of-the-art approaches in terms of transaction throughput, confirmation latency, workload balance, and queue size of transaction pool.

Full Text
Published version (Free)

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call