美文网首页
SSD写放大的问题

SSD写放大的问题

作者: wayyyy | 来源:发表于2021-09-02 02:09 被阅读0次

    写放大(Write amplification)是2008年,由英特尔和SiliconSystems在论文之中首次提出:它表现为在SSD上实际写入的数据远远大于用户写入数据。

    当OS删除数据时,并不会立即删除,而是把删除的数据上标记一个"已删除"的标签。当使用机械硬盘时,文件系统可以直接将新数据写入到"已删除"数据存储的位置。但是在固态硬盘中,如果想让存储"已删除"数据的存储的位置写入新数据,就需要先把整个存储的位置数据擦除,才可以写入新的数据,也就是说固态硬盘并不具备直接覆盖旧数据的能力。

    SSD每次写入的最小单位为Page,每个Page是4KB大小,而每次擦除的大小单位为Block,Block通常由64或者128个Page组成。

    image.png

    现在假设一个块(64 page)上有32个page标记为"已删除",还有32个page为有效数据。如果此时,我们想要在这个块上写入数据,那么需要先将整个块擦除,那32个有效数据page怎么办呢?只有把32 page的有效数据搬移到另一个有空位置的block块中。这时我们发现,实际硬盘写的数据比实际我们想写入的数据要多,这就是写入放大。


    参考资料
    1、https://www.zhihu.com/question/31024021

    相关文章

      网友评论

          本文标题:SSD写放大的问题

          本文链接:https://www.haomeiwen.com/subject/raaviltx.html