DAOS: A Scale-Out High Performance Storage Stack for Storage Class Memory——论文泛读

Supercomputing Frontiers 2020 Paper分布式元数据论文阅读笔记整理

问题

企业、政府和学术界出现的数据密集型应用程序将现有的I/O模型扩展到了极限。现代I/O工作负载的特点是元数据与未对齐和碎片化数据的结合比例越来越高。传统的存储堆栈为这些工作负载提供了较差的性能,因为它增加了大量的延迟并引入了对齐约束。

随着经济实惠的大容量持久性内存与高速结构相结合,为重新定义存储模式和高效支持现代I/O工作负载提供了一个独特的机会。新堆栈必须从头开始就采用字节粒度的无共享接口,还必须能够支持大规模分布式存储,而故障将成为常态,同时保持低延迟和高带宽的结构访问。

本文方法

本文介绍了分布式异步对象存储(DAOS),一种开源的扩展存储系统,支持用户空间中的存储类内存(SCM)和NVMe存储。它的高级存储API支持结构化、半结构化和非结构化数据模型,克服了传统的基于POSIX的并行文件系统的限制。对于HPC工作负载,DAOS提供了对MPI-IO和HDF5的直接支持,以及对遗留应用程序的POSIX访问。

DAOS是一个开源软件定义的对象存储, 为大规模分布式非易失性内存(NVM)设计的。提供了KV存储接口,并提供了事务性非阻塞I/O、版本化数据模型和全局快照等特性。

三个模块:

  • 持久内存和持久内存开发工具包(PMDK)。用来存储所有内部元数据、应用程序/中间件KV索引、对延迟敏感的小型I/O。在系统启动期间,DAOS使用系统调用来初始化对持久内存的访问。例如,它将DAX文件系统的持久内存文件映射到虚拟内存地址空间。当系统启动和运行时,通过load和store等内存指令直接访问用户空间中的持久内存,而不需要长的存储调用堆栈。

  • NVMe SSD硬盘和存储性能开发套件(SPDK)[7],支持大I/O和延迟不敏感的小I/O。SPDK提供了一个C库,可以链接到存储服务器,并可以向NVMe SSD提供直接的零拷贝数据传输。DAOS服务可以通过SPDK队列异步提交来自用户空间的多个I/O请求。SPDK I/O完成后,将在永久存储器中为先前存储在SSD中的数据创建索引。

  • Libfabric[8]和底层高性能结构,如Omni-Path架构或InfiniBand(或标准TCP网络)。Libfabric是一个库,用于定义用户空间API和OFI,并将Libfabric通信服务导出到应用程序或存储服务。DAOS的传输层构建在Mercury[9]之上,使用libfabric/OFI插件。它为消息和数据传输提供了基于回调的异步API,并为推进网络活动提供了无线程轮询API。DAOS服务线程可以主动轮询来自Mercury/libfabric的网络事件,作为异步网络操作的通知,而不使用中断,避免上下文切换对性能产生负面影响。

总结

针对大规模分布式非易失性内存(NVM)下的存储系统,本文提出DAOS,采用PMDK、SPDK、RDMA、用户态线程等技术,使数据从发起到存储的整个过程都处于用户态。核心是3个组件:(1)用持久内存和PMDK,存储元数据、KV索引、对延迟敏感的小型I/O,使用load和store等内存指令直接访问。(2)用NVMe SSD和SPDK,支持大I/O和对延迟不敏感的小I/O,使用零拷贝、异步提交I/O等技术。(3)用Libfabric定义用户空间API,客户端的消息和数据传输使用基于回调的异步API,服务线程采用轮询处理网络事件,不使用中断,避免上下文切换对性能的影响。

相关推荐
HollowKnightZ9 小时前
论文阅读笔记:Class-Incremental Learning: A Survey
论文阅读·笔记
Eastmount11 小时前
[论文阅读] (45)C&S24 AISL: 基于攻击意图驱动与序列学习方法的APT攻击检测
论文阅读·系统安全·溯源图·攻击意图·apt攻击检测
小明_GLC13 小时前
ITransformer: Inverted Transformers Are Effective for Time Series Forecasting
论文阅读
依夏c15 小时前
【论文笔记•(多智能体)】Ask Patients with Patience
论文阅读
明明真系叻15 小时前
2025.12.21论文阅读
论文阅读·量子计算
m0_6501082416 小时前
DSGN:基于深度立体几何网络的 3D 目标检测革新
论文阅读·3d目标检测·立体视觉·3d几何体积表示·端到端联合优化·dsgn
m0_6501082416 小时前
FlashLightNet:实时检测与分类静态和闪烁交通灯状态的端到端深度学习框架
论文阅读·自动驾驶·视觉单模态·交通灯状态检测·flashlightnet
m0_6501082417 小时前
PETR:多视图 3D 目标检测的位置嵌入变换新范式
论文阅读·自动驾驶·位置编码·视觉单模态·多视角3d目标检测·petr·3d位置信息与2d特征
Cuby!17 小时前
IEEE Wireless Communications 2025年论文整理2(中英文摘要)
论文阅读·学习·信息与通信
youcans_1 天前
【医学影像 AI】FunBench:评估多模态大语言模型的眼底影像解读能力
论文阅读·人工智能·大语言模型·多模态·眼底图像