[论文解读] Past, Present and Future of Computational Storage: A Survey
本文提出了一种广泛适用的计算存储设备(CSD)原型,基于在 QEMU 中模拟的 Zoned Namespace(ZNS)固态硬盘,利用 NVMe Zoned Namespace 命令集,支持主机-设备语义对齐与访问控制的研究。主要贡献是一个功能完整、开源的原型,展示了 ZNS 固态硬盘如何减少主机与设备之间的语义鸿沟,并通过 CMake 实现完整的开发与调试支持。
We live in a data-centric world where we are heading to generate close to 200 Zettabytes of data by the year 2025. Our data processing requirements have also increased as we push to build data processing frameworks that can process large volumes of data in a short duration, a few milli- and even micro-seconds. In the prevalent computer systems designs, data is stored passively in storage devices which is brought in for processing and then the results are written out. As the volume of data explodes this constant data movement has led to a "data movement wall" which hinders further process and optimizations in data processing systems designs. One promising alternative to this architecture is to push computation to the data (instead of the other way around), and design a computational-storage device or CSD. The idea of CSD is not new and can trace its root to the pioneering work done in the 1970s and 1990s. More recently, with the emergence of non-volatile memory (NVM) storage in the mainstream computing (e.g., NAND flash and Optane), the idea has again gained a lot of traction with multiple academic and commercial prototypes being available now. In this brief survey we present a systematic analysis of work done in the area of computation storage and present future directions.
研究动机与目标
- 研究使用 ZNS 固态硬盘作为计算存储设备(CSD)进行研究的可行性。
- 通过在 QEMU 中实现模拟,解决物理 ZNS 固态硬盘不可用的问题。
- 利用现有技术构建一个广泛适用、开源的 CSD 研究原型。
- 通过 ZNS 的区域级抽象减少主机与设备之间的语义鸿沟。
- 探索通过区域级访问控制列表(ACL)在 CSD 工作负载中实现安全保证的可行性。
提出的方法
- 利用 QEMU 对 NVMe Zoned Namespace(ZNS)命令集的现有支持,模拟 ZNS 固态硬盘。
- 设计一个 CSD 原型,利用 ZNS 的基于区域的结构,在存储设备级别暴露计算能力。
- 使用 CMake 进行构建配置和开发流程实现原型。
- 重用现有开源工具和库,最小化自定义开发,确保可移植性。
- 集成主机端软件以与 ZNS 区域交互,实现在设备级别的数据处理。
- 完整记录整个技术栈,包括依赖项、配置和调试流程,以确保可复现性。
实验结果
研究问题
- RQ1尽管缺乏物理硬件,QEMU 中的 ZNS 固态硬盘能否有效模拟出适用于计算存储设备(CSD)研究的可行平台?
- RQ2ZNS 抽象如何减少主机应用程序与存储设备内部结构之间的语义鸿沟?
- RQ3在 CSD 原型开发中,使用 QEMU 模拟的 ZNS 固态硬盘存在哪些实际限制?
- RQ4如何在 CSD 架构中有效建模和强制执行区域级访问控制列表(ACL)?
- RQ5仅使用现有稳定技术构建一个广泛适用的 CSD 原型时,关键的设计权衡是什么?
主要发现
- 成功实现了一个功能完整、开源的 CSD 原型,基于 QEMU 模拟的 ZNS 固态硬盘,使研究无需依赖物理硬件。
- NVMe Zoned Namespace 命令集在 QEMU 中原生支持,可准确模拟 ZNS 固态硬盘的行为。
- 原型表明,ZNS 的区域级抽象可有效减少主机与设备之间的语义鸿沟,实现更可预测的数据处理。
- 区域级 ACL 可被有效建模与强制执行,为 CSD 工作负载提供细粒度安全性的潜在可能。
- 使用 CMake 和现有工具链,构建了一个可维护、可复现且可扩展的开发环境。
- 该原型为未来计算存储研究奠定了基础,包含已记录的设计决策和替代技术评估。
更好的研究,从现在开始
从阅读论文到最终审阅,大幅缩短您的研究时间。
无需绑定信用卡
本解读由 AI 生成,并经人工编辑审核。