Skip to main content
QUICK REVIEW

[论文解读] SMORE: A Cold Data Object Store for SMR Drives (Extended Version)

Peter Macko, Xiongzi Ge|arXiv (Cornell University)|May 26, 2017
Advanced Data Storage Technologies参考文献 22被引用 5
一句话总结

SMORE 是一种日志结构化、纠删码化的对象存储系统,专为宿主管理或宿主感知的 SMR 磁盘设计,支持大对象写入时的全盘带宽利用,并通过区域迁移实现高效的垃圾回收。它通过在索引中交错日志记录与对象数据,实现无需额外日志的索引容错,从而实现低写入放大(在 80% 使用率下 <2.0)和亚分钟级的崩溃恢复。

ABSTRACT

Shingled magnetic recording (SMR) increases the capacity of magnetic hard drives, but it requires that each zone of a disk be written sequentially and erased in bulk. This makes SMR a good fit for workloads dominated by large data objects with limited churn. To explore this possibility, we have developed SMORE, an object storage system designed to reliably and efficiently store large, seldom-changing data objects on an array of host-managed or host-aware SMR disks. SMORE uses a log-structured approach to accommodate the constraint that all writes to an SMR drive must be sequential within large shingled zones. It stripes data across zones on separate disks, using erasure coding to protect against drive failure. A separate garbage collection thread reclaims space by migrating live data out of the emptiest zones so that they can be trimmed and reused. An index stored on flash and backed up to the SMR drives maps object identifiers to on-disk locations. SMORE interleaves log records with object data within SMR zones to enable index recovery after a system crash (or failure of the flash device) without any additional logging mechanism. SMORE achieves full disk bandwidth when ingesting data---with a variety of object sizes---and when reading large objects. Read performance declines for smaller object sizes where inter- object seek time dominates. With a worst-case pattern of random deletions, SMORE has a write amplification (not counting RAID parity) of less than 2.0 at 80% occupancy. By taking an index snapshot every two hours, SMORE recovers from crashes in less than a minute. More frequent snapshots allow faster recovery.

研究动机与目标

  • 解决在 SMR 磁盘上高效存储大型、极少修改的数据对象的挑战,此类磁盘要求顺序写入和批量擦除。
  • 克服驱动器管理型 SMR 的局限性,设计一种系统,充分利用 SMR 的高顺序吞吐量和每 TB 成本低廉的优势。
  • 为媒体、备份和虚拟机镜像等工作负载提供可靠且高性能的存储,这些工作负载的特点是一次写入、顺序读取。
  • 在存在随机删除和系统故障的情况下,最小化写入放大并确保快速崩溃恢复。
  • 设计一种系统,支持独立部署以及与 HDFS 等分布式存储系统集成。

提出的方法

  • 采用日志结构化方法,将数据顺序写入 SMR 磁盘上的大容量叠瓦区域,遵守顺序写入约束。
  • 在不同磁盘的区域之间实施纠删码,以提供容错和可靠性,而无需完整复制。
  • 引入独立的垃圾回收线程,将部分填充区域中的活跃数据迁移至其他区域,以回收空间并支持区域修剪。
  • 维护一个基于闪存的索引,将对象 ID 映射到磁盘上的位置,并通过定期快照实现崩溃恢复。
  • 在 SMR 区域内交错存储日志记录与对象数据,实现无需额外日志机制的崩溃恢复,确保故障后索引的一致性。
  • 使用区域集表管理跨磁盘的灵活、动态区域分组,实现在无备用磁盘的情况下将数据重建到空闲区域。

实验结果

研究问题

  • RQ1如何在尊重 SMR 磁盘的顺序写入和批量擦除约束的前提下,高效利用其高顺序带宽?
  • RQ2在最坏情况下的数据频繁变更模式(如随机删除)下,有哪些技术可最小化 SMR 系统中的写入放大?
  • RQ3如何在不依赖外部日志机制的情况下,实现高效且可靠的崩溃恢复?
  • RQ4日志交错设计是否能够实现索引一致性,并在系统或闪存设备故障后实现快速恢复?
  • RQ5像 SMORE 这类专用对象存储系统,在多样化对象大小和真实工作负载下,能在多大程度上实现全盘带宽利用?

主要发现

  • SMORE 在各种对象大小下均实现了数据写入期间的全盘带宽利用,证明了其对 SMR 磁盘吞吐量的高效利用。
  • 在 80% 磁盘使用率下的最坏情况随机删除模式中,SMORE 的写入放大低于 2.0(不包括 RAID 冗余开销),表现出极强的效率。
  • 通过每两小时一次的索引快照,崩溃恢复时间在 1 分钟以内,若采用更频繁的快照,恢复速度可进一步提升。
  • 日志记录与对象数据的交错存储,使得崩溃恢复无需任何额外日志机制,简化了系统设计并提升了可靠性。
  • 垃圾回收通过将数据从最空闲的区域迁移,有效回收空间,实现区域的重复使用,且无需备用磁盘。
  • 该系统支持独立部署以及与 HDFS 等分布式系统的集成,显著增强了其在大规模存储环境中的适用性。

更好的研究,从现在开始

从阅读论文到最终审阅,大幅缩短您的研究时间。

无需绑定信用卡

本解读由 AI 生成,并经人工编辑审核。