NBJL 2020论文导读10:BCW: Buffer-Controlled Writes to HDDs for SSD-HDD Hybrid Storage Server

何柯文

论文(以及slide)下载地址:

论文:https://www.usenix.org/system/files/fast20-wang_shucheng.pdf

Slide:https://www.usenix.org/sites/default/files/conference/protected-files/fast20_slides_wang_shucheng.pdf


论文信息

发表时间:20202527日,发表在FAST 2020上,作者信息如下:

Shucheng Wang, Ziyi Lu, and Qiang Cao, Wuhan National Laboratory for Optoelectronics, Key Laboratory of Information Storage System; Hong Jiang, Department of Computer Science and Engineering, University of Texas at Arlington;

Jie Yao, School of Computer Science and Technology, Huazhong University of Science and Technology; Yuanyuan Dong and Puyuan Yang, Alibaba Group


论文摘要

该论文主要研究了HDD-SSD混合存储系统,发现对于HDD的写入延迟具有周期性的特点,其写入延迟大致有三种,低延迟(35us),中延迟(55us),高延迟(12ms),并且这三种写入延迟周期性的出现,并且HDD的低延迟以及中延迟接近SSD的写入延迟。利用该特点,论文提出了BCW(Buffer-Controlled Writing)MIOS(Mixed IO scheduler)来解决HDD-SSD混合存储系统中尾延迟高以及HDD利用率不高的问题。通过实验验证了,在运用BCWMIOS能减少SSD 93%的写入,以及降低6585%的尾延迟


论文内容

本文首先对于阿里盘古的HDD写入延迟规律进行研究,发现HDD的写入延迟具有周期性和不同延迟分布的特点,其表现如下图:

HDD的写入延迟可以分为低延迟(35us),中延迟(55us),高延迟(12ms),其中低延迟和中延迟可以接近SSD的写入延迟,在用户可以接受的范围内。HDD具有如此写入规律的原因是在HDD中有DRAMCache(256MB DRAM对于10TB HDD),写入方式为写回,DRAM的低延迟使得HDD的写入延迟具有低延迟以及中延迟。针对HDD这一写入延迟特点,论文提出了针对于HDDbuffer写入策略BCW(Buffer-Controlled Writing)和 混合MIOS(Mixed IO scheduler)

HDD的写入状态可以用如下状态转移图来表示

F: Fast表示低延迟阶段,M: Medium表示中等延迟阶段,S: Slow表示慢延迟阶段。A表示ADMBuffer未写满了,不进行状态),U(表示Buffer并写满,状态转移到Slow状态)。根据该状态转移图,可以得到BCW算法

BCW算法:

其基本思想是,在buffer写入过程中,如果是有请求在HDD的请求队列中,则进行写入HDD,在写入HDD过程中,如果下一步的状态为慢状态,则不接受请求,请求转发到SSD中,并且持续大块64KB写入HDD(大块写入对于高延迟具有降低写入延迟的作用),直到写入完成;如果之后的状态为M或者F的状态,则进行小块4KB写入HDD中。

为了进行HDDSSD的分别调度,该文章也设计了MIOS混合调度器,其调度算法如下:

其基本思想为在SSD的请求队列忙或者HDD的下一状态为F快速的时候,写入到HDD队列中,否则写入到SSD中。



自己的认识和体会

该文章所利用HDD的写入特征十分有用,即HDD有三种写入延迟并且具有周期性的特点,利用该特点来分别调度不同的写请求来使得SSD-HDD的混合系统延迟最低,其BCW算法以及调度模型十分简单但是有效。可以看看是否能运用到HDD-PM或者SSD-PM的混合系统中。