中文

Arcadia:一种快速可靠的持久内存复制日志

分布式、并行与集群计算 2022-06-28 v1 性能

摘要

字节寻址持久内存(PMEM)的性能特性有潜力在广泛应用范围内显著提升系统性能。但持久内存给程序员带来了相当大的新挑战:仅 8 字节写原子性、乱序刷写以及受节点故障限制的可用性。可以通过仔细排序存储操作顺序并在每个排序点插入显式刷写和栅栏操作,直接应对 PMEM 的原子性和排序约束。但这繁琐且易错:过多刷写操作会抵消 PMEM 的性能优势,且即使大量使用,也难以证明给定程序是崩溃一致的。日志是处理这些问题的极佳抽象,但先前关于 PMEM 日志的工作未能成功隐藏 PMEM 的特异性。此外,日志接口与设计中的缺陷阻碍了充分发挥 PMEM 性能。我们认为,一种向程序员隐藏特异性同时提供完整性能的日志设计是成功的关键。在本文中,我们提出 Arcadia 的设计与实现,一种基于 PMEM 的通用复制日志以解决这些问题。Arcadia 处理日志记录的原子性、完整性和复制,以减轻程序员负担。我们的设计具有若干新颖方面,包括带有序提交并发日志写入、针对本地与远程 PMEM 写入的原子性与完整性原语,以及基于频率的日志强制策略以提供低开销持久性并保证未提交记录的有限丢失。我们的评估显示,Arcadia 在提供更强日志记录持久性保证的同时,性能优于最先进的 PMEM 日志(如 PMDK 的 libpmemlog、FLEX 和 Query Fresh)数倍。我们期望 Arcadia 成为领先的现成 PMEM 日志设计。

关键词

引用

@article{arxiv.2206.12495,
  title  = {Arcadia: A Fast and Reliable Persistent Memory Replicated Log},
  author = {Shashank Gugnani and Scott Guthridge and Frank Schmuck and Owen Anderson and Deepavali Bhagwat and Xiaoyi Lu},
  journal= {arXiv preprint arXiv:2206.12495},
  year   = {2022}
}

备注

14 pages, 10 figures