与磁盘媒体不同,闪存媒体会磨损。经过一定数量的写数据操作,存储单元对写数据指令作出的反应会出现越来越多的错误,它的存储能力也会下降。多级单元闪存在这方面的表现更差,因为每个单元有两位,增加了电子活动和磨损。
NAND必须能够按存储单元模块而不是单个单元级来读写数据。当把新数据写入某个存储模块时,在覆写之前,整个存储模块都必须被擦除。存储模块中即将被擦除的有用数据将被复制下来,然后与新的数据一起被写入存储模块,大致说来,这意味着固态硬盘在一次写入操作中实际上要进行两次写入操作。
这种情况被称作写放大,它应该被降低下来,尽可能让新的写数据操作次数与删除内部的写数据操作次数之间的比率接近1比1.
处理这个问题有3个基本的方法。
一种方法是将写入的数据暂时储存的一个临时区域,对它们进行批处理,让它们能够在顺序写数据进程中被写入完整的存储模块,而不是在存入系统的同时马上就写入随机存储模块。那些数据也许会被压缩以减少它需要占用的存储单元的数量,同时还可以提高闪存的使用寿命。
企业级固态硬盘应该具有5年的使用寿命。
第二种方法是超额准备闪存空间,然后预留出一个区域,在其他存储模块用完时使用。闪存控制器保持着分布图,随时了解已经使用的存储模块、磨损的数据存储模块、尚未使用的存储模块和无法使用的存储模块。当存储模块磨损之后,它们就会被新的存储模块取代。
第三种方法被称为磨损调整,控制器必须保证写入固态硬盘的功能对所有存储模块而言是公平共享的,不会集中在少数存储模块上面。这有助于让固态硬盘中的存储单元均匀磨损,以及保持存储容量。
在将数据均匀分布在固态硬盘的过程中,某些数据会被移动。这就会产生新的写数据操作,从而缩短固态硬盘的有效使用寿命。需要利用控制器算法来优化磨损调整和减少写数据的数量。
企业级固态硬盘应该具备5年的使用寿命。它还应该具备能够写入的正式数据量,比如800GB多级单元固态硬盘能够写入14.6PB的数据量,相当于每天写满10块硬盘。
如果数据写入的速度较低,那么设备的使用寿命就会较长。供应商应该保证产品使用寿命。