论文部分内容阅读
大容量降价真香吗
2019年固态硬盘经历了一轮大降价,尽管近期价格有所回升,全面普及的潮流已经不可阻挡。480GB~1TB容量的产品俨然已经成为主流需求,甚至有些消费者已经用大容量固态硬盘(图1)单盘装机,而不是小容量固态硬盘装系统、机械硬盘做数据仓库的使用方式了。
尤其是M.2接口的固态硬盘,即便是PCI-E×2通道的M . 2接口(图2)也可以达到1500MB/s的传输速率,远远超过SATA接口产品(包括SATA固态硬盘),让硬盘终于不再是系统性能最短的那块板。不过有些特别看重价格的用户选择了杂牌固态硬盘,长时间使用后遇到了一个问题,就是速度大幅降低。
固态硬盘颗粒大不同
其实最早的固态硬盘几乎没有掉速的问题,这一现象是随着NAND闪存的技术变迁产生的。最初的N A ND闪存的数据存储模式是SLC的,优点是读写能力出众,但是容量难以做大。为了解决容量问题,数据的存储模式逐步从SLC一路发展到MLC、TLC、Q LC,容量也随之几何增长。
这些增加容量的存储模式,其实就是在单位内保存的电荷位越来越多,如此可以在几乎不增加硬件成本(价格)的情况下,让单位容量不断提升。当然从同样容量的产品角度看,就是价格不断下降了。但是要在NAND闪存的结构内“塞下”更多的电荷,记录更多的数据(图3),相应的控制就必然变得更复杂,因此写入数据的时间也就更长,进而导致写入性能大幅下滑。固态硬盘厂商从MLC颗粒之后就开始采用缓存设计(图4),通过大容量缓存暂存数据,然后再慢慢写入,让数据写入的表面速度可以保持一定的水准,而不是一泻千里。不过问题是,当读写数据较大、缓存容量耗尽后,写入速度会立刻“显出原形”。
GC、TRIM是什么
为了解决掉速问题,人们发明了TRIM命令和GC机制。先说TRIM命令。在硬盘上进行常规数据写入时,操作系统实际上会先“告诉”硬盘要删除已有的数据,然后再写入新数据到硬盘里。为什么这样呢?因為操作系统删除文件的时候,实际上只会在被删除的文件上做个“记号”,表示这里已经没有东西了,并将文件隐藏起来,这个“记号”会保留在硬盘的缓存里,以后有新数据写入需要这些空间的时候,再真正删除相关数据,或者直接在其基础上覆盖写入,只需要进行相应的翻转磁极操作,将磁盘状态改变为新数据就好。如此一来,硬盘在写入数据时需要更多的时间来查询缓存里的各种“记号”,所以持续写入会越来越慢,这从硬盘测试时读写曲线逐步下降就能看出来。
这个机制在机械硬盘上虽然有些影响速度,但执行起来还算顺畅,但用到固态硬盘上问题就来了,因为闪存默认是不允许直接覆盖数据的,只能先完全擦除,等到电荷全部处于特定稳定状态,即完全“空闲”的闪存空间才来进行写入。在没有TRIM命令的情况下,因为前文提到的操作系统的删除机制限制,固态硬盘其实是不知道哪些文件是被“删除”的,更不知道哪些数据已经无用了,必须到操作系统要求在相同的地方写入数据时,才能知道这些数据可以,也需要被擦除。这样就出现了在数据等待写入时,固态硬盘还在忙着先清空数据的情况,极大地影响了效率和写入速度。
TRIM命令(图5)就是在操作系统删除数据时使用类似快照的方式来“记住”这里已被删除,以及目前的电荷状态,这种方式的速度比直接读写硬盘、标记删除区域要快得多,同时固态硬盘不用反复查询哪里被标记了,时间自然就节省下来了。而写入数据的时候,TRIM命令也允许数据直接根据快照记录的电荷状态,向已删除的区块进行修改写入,而不用花时间去把它恢复到空白状态,也就是直接覆盖存储,可以明显提升写入速度。
支持TRIM命令的产品必须具备三个要素:第一,固态硬盘的主控制器和当前搭配的固件需要支持TRIM命令接收;第二,当前操作系统需要支持TRIM指令发送,这点Windows 7之前的操作系统是不支持的;第三,固态硬盘的驱动程序必须支持TRIM命令传输。
GC则是GarbageCollection(垃圾回收机制)的缩写,简单地说,就相当于硬盘的碎片整理,但它是固态硬盘自身的机制,与操作系统完全无关,也不需要人为干预。其具体功能是将零散分布在存储模块中的有效数据合并到一个新的模块中,并将旧的模块数据擦除(图6)。GC还细分了闲置垃圾回收和被动垃圾回收两种方式。顾名思义,前者就是在固态硬盘空闲间隙进行回收操作,减少固态硬盘主控的负担,提高工作效率,缺点是数据和时间都更加零散,需要更多线程的读取和写入,就是所谓的额外写入放大,对系统性能有较高的要求;而被动垃圾回收则是在数据读写的同时进行垃圾回收操作,这时会增加主控负担,延长操作时间。
GC机制的好处首先是减少了系统读取时的寻址负担,另一方面也能留出更多完全空闲的模块,便于存储新的数据。GC机制对固态硬盘的性能和寿命都起到至关重要的作用,不过它仍然是一个读写操作过程,因此频繁的GC操作会严重影响闪存的寿命。如何用GC机制配合TRIM命令,最大化数据读写机制与性能之间的平衡,就成为固态硬盘固件算法的关键。
杂牌掉速的真实秘密
说了这么多,揭秘的时间到了,为什么正规大厂的固态硬盘掉速问题相对较少呢?就是因为厂商投入了大量精力对固件的算法进行优化,但是这个优化非常麻烦。第一,厂商要具备非常出色的技术能力。主控芯片厂商提供的产品虽然有标准的算法,但是具体到自家生产的固态硬盘上,就必须进行二次开发。没有这个技术实力,就只能“拿来主义”,主控厂商给的默认值是什么就用什么。第二,这个算法是需要在基于颗粒的技术特性之上进行开发的。也就是说厂商必须知道自己拿到的颗粒是什么电气特性,由于同一个闪存颗粒厂商提供的这一批颗粒和下一批颗粒都可能存在区别,那么就必须在这基础之上,针对主控芯片的特性分别对它们进行二次开发,二者缺一不可。
至于杂牌固态硬盘小厂商,它们第一没有二次优化算法的技术能力,第二甚至不清楚自己下一批颗粒的进货来源,针对颗粒电气特性进行优化更无从谈起。没有好的算法来平衡,它的回收机制是有缺陷的,根本做不到合理的优化回收。
这下,你明白为什么很多超低价位的固态硬盘便宜,用一阵子就会出现掉速问题了吧?要注意的是,刚开始使用时,固态硬盘因为有着大量完全空白的存储单元,所以速度表现会非常良好,但没有好的固件算法支撑,使用一段时间后,空白存储单元不足,又不能很好地回收和整理,掉速现象才会逐渐出现和严重。因此,不管是评测还是周围人的短期使用体验,都可能存在一些偏差。
这些固态硬盘安心用
那么,要远离不靠谱的杂牌,我们就得了解市场中到底哪些才是值得信任的固态硬盘厂商和型号。下面笔者就来简单介绍一些典型产品吧。
金士顿UV500系列480GB SATA接口固态硬盘
针对没有M.2接口的老机型,也同样有适用型号推荐,比如金士顿UV500系列的480GB产品。其主控、闪存配置为Marvell88SS1074+64层3D TLC闪存的组合,性能相当出色,接近SATA3.0接口理论传输速度的极限,虽然500MB/s级别的速度远不如很多M.2 SSD,但这也是接口规格的限制所致,实在无奈。
金士顿固态硬盘的最大特点就是坚固耐用,且性价比极为突出。金士顿为它提供了5年有限质保。而且为了加强安全性,它支持256位AES硬件加密、TCG Opal 2.0安全管理解决方案,对涉及商业机密等营商环境非常适用。
希捷酷鱼500GB固态硬盘
在500GB容量的SATA接口固态硬盘中,希捷酷鱼系列绝对是非常具有性价比的产品之一。它的顺序读取速度高达560MB/s,顺序写入速度高达535MB/s,是SATA 3.0接口的极限速度,而且其总写入字节数高达249TBW,耐用性非常出色。其实笔者还是比较喜欢大容量的SATA接口固态硬盘,它们的适应性更好,从系统盘位置退役后完全可以当作数据仓库盘、游戏/影音的存储盘使用。尤其是用于M.2+2.5英寸组合的笔记本机型,一个高速M.2系统盘+一个大容量仓库盘,岂不是完美?
金士顿KC2000系列500GB M.2接口固态硬盘
金士顿固态硬盘有口皆碑,稳定性无需担忧,一直以来都是电脑装机的首选产品之一。从性能上看,KC2000系列的固态硬盘性能非常了得,它采用了M.2接口,支持PCIe×4通道,主控为慧荣旗舰型号SM2262EN,是目前市面主流产品中的性能翘楚,也不愧为金士顿新旗舰产品。其采用AES 256位加密,96层3D TLC闪存,最大容量版本可达2TB。KC2000系列固态硬盘的最大持续读取速度为3000MB/s~3200MB/s,持续写入速度为1100MB/s~2200MB/s,随机读取速度为250K IOPS~350K IOPS,随机写入速度为200K IOPS~250K IOPS。
KC2000的主流產品,500GB版本非常超值。其总写入数据可达300TBW之多,使用寿命完全不需担心。当然了,如果预算有限,又想上M.2接口硬盘,可以考虑金士顿的A2000系列产品,其速度略低,但是容量价格比更为突出!
希捷酷鱼510系列 512GB M.2接口固态硬盘
希捷一直是全世界举足轻重的存储专业厂商,酷鱼系列产品现在也拥有了固态类型的选择。这款512GB的M.2接口固态硬盘采用群联PS5012-E12主控+东芝64层3D TLC的组合,PCIe×4高速接口,性能非常出众,读写速度分别是3400MB/s和2100MB/s,随机读写速度分别是350K IOPS和530K IOPS。而且其总写入字节数达到了320TBW,耐久性也不需要有任何担心。如果你认准了希捷酷鱼510系列,但是预算又有限,还可以考虑256GB版本,价格要便宜不少呢。
西部数据Black系列SN750-游戏高性能版500GB M.2接口固态硬盘
西部数据自从收购闪迪后,迅速完成了从机械存储到固态存储的多元化布局,这款Black系列SN750 500GB固态硬盘就是西部数据的杰作之一。不同于其他厂商的是,西部数据(闪迪)具有自主设计主控和闪存芯片的能力,这款产品就采用源自闪迪的20-82-007011主控,以及闪迪的64层堆叠BiCS 3D TLC闪存,固件的缓存策略设计无疑会很出色。有趣的是,SN750支持“游戏模式”(Game Mode),打开后会禁用低功耗状态,从而大大降低读写延迟,当然功耗和发热会有所增加。这个功能对游戏玩家来说无疑是非常友善的,可以大幅度缩短游戏载入和读盘等待的时间。
西部数据Blue系列-3D进阶高速读写版 500GB SATA接口固态硬盘
西部数据的Blue系列固态硬盘属于其入门级产品,采用Marvell 88SS1074主控+闪迪64层堆叠BiCS 3D TLC闪存的搭配方式,500GB版本可提供545MB/s读取、525MB/s写入、4K随机读取100K IOPS、4K随机写入80K IOPS的性能。西部数据还升级了质保政策,从3年质保提升至5年质保,可靠性不需要担心。
目前500GB版本是西部数据Blue系列中性价比最高的一款,十分划算,追求实惠的用户可以优先考虑。
三星970 EVO Plus 500GB M.2接口固态硬盘
三星970 EVO系列固态硬盘颇受用户的喜爱,主要原因就是性能十分出众。不过这并没有让三星满意,继970 EVO之后,三星又拿出了970 EVO Plus系列,重点就是进一步提升读写速度。970 EVO Plus的技术水平有了很大的提高,除了搭载第五代V-NAND闪存外,该系列的固件也进行了升级,总体性能提升较为明显,其中写入速度比前代970 EVO快了53%,顺序/随机写入成绩达到了3300MB/s、560K IOPS的水平,而顺序/随机读取则为3500MB/s、620K IOPS。另外,三星为全系产品提供5年质保及最多1200TB的写入寿命承诺。唯一的问题就是,它的售价要比其他品牌贵了一点。
三星860 EVO 500GB SATA接口固态硬盘
三星860 EVO可谓经久不衰的热销系列固态硬盘。它采用MJX SSD主控+64层堆叠3D V-NAND闪存的组合,两者皆出自三星之手。在智能TurboWrite技术的支持下,860 EVO连续写入速度高达520MB/s,连续读取速度高达550MB/s。TurboWrite缓冲区大小从12GB到78GB,文件传输更快,在工作量繁重和多任务的情况下,传输速度更加稳定。其总写入字节数达到了300TBW,耐用性是毫无问题的。