深入研究SSD Cache对NAS传输性能的影响、固态硬盘做缓存盘是否会大幅降低寿命

2022-03-27 22:22:07 167点赞 618收藏 115评论

我本人使用SSD Cache已经好几年了,现在的主流NAS服务器都带了SSD Cache(固态硬盘高速缓存)功能,这个功能是用利用固态硬盘较强的随机读写能力来提高大容量机械硬盘的读写性能。有些准备买NAS的朋友可能对这个功能不是很了解,不知道这个磁盘缓存功能是否有比较明显的作用,是否有必要去追加预算购买固态硬盘做SSD Cache。为此我特地花费了两个月时间来做了这个测试,把结论分享给大家。通过本文你可以了解到如下内容:

测试SSD Cache在各种模式下对读写速度的影响

实测SSD Cache缓存盘的寿命消耗情况

我是否需要SSD Cache,哪种缓存类型适合我

SSD Cache的原理很简单,一看便知:

深入研究SSD Cache对NAS传输性能的影响、固态硬盘做缓存盘是否会大幅降低寿命

测试SSD Cache在各种模式下对读写速度的影响

Raid1 SSD Cache连续写入速度测试

我这里用两只全新的240G固态硬盘来进行测试,经过测试这两只固态硬盘的连续读写和4K性能都不错。这里用于测试的威联通NAS有个最大的优点是一组SSD Cache可以同时为几个存储空间/卷服务,而群晖只能用于其中一个存储空间,但我这里为了使测试结果准确只对一个盘启用了SSD Cache。不管是照片还是视频,最终都是以文件的形式存储在NAS服务器里,用测试文件读写速度的方法来测试缓存性能比较直观。这里需要注意的是如果缓存类型选用的是读写高速缓存,表示对磁盘的读取和写入操作都会有SSD缓存介入,为了保证数据安全,建议选择RAID1模式,否则万一SSD往磁盘里写入数据时发生故障,还没写入完成的数据可能会丢失。

深入研究SSD Cache对NAS传输性能的影响、固态硬盘做缓存盘是否会大幅降低寿命

如图,给固态硬盘预留了10%空间以延长寿命,缓存的总容量192GB,实际可用容量175GB,新创建的SSD Cache使用量为0,命中率也为0,以文件、照片、影视服务为主的用户,缓存模式建议应选择“全部I/O”:

深入研究SSD Cache对NAS传输性能的影响、固态硬盘做缓存盘是否会大幅降低寿命

先不开启高速缓存服务,测试没有缓存时文件的拷贝速度,为保证计时准确,我使用Fastcopy代替windows复制粘贴进行测试。NAS安装了一块希捷酷狼4TB硬盘用于测试,将NAS用网线直接连接到主机,使用2.5G网络测试。先测试大文件,拷贝了15GB数据,共7个文件,测得不开启SSD Cache的时候用时1分39秒,平均速度158.7MB/S,开启缓存后再写入同样的文件,平均速度为205MB/S;开启缓存后第二次测试和第一次速度差别不大:

深入研究SSD Cache对NAS传输性能的影响、固态硬盘做缓存盘是否会大幅降低寿命

在NAS高速缓存界面可以看到写入文件时缓存命中率接近100%,全程有写入缓存介入,可以得出结论是SSD Cache对磁盘连续写入性能稍有提升;传入的数据是先写入SSD缓存,再通过SSD缓存写入NAS磁盘,开启写入高速缓存后建议搭配UPS电源使用,否则SSD Cache里的数据还没完成写入磁盘时停电的话会有数据丢失的风险。其实平时实际使用时SSD Cache对大文件写入的助力极其有限,甚至可以完全忽略,主要原因是一般个人用户SSD Cache容量比较小,我上面的写入测试是在SSD Cache刚建立时进行的,使用一段时间后Cache内容会被填满、逐渐替换。

深入研究SSD Cache对NAS传输性能的影响、固态硬盘做缓存盘是否会大幅降低寿命

Raid1 SSD Cache连续读取速度测试

再来测读取。和上面的写入测试一样,用同样的文件,从NAS里取回到本地SSD。不开SSD Cache的时候测得速度为162MB/S,开启缓存初次读取速度只有130MB/S,但第二次就达到了281MB/S,基本上达到了2.5G网络的传输上限:

深入研究SSD Cache对NAS传输性能的影响、固态硬盘做缓存盘是否会大幅降低寿命

开启缓存后初次读取速度居然比不开缓存时还慢,这个我当初也觉得奇怪,反复测试了五六次都是同样的结果,应该是初次需要将文件载入到缓存里,然后再从缓存里传输到客户端,这个过程影响了速度。从命中率曲线可以看出来,第二次读取时蓝色的读取命中率接近100%,而第一次读取时命中率不到10%。结论是SSD Cache对磁盘连续读取性能有明显的提升,但只限于经常访问的数据,并且SSD Cache盘容量要足够大,否则缓存里的数据会不断被替换,重新载入缓存的效率不高。

深入研究SSD Cache对NAS传输性能的影响、固态硬盘做缓存盘是否会大幅降低寿命

Raid1 SSD Cache随机写入速度测试

接下来测随机读写,向NAS机械硬盘里写入31500多个小文件进行测试,没开启SSD Cache时共耗时8分11秒,开启缓存后初次写入耗时6分45秒,第二次写入耗时和之前测的连续写入一样,反而比初次要慢一些:

深入研究SSD Cache对NAS传输性能的影响、固态硬盘做缓存盘是否会大幅降低寿命

从命中率曲线可以看出写入缓存是全程介入的,结论是开启了写入缓存后,SSD Cache对随机文件写入有一定助力,但提升不大

深入研究SSD Cache对NAS传输性能的影响、固态硬盘做缓存盘是否会大幅降低寿命

Raid1 SSD Cache随机读取速度测试

不开启缓存,从NAS里取回刚才写入NAS里的31500多个小文件用时3分57秒(本地电脑为固态硬盘),开启SSD Cache后用时1分28秒。通过这项测试可以得出结论,SSD Cache对随机写入助力不大,对随机读取有一定帮助。

深入研究SSD Cache对NAS传输性能的影响、固态硬盘做缓存盘是否会大幅降低寿命

Raid1 SSD Cache+iSCSI磁盘跑分测试

有很多朋友会用到iSCSI映射功能,顺便测一下SSD Caches是否对iSCSI有效。我在NAS上创建了一个iSCSI目标映射成本地电脑的物理硬盘,容量为160G,接近SSD Cache的总容量:

深入研究SSD Cache对NAS传输性能的影响、固态硬盘做缓存盘是否会大幅降低寿命

没开启SSD Cache时使用AS SSD测试,速度和得分如下:

深入研究SSD Cache对NAS传输性能的影响、固态硬盘做缓存盘是否会大幅降低寿命

开启SSD Cache后写入速度和4K性能有些许提升,幅度不是很大:

深入研究SSD Cache对NAS传输性能的影响、固态硬盘做缓存盘是否会大幅降低寿命

Raid0只读缓存测试

通过上面的测试可以得出结论是SSD Cache对文件写入几乎没有帮助,对随机读取速度有一定助力,那我就把SSD缓存改成Raid0试试看看性能是否有进一步提升,raid0做只读缓存的话是没有什么风险的,毕竟只在读取时才介入,并且采用Raid0可以使缓存容量达到最大化,不像Raid1那样缓存容量取决于单盘容量。设置为Raid0后缓存的总容量437GB,实际可用容量376GB,

深入研究SSD Cache对NAS传输性能的影响、固态硬盘做缓存盘是否会大幅降低寿命

换成Raid0只读高速缓存后,测试结果与之前用RAID1是一致的,第二次读取时速度达到了282MB/S,瓶颈出在2.5G网络上,要不然速度还会高一些:

深入研究SSD Cache对NAS传输性能的影响、固态硬盘做缓存盘是否会大幅降低寿命

随机存取速度和之前用Raid1模式也是一样的,结论是SSD Cache采用Raid0缓存和Raid1读写速度其实是差不多的,但Raid0模式缓存容量要大一倍:

深入研究SSD Cache对NAS传输性能的影响、固态硬盘做缓存盘是否会大幅降低寿命

命中率曲线显示做Raid0只读缓存测试时,Cache全程都有介入:

深入研究SSD Cache对NAS传输性能的影响、固态硬盘做缓存盘是否会大幅降低寿命

单盘只读缓存测试

以上是两种Raid形态的SSD Cache测试,但要是我手上只有一块闲置的固态硬盘用来做缓存是否有效呢?和Raid性能上有没有差别?我创建了一个只用一块SSD的只读高速缓存来进行测试,注意单盘的话就不建议做读写或者写入缓存了,之前讲过会有一定概率丢失数据的。240G盘预留10%空间后实际可用缓存空间为175GB:

深入研究SSD Cache对NAS传输性能的影响、固态硬盘做缓存盘是否会大幅降低寿命

单盘SSD Cache测试结果有点出乎意料,随机读写性能与Raid不相上下,连续读写速度最高可以达到267MB/S,在预算有限的情况下,暂时用一个盘做SSD Cache也是没有任何问题的。

深入研究SSD Cache对NAS传输性能的影响、固态硬盘做缓存盘是否会大幅降低寿命

实测SSD Cache缓存盘的寿命消耗情况

之前我就发现做SSD Cache的固态硬盘寿命掉的特别厉害,特地买回两只全新的240G固态硬盘来做测试,牌子不咋好,好在价格便宜,自营店150元一片,保160TBW。可以不用买同一品牌型号的固态,但容量和性能要接近,要不然比如组Raid1时缓存容量是以最低容量的盘为准:

深入研究SSD Cache对NAS传输性能的影响、固态硬盘做缓存盘是否会大幅降低寿命

安装在NAS上建立好RAID1读写高速缓存后一直正常使用中,大概连续用了2个月,春节期间关了几天机,其他时间都是全天24小时开机的,通电时间显示49天。连续工作两个月之后其中一块寿命只有40%了,也就是说大概还能用两个月时间不到就要换了:

深入研究SSD Cache对NAS传输性能的影响、固态硬盘做缓存盘是否会大幅降低寿命

另一片也差不多,还剩下45%寿命。期间也没有进行什么高强度工作,无非就是备份、浏览照片、备份工作文件、看电影而已。通过两个月的测试得出结论是做SSD Cache的固态硬盘读写量非常大,寿命消耗得很快,需要随时做好替换的准备。

深入研究SSD Cache对NAS传输性能的影响、固态硬盘做缓存盘是否会大幅降低寿命

我是否需要SSD Cache,哪种缓存类型适合我

通过上面的测试,对SSD Cache有了一定了解。最后来进行总结吧:

1.SSD Cache有一定作用,但作用并不是很明显,除了测速外日常使用中难以直观的感受到差别,对访问特别频繁的数据确实有奇效;预算不够的话可以暂时不用购买缓存固态硬盘也可以正常使用,或者用淘汰下来的固态硬盘代替。

2.需要使用写入缓存的话建议使用两块盘组RAID1,否则数据有丢失风险;用不到写入缓存的话可以用单盘做缓存,也可以双盘组Raid0,对于性能不强、采用SATA固态接口的NAS来说需要4块盘的RAID10更没必要。开启写入高速缓存后请搭配UPS电源使用。

3.优先选用性能强的固态硬盘,优先购买TBW高的固态硬盘,有些硬盘容量使用过半后性能大幅下降,这类硬盘用来做缓存甚至会比没有缓存时还慢。

4.SSD Cache硬盘容量根据你NAS的数据量来进行选择,个人用户只是偶尔备份照片和数据,250G-500G容量就足够了;使用较频繁的用户根据数据使用量而不是总数据量来确定缓存盘大小,注意使用SSD Cache服务后,NAS服务器的内存容量也要对应增加,建议增加到8GB以上。

本文以QNAP TVS-951N机型为例进行测试,不同的品牌NAS的SSD Cache机制以及性能都有差异,但基本原理和作用都是一致的,其他品牌机型也可以此文为参考。

作者声明本文无利益相关,欢迎值友理性交流,和谐讨论~

展开 收起
115评论

  • 精彩
  • 最新
  • 结论:SSD Cache对像我这样的普通用户来说,性能提升不大,而且很费SSD,所以省下钱来干点别的吧,比如:
    1.每个月加20块钱把宽带上行提升到100M;
    2.加个UPS,我买的大华的300块钱,完美兼容群晖和威联通;
    3.加内存条;
    4.other

    校验提示文案

    提交
    我的APC BK650好几年了

    校验提示文案

    提交
    大华的ups哪里买的啊?谢谢哥

    校验提示文案

    提交
    还有10条回复
    收起所有回复
  • 给你10个金币,解答了我的SSD缓存疑惑

    校验提示文案

    提交
    感谢朋友支持哦

    校验提示文案

    提交
    收起所有回复
  • 有用,问一下用单块SSD做cache有效果吗

    校验提示文案

    提交
    单块也可以的

    校验提示文案

    提交
    测试了一下,威联通虚拟机性能提高不少。不至于那么卡了

    校验提示文案

    提交
    收起所有回复
  • 谢谢分享!很硬核,很有用。也是已经下单ssd缓存看到了网上有人说效果不明显,立刻改成两个ssd组raid1用来装系统和应用,目前感觉还不错。

    校验提示文案

    提交
    可以的,我应用也是装SSD里,响应速度快多了

    校验提示文案

    提交
    我想问一下如果组raid1装系统软件的话,多大的Ssd合适?

    校验提示文案

    提交
    还有1条回复
    收起所有回复
  • 解决了我关注很久的问题,另外我想问一下作者平时有没有大量pt上传或者下载,这样会造成大量的pt读写的。还有你有取下两盘ssd看一下读写量吗?是不是tbw高造成的寿命下降

    校验提示文案

    提交
    PT我是用windows机器下的,读写量我看了下都接近100TB

    校验提示文案

    提交
    那你这个估计就是纯粹的写多了写坏的,和群晖的低写入量但是健康度过低还是有区别的。很多群晖的ssd没到tbw上限,甚甚至一半不到就显示健康度过低,这种情况还能联系厂家售后换新。

    校验提示文案

    提交
    收起所有回复
  • 你拿这样的固态做缓存?本身就是满盘***的固态,连u盘都不如啊

    校验提示文案

    提交
    拿其他固态也测过的,都一样。都换过几轮了,最开始是用最好的

    校验提示文案

    提交
    还有,我说过这两个固态是专门买来测试寿命的,买好的成本太高。

    校验提示文案

    提交
    收起所有回复
  • zfs了解一下 [大吃一惊]

    校验提示文案

    提交
    哟,厉害厉害

    校验提示文案

    提交
    收起所有回复
  • 可以用傲腾啊 [大白菜]

    校验提示文案

    提交
    有些nas用不了呀

    校验提示文案

    提交
    收起所有回复
  • 同款nas,现在还不知道到底准备用不用ssd [喜极而泣]

    校验提示文案

    提交
    缓存可以暂时不要,先弄一个250G左右的安装应用吧

    校验提示文案

    提交
    收起所有回复
  • 千万别用SSD做缓存,血泪的教训。本人两块SSD做缓存,结果一块坏了,阵列的数据全部丢失。

    校验提示文案

    提交
    用的是群晖nas吗?

    校验提示文案

    提交
    威联通NAS,说多都是泪

    校验提示文案

    提交
    还有5条回复
    收起所有回复
  • 没这么复杂,我的方式是设置下载完成后移动到hdd,也就是说默认所有的下载都先下到SSD中,完成后自动移动到HDD,SSD寿命哪怕是qlc也有1000PE,128GB的SSD每天下一张原盘(50G)也能用7年之久,对于一般用户,还是以读居多,放心操就好了,小容量SSD还是便宜的,可以有效保护大容量HDD。***

    校验提示文案

    提交
    缓存不只是给下载服务的

    校验提示文案

    提交
    备份文件都是连续写入,一般情况其实可以不需要配SSD cache的,不过只要超过千兆网络,那就必备了

    校验提示文案

    提交
    还有7条回复
    收起所有回复
  • 居然买阿斯加特和光威的固态 [皱眉] 胆子真大

    校验提示文案

    提交
    写了是专门买来做寿命测试的,写完就扔,买旗舰级的成本高

    校验提示文案

    提交
    收起所有回复
  • 真不错,这篇文章!

    校验提示文案

    提交
    [高兴] 感谢大佬捧场

    校验提示文案

    提交
    收起所有回复
  • 用傲腾吧,毕竟那东西寿命还行

    校验提示文案

    提交
    可以,只是有些nas用不了

    校验提示文案

    提交
    极空间能用傲腾吗?

    校验提示文案

    提交
    收起所有回复
  • 能不能推荐一款续航比较长的手电啊,美女,预算100左右

    校验提示文案

    提交
    晕,预算100难搞啊,等特价买一个100左右的纳拓2000流明吧,不要开高亮度就好。

    校验提示文案

    提交
    收起所有回复
  • 千兆网口的nas是不是就没有cache的必要了

    校验提示文案

    提交
    小文件多还是有必要的

    校验提示文案

    提交
    收起所有回复
  • 楼主 2.5G 网络是怎么搞定的?

    校验提示文案

    提交
    你说的是哪方面哦,搞了个2.5G交换机就行啊

    校验提示文案

    提交
    收起所有回复
  • 弄两个傲腾内存16GB版本提升一下行不行呢?容量小,据说很耐用啊。

    校验提示文案

    提交
    可以,作用不明显

    校验提示文案

    提交
    收起所有回复
  • 那我可以m.2固态容量一半装系统一半一半做缓存吗?

    校验提示文案

    提交
    [吐血] 不可以的啊

    校验提示文案

    提交
    收起所有回复
  • 如果只买一个ssd来装系统,不知道体验会变好很多吗?

    校验提示文案

    提交
    那肯定比机械硬盘好太多了啊

    校验提示文案

    提交
    收起所有回复
提示信息

取消
确认
评论举报

相关文章推荐

更多精彩文章
更多精彩文章
最新文章 热门文章
618
扫一下,分享更方便,购买更轻松