过去一周,不少媒体都放出文章说当SSD不上电时,数据就可能在几天时间内丢失。尽管这一说法有些道理,但这个问题已经在很多论坛上造成了喋喋不休的讨论,也给一些用户带来了困惑,所以我想试图就此问题进行一些更为深入的解释,希望能够解决读者的困惑。
首先,我们看到的报道来自于固态技术协会(JEDEC),并不是一些人认为的来自希捷——这份报告实际上来自于固态技术协会的JC-64.8小组委员会(即SSD委员会)的前主席Alvin Cox,这意味着我们可以将其作为比较客观的意见,但是是这样吗?事实上,需要说明的一点是Cox先生还有另一个职业身份:希捷公司的一名高级工程师。但这并不值得特别的关注,因为固态技术协会的目的本来就是将各个制造商集中起来开发开放标准。该协会的成员和主席都是来自各个公司的员工,目前JC-64.8小组委员会由来自HGST的Frank Chu领导。
在我们进入实际的探讨之前,让我们先看一下制造商需要满足的SSD耐受力要求。首先,硬盘驱动器的容量不能缩水,也就是说其存储模块不能过多失效而导致存储容量下降。其次,其必须满足UBER(不可修复的错误比特率)的要求和功能性错误的要求(FFR)。最后,硬盘驱动器还必须维持一定的不上电数据保存时间,至少要达到JEDEC的标准。注意所以这些条件必须在写入最大量的数据时也要满足,比如说,如果一个硬盘的规格是100TB,它就必须在写入100TB数据后满足这些要求。
上表总结了客户端和企业版SSD需要满足的标准。我们可以看到,客户端SSD的数据留存标准是30℃下维持一年时间,这一温度高于平均室温。数据的留存也确实和温度有关,让我们再仔细研究一下数据留存时间和温度的关系。
注:本表中的数据来自于英特尔提供的材料,而非希捷
在工作温度为40℃,断电温度为30℃时,客户端SSD的数据留存时间为52周,约1年时间。如上表所示,SSD的数据留存时间正比于工作温度,反比于断电时的温度。其中最糟糕的情况是工作温度为25-30℃,而断电温度为55℃,此时,SSD的数据保留时间就仅有一周了,这就是那些媒体宣称“SSD数据可能会在几天内”丢失的依据。当然,这确实有可能发生,但正常的坏境却恐怕不是这个样子吧?
对于我们这样的用户来讲,断电温度要达到55℃也并不现实,因为我们的硬盘大都放在室内——柜子里、箱子里……,温度也是室温,一般低于30℃。而工作时的温度则一般会高于40℃,因为硬盘和其它相邻的组件在工作时都会产生热量。
接下来我们从更为专业的角度解释一下数据留存时间的变化问题。半导体的导电率会受到温度的影响,这对于NAND来说却是个坏消息;因为按我们的需求,当断电时,其中的电子不应该移动,因为这会改变存储单元中的电荷分布。换句话说,当温度上升时,电子能更快地从浮动栅极逸出,并最终改变存储单元的电压状态,使其中的数据变得不可读取。
而当硬盘工作时,又呈现相反的效果。因为温度越高,半导体导电能力越强,于是程序在进行读写操作时器件中的电流也越大,使得沟道氧化物的受力更小,从而提高了存储单元的耐受性,因为其耐受性实际上就和沟道氧化物保留浮动栅极中电子的能力有关。
总而言之,只要你使用SSD的坏境是一般的居住和工作坏境,你就没必要担心SSD的数据留存性问题。另外还要清楚,这里给出的数据是已经经过耐受性测试的数字,如果你购买的是全新的固态硬盘,数据的留存性能还会更高一点,一般基于MLC NAND(多层单元闪存)的固态硬盘都有10年以上的数据保留时间。如果你今天就购买一个硬盘,然后将其储藏起来,那实际上你会发现硬盘换代的速度比其中数据丢失的速度还快。
另外,考虑到现在SSD的价格,将数据放到SSD中并在阴凉处存储实际上并不划算,如果你需要将数据保存或者归档,我还是推荐你使用机械硬盘,毕竟便宜多了。