An In-Depth Analysis of Cloud Block Storage Workloads in Large-Scale Production——论文泛读

IISWC 2020 Paper 分布式元数据论文阅读笔记整理

问题

云块存储系统支持现代云服务中的各种类型的应用程序,分析其I/O活动对于指导更好的系统设计和优化至关重要,如I/O调度[6]、[14]、[15]、[21]、缓存[23]、[24]、擦除编码存储[7]、[34]以及云块存储[13]。

本文工作

本文从阿里云收集了数十亿个I/O请求的块级I/O跟踪,对生产云块存储工作负载进行了深入分析。跟踪是从2020年1月部署在阿里云的一个云块存储系统中收集的,为期一个月。包括1000个卷的块级I/O请求,每个卷的原始容量从40 GB到5 TB。工作负载跨越不同类型的云应用程序。每个收集的I/O请求都指定卷号、请求类型、请求偏移量、请求大小和时间戳。本文研究了负载强度、空间模式和时间模式的特征,还对跟踪和Microsoft Research Cambridge(MSRC)的公开块级I/O跟踪进行了比较研究,并确定了这两组跟踪的共性和差异。

开源数据:GitHub - alibaba/block-traces

在负载强度方面,两个跟踪的I/O流量相似,而阿里云的工作负载更为多样。对于空间模式,两个跟踪都显示了小工作集中的读写聚合,而阿里云中的读写聚集更为突出,两个跟踪都显示了更新覆盖率的不同模式。对于时间模式,两个跟踪在卷上有不同的时间更新模式,它们对写入的块有不同的访问趋势:在阿里云中,每个写入的块后面都可能跟着一个写,而在MSRC中,每个写的块后面可能跟着一次读或写。

15个发现

  • 阿里云和MSRC的卷负载强度相似

  • 阿里云和MSRC在一部分卷中有较高的突发性,但总体上突发性较低。

  • 与MSRC相比,阿里云的卷间突发更为多样。

  • 从请求的到达时间来看,阿里云和MSRC都存在较高的短期突发性。

  • 阿里云和MSRC中的大部分卷在整个跟踪期内都是活跃的,而阿里云的活跃度高于MSRC

  • 写入是决定阿里云和MSRC活跃度的主要因素

  • 只考虑读请求时,阿里云和MSRC的活跃度都大幅下降,阿里云的读活跃度低于MSRC。

  • 随机I/O在阿里云和MSRC中都很常见,阿里云中的卷比MSRC中的卷的随机I/O更多。

  • 对于阿里云和MSRC中的一部分卷,读写集中在小部分工作集中,写入比读取更集中。

  • 在阿里云中,读写往往分别聚集在主要读和主要写的块中。

  • 阿里云的更新覆盖率一般高于MSRC,更新覆盖范围也因卷而异。

  • 阿里云和MSRC都有较大的写后读(RAW)时间,但写后写(WAW)时间较小。在阿里云中,WAW请求的数量大于RAW请求。

  • 阿里云中的大多数读后读(RAR)和读后写(WAR)请求的运行时间都很大,而MSRC中的RAR和WAR请求的运行时长通常很小。在这两个跟踪中,WAR时间都比RAR时间大得多,而RAR和WAR请求的数量相当。

  • 写入的块具有不同的更新间隔。

  • 阿里云中的一些卷即使在较小的缓存大小,也有较低的未命中率。当缓存大小增加时,阿里云的未命中率降低幅度高于MSRC。

3个设计思路

  • 负载均衡:数据放置策略应该意识到工作负载的多样性和单个卷的突发性。写是活跃度的主要因素,因此可以通过日志结构设计优化写入流量。

  • 缓存效率:少量卷吸收了大量读写请求,而且云块存储中的许多卷的读和写分别聚合在读为主块和写为主块中。分析发现WAW很小、RAR和WAR很大,因此倾向于缓存写入的块。

  • 存储集群管理:发现有大量小和随机I/O,可以通过日志结构设计优化。不同卷的更新模式不同,时间和空间特征不同,建议将闪存转换层(FTL)保持在系统级别[8],以灵活地协调向闪存发出的I/O。

总结

对阿里云块存储的I/O进行分析,提出了一些发现:(1)部分卷中有较高的突发性,但总体上突发性较低。(2)卷间突发更为多样。(3)存在较高的短期突发性。(3)大部分卷在整个跟踪期内都是活跃的。(4)写入是决定阿里云活跃度的主要因素。(5)随机I/O在阿里云很常见。(6)读写集中在小部分工作集中,写比读更集中。(7)读写分别聚集在主要读和主要写的块中。(8)更新覆盖率较高,且更新覆盖范围因卷而异。(9)写后读(RAW)较大,但写后写(WAW)较小,WAW请求的数量大于RAW请求。(10)读后读(RAR)和读后写(WAR)都较大,WAR比RAR时间更大,而RAR和WAR请求数量相当。(11)写入块具有不同的更新间隔。

根据发现提出3个设计思路:(1)负载均衡:需要数据工作负载的多样性和卷的突发性。(2)缓存效率:建议缓存写为主的块。(3)存储集群管理:建议通过日志结构设计优化小和随机I/O,建议将闪存转换层(FTL)保持在系统级别协调向闪存发出的I/O。

  • 15
    点赞
  • 17
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

妙BOOK言

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值