Nezha: A Key-Value Separated Distributed Store with Optimized Raft Integration
This addresses performance bottlenecks in distributed storage systems for big data applications, offering a novel integration approach with strong consistency.
The paper tackled performance issues in distributed key-value stores caused by overlapping persistence operations between consensus protocols and storage engines, resulting in significant I/O overhead. It presented Nezha, a prototype that integrates key-value separation with Raft, achieving average throughput improvements of 460.2% for put, 12.5% for get, and 72.6% for scan operations.
Distributed key-value stores are widely adopted to support elastic big data applications, leveraging purpose-built consensus algorithms like Raft to ensure data consistency. However, through systematic analysis, we reveal a critical performance issue in such consistent stores, i.e., overlapping persistence operations between consensus protocols and underlying storage engines result in significant I/O overhead. To address this issue, we present Nezha, a prototype distributed storage system that innovatively integrates key-value separation with Raft to provide scalable throughput in a strong consistency guarantee. Nezha redesigns the persistence strategy at the operation level and incorporates leveled garbage collection, significantly improving read and write performance while preserving Raft's safety properties. Experimental results demonstrate that, on average, Nezha achieves throughput improvements of 460.2%, 12.5%, and 72.6% for put, get, and scan operations, respectively.