利用有效的RDMA抽象复制持久内存键值存储
Replicating Persistent Memory Key-Value Stores with Efficient RDMA Abstraction
摘要:
将持久内存(PM)与RDMA相结合是实现高性能复制分布式键值存储(KVS)的一种很有前途的方法。然而,现有的复制方法在应用于PM KVS时不能很好地工作:1)使用RPC在备份时引起软件中断和执行,增加请求延迟; 2)使用单侧RDMA WRITE引起许多小PM写入流,导致PM上的严重设备级写入放大(DLWA)。在本文中,我们提出了Rowan,一个有效的RDMA抽象来处理PM KVS中的复制写入;它聚合来自不同服务器的并发远程写入,并以顺序(因此低DLWA)和单侧(因此低延迟)的方式将这些写入到PM。我们用现成的RDMA实现Rowan。此外,我们构建了Rowan-KV,一个使用Rowan进行复制的日志结构的PM KVS。评估表明,在写密集型工作负载下,与使用RPC和RDMA WRITE进行复制的PM KVS相比,Rowan-KV将吞吐量提高了1.22倍和1.39倍,并将中值PUT延迟分别降低了1.77倍和2.11倍,同时在很大程度上消除了DLWA。
英文摘要:
Combining persistent memory (PM) with RDMA is a promising approach to performant replicated distributed key-value stores (KVSs). However, existing replication approaches do not work well when applied to PM KVSs: 1) Using RPC induces software queueing and execution at backups, increasing request latency; 2) Using one-sided RDMA WRITE causes many streams of small PM writes, leading to severe device-level write amplification (DLWA) on PM. In this paper, we propose Rowan, an efficient RDMA abstraction to handle replication writes in PM KVSs; it aggregates concurrent remote writes from different servers, and lands these writes to PM in a sequential (thus low DLWA) and one-sided (thus low latency) manner. We realize Rowan with off-the-shelf RDMA NICs. Further, we build Rowan-KV, a log-structured PM KVS using Rowan for replication. Evaluation shows that under write-intensive workloads, compared with PM KVSs using RPC and RDMA WRITE for replication, Rowan-KV boosts throughput by 1.22X and 1.39X as well as lowers median PUT latency by 1.77X and 2.11X, respectively, while largely eliminating DLWA.
机构、总结、中文摘要均由AI分析而来,可能存在错误,请以论文正文为准。