存储 频道

揭秘Intel SSD硬盘的使用寿命问题

  【IT168 资讯】在前面的文章(Intel X25-M SSD固态硬盘性能评测概况)中,我们大概给出了对Intel X-25M SSD硬盘的评测结果概要,可能更多的读者会感兴趣,Intel如何实现SSD硬盘的高性能和高可靠性,那么本文将深入介绍Intel SSD硬盘通过哪些措施来保证SSD的使用寿命问题。

  在另外一篇文章:深入解析SSD中MLC与SLC的性能差异,我们已经探讨了SSD的工作原理,以及MLC与SLC SSD在性能和可靠性上的差异,实际上,Intel在针对SSD的可靠性和使用寿命上,也有一些保障措施。

成倍写入机制与智能磨损均衡

  参考在深入解析SSD中MLC与SLC的性能差异一文中,我们对SSD工作原理的描述。SSD最小记录的单元是Page(4K),最小擦除单元是block(512K)。当我们保存该文件时,它会以2 pages的形式保存在闪存记忆体中;将其删除时,SSD会标记pages为无效,但实际上并不会删除该block。SSD将等到block中一定比例的pages被标记为无效时,才会复制一些有效的数据到新的pages里去并擦除该block。SSD这样做是为了限制了每个block擦除的次数,从而延长驱动器寿命。

  并不是所有的SSD句柄删除都通过相同的方式,如何删除和何时删除一些包含无效页面的块,成为SSD寿命的关键。

  对于一些质量不好的SSD来说,如果你只是想更换一个16KB的文件,控制器可能会错误地将整个block读取到主记忆体,然后更换4个页面,从SSD中擦除块,然后把4个改变页写入到新的块中。使用英特尔固态盘的页面/块,就意味着如果只写入16KB新数据,却相当于将512KB写入了SSD ——写入放大了32倍。

  我们暂时没有其他SSD控制器的数据可以显示它们是如何处理这样的情况的,但英特尔指出,传统的SSD控制器写入放大在20–40倍的范围内,这就减少了它们驱动器的寿命。

  对于典型客户的工作量来说,其写入放大系数小于1.1倍,换句话说,比你的实际需要多写入了不到10%的数据。写入放大系数本身并没有多大意义,重要的是驱动器的寿命,此外还有一个因素起作用。我们已经证实,对于闪存来说,写入block的次数有限,之后它就会失去存储数据的能力。SSD相当智能,会使用均衡损耗算法分散block在整个驱动器中的使用。记住,对于SSD来说,无论写入什么地方,其性能将始终如一,这一点不同于其它机械磁盘。

在英特尔磨损均衡效率上,所有使用的block几乎是相同的数值

  因此,SDD试图将数据均匀地写入驱动器的所有block里。例如,假设您下载一个2MB的文件到您新的、从未使用过的SSD中,然后保存到block 10、11、12、13中。您意识到下载错了文件并删除它,然后去下载正确的文件。

  闪存控制器不是将新文件写入block 10 、11、12、13中,而是写入block 14、15、16、17 中。事实上,block 10、11、12、13这四个block无法再次使用,直到驱动器上每隔一个block都已写入了一次。所以,尽管您的MLC SSD可能只有10,000次周期的寿命,但由于智能均衡损耗算法,它将能使用相当长的一段时间。

  坏的磨损均衡,大概在现存的SSD上,一些blocks比其他的blocks更多的被使用

  英特尔SSD大约会有4%空间是均衡损耗算法不能控制的的,这意味着,英特尔SSD上 4%的block将比其他的block更易磨损。

0
相关文章