Gleaning the Consensus for Linearizable and Conflict-Free Per-Replica Local Reads.

Jian Yi,Qing Li,Bin Zhang,Yong Jiang,Dan Zhao,Yuan Yang,Zhenhui Yuan
DOI: https://doi.org/10.1145/3600061.3603175
2023-01-01
Abstract:The optimal read strategy for strong consistent key-value applications is to enable the per-replica local reads that each replica has the ability to serve reads locally. Unfortunately, current schemes for the per-replica local reads are perplexed by two issues. First, some schemes have to violate the per-replica local reads when the workload is skewed, degrading the throughput. Second, most of current schemes rely on leases or a specialized hardware to guarantee the linearizability, bringing difficulties to the deployment. In this paper, we proposes Glean, a linearizable read protocol that solves the issues of current schemes. In Glean, replica nodes always serve reads locally and we ask clients to validate the linearizability. To achieve the validation, Glean designs a novel read algorithm that allows the client to glean a consensus hint from replicas and enables replicas to contribute to the validation lightweight and fast. We implement Glean with a widely-used software stack. Our 3-replica evaluation shows that the throughput of Glean is at most 2.1 × to the throughput of an unreplicated application under heavy-read workloads.
What problem does this paper attempt to address?