SMR磁盘学习9---Classifying Data to Reduce Long Term Data Movement in Shingled Write Disks

SMR磁盘学习9---Classifying Data to Reduce Long Term Data Movement in Shingled Write Disks

第一部分:总述

本篇文章就band compaction处理造成数据移动开销很大,造成系统的响应能力下降和整个系统活动频繁这个问题,进行了分析与解决。

第二部分:重难点详解

band compaction 算法的好坏直接关系到系统性能。首先提出对数据分类,主要分成三类:free blocks, cold blocks, hot blocks。这样分类的原因是:cold blocks与hot blocks相比,选择精简压缩hot blocks越少,数据移动的量越少(压缩hot blocks的意义很小,这里不考虑对hot blocks的压缩); cold blacksfree blocks相比,cold blacks选择压缩的权重小于free blocks时进行压缩产生的数据移动量会减少。

其次,开发了Cold-weight算法。如果给cold blocks 一个权重,那样会在每次执行压缩算法时选择被压缩的bands包含的free blocks较多,这样bands的精简压缩导致的数据移动量变少。Cold-weight算法:将收到的写请求写入到日志中的segments,当到达日志的末尾,安排写入任意一个empty segments,如果没有empty segments ,利用公式%free + %cold × (w cold - w hot)/(1 - w hot )选择值最高的segments进行精简压缩得到empty segments如下图所示

最后,对Cold-weight算法进行测试。将Cold-weight算法与Empty(贪婪算法)进行对比验证,Empty(贪婪算法)选择精简压缩的segments是含有实时数据最少的。从实验的结果可以看出Cold-weight算法比Empty算法移动的数据块少,最高可减少47%数据移动。

第三部分:总结

结论: 利用数据分类提出的Cold-weight算法可以实现减少数据的移动量,。

对于cold blocks权重设置的一个合理范围没进行深入探究(文章可继续研究的点)。

原文地址:https://www.cnblogs.com/tao-alex/p/5933508.html