【报告整理】持久内存存储系统研究

目录

  • 背景
  • 传统存储的挑战
    • 测试结果
    • 4个主要挑战
  • 工作内容
    • Octopus:软件栈开销
    • KucoFS:操作系统开销
    • FlaStore:持久化开销
    • Concordia:分布式协议开销
  • 总结

报告人:清华大学 陆游游
报告连接: https://www.bilibili.com/video/BV13P4y1M72t?spm_id_from=333.999.0.0

背景

  • 数据存储的需求:
    • 数据量大、实时要求高
    • 尤其体现在新型应用上:高带宽、低延迟、性能稳定
  • 内存存储系统:数据存储的高性能需求催生而来
  • 新型网络设备
    • NVM(延迟:几百纳秒量级)
    • RDMA(延迟:1微秒量级):绕过内核,减少拷贝,远端的CPU不参与直接访问远端内存
  • 硬件带来新机遇:持久性内存
    • Intel 3D-Xpoint
      • 内存模式(Memory Mode):超大容量内存、容易使用
      • 应用直访模式(App Direct Mode)——(不容易丢失,所以持久性通常在此模式下):操作系统将其作为独立存储设备、应用直接访问
  • 更大的挑战:软件效率问题

传统存储的挑战

测试结果

【报告整理】持久内存存储系统研究_第1张图片
——对于现在高速硬件来说,现在的软件占了延迟的大部分,对于带宽的利用率很低。

4个主要挑战

  • 软件栈开销
    • 存储架构:层次结构导致软件栈臃肿(数据在拷贝)
    • 持久性内存和高速网卡:数据直访
  • 操作系统开销
    • 存储软件:操作系统管理数据开销大(锁的存在限制了多核的性能)
    • 持久性内存Load/Store指令直访
  • 请求持久化开销
    • 传统存储软件:产生大量小写,造成持久化效率低
    • 持久性内存:写带宽有限
  • 分布式协议开销
    • 高速网络:具有一定可编程能力
    • 传统存储协议:网络视作黑盒

工作内容

Octopus:软件栈开销

  • 基于RDMA的分布式持久性共享内存池
    【报告整理】持久内存存储系统研究_第2张图片

  • 如何减少拷贝?客户端可以通过RDMA直接读写文件系统数据
    【报告整理】持久内存存储系统研究_第3张图片

  • 如何高效I/O?

    • 原来:服务器主动式I/O(适用于慢速以太网,在高速硬件下,CPU很容易成为瓶颈)
    • 改为:客户端主动式I/O(客户端从分布式持久性共享内存中直接读写数据)

KucoFS:操作系统开销

  • 用户/内核态协同文件系统
    【报告整理】持久内存存储系统研究_第4张图片
    • 元数据管理技术
      • DRAM+NVM混合内存元数据管理,解决元数据的扩展性
      • 功能卸载
      • 批量处理
    • 数据管理技术
      • 用户态锁管理
      • 乐观读

FlaStore:持久化开销

网络存储协同的批量处理技术。

Concordia:分布式协议开销

  • 在网分布式协议(缓存一致性)
    • 利用可编程交换机的高性能和中心化
    • 利用交换机对缓存一致性请求进行串行化和多播

总结

背景问题:我们需要从硬件满、软件复杂转换为硬件快、软件高效。

  1. 软件栈;
  2. 体系结构适配:CPU缓存的行、刷新粒度匹配问题等;
  3. 操作系统设计:存储上、网络上;
  4. 分布式协议设计:机器之间互相发送消息占用的效率。

你可能感兴趣的:(报告,系统架构)