0%

HPDC论文

  • HPDC论文系统学习(DStore: A Fast, Tailless, and Quiescent-Free Object Store for
    PMEM)
  • 摘要

    本文作者介绍了一种新型的对象存储系统,具有更小的尾延迟的基于非忆失性存储的系统。

  • 背景介绍

    作者首先列举出了三种常见的存储系统架构:

    • cached架构

      • 架构介绍

      cached架构,非忆失性存储通常是作为缓存来加速系统速度的。这种情况下,cache中的数据最终是必须要被放到后端的持久性介质中。因此,检查点机制能够很好的帮助我们回收日志空间并重新分配。这种模式的问题就是在checkpoint过程中系统变得不可访问知道cache中的数据被持久化。这会对尾延迟造成
      很大影响。

      • 缺点

      我们选择了PMEM-RocksDB和MongoDB-PM(加入或者不加入checkpoint)进行对比。PMEM-RocksDB是基于LSM树的数据库存储引擎,通过把常驻日志放在PMEM中来提高性能。

      MongoDB-PM使用了WireTiger作为存储引擎。把目录和日志文件存储在PMEM中来提高性能。这里的checkpoint作者使用了在NOVA文件系统中提出的copy-on-write技术。

      最后的测试结果发现无论是哪一种模型,只要选择了checkpoint机制,尾延迟就有了很大的增加。

    • uncached架构

      • 架构介绍

      uncache架构下,所有的数据都是一次性完成持久化的。事务操作保证了原子化。因为数据直接一步持久化了,不需要检查点的存在了。最大的问题就是无法保证性能,即便是在使用了PMEM的情况下。造成这个问题的主要原因是CPUcache中的数据需要被及时flush到持久化存储介质中。但是在尾延迟表现上却比cache架构有更好的表现。