当前位置: 便民查询网主页 > IT知识

缓存对于固态硬盘真的那么重要吗?

发布时间:2023-7-2 17:39责任编辑:李小强来源:IT168 标签:硬盘

  随着固态硬盘的飞速发展,存储市场上出现了大量高性价比的SSD,这让我们在挑选硬盘时有了更多的选择;现阶段人们在购买固态硬盘时,除了关心硬盘接口和容量之外,硬盘的缓存容量也逐渐成为了购买的参考因素;那么什么是硬盘的缓存?它究竟在固态硬盘中发挥着怎样的作用?又是否值得成为了购买的参考因素?这是现阶段很多玩家的疑惑,接下来我们一一来解答。

  首先我们需要明确什么是缓存?

  缓存,从字面上可理解为延缓存放,是数据交换的缓冲区,简单来说是为了平衡高速设备和低速设备之间的速度差异而存在的,其主要功能减小低速设备和高速设备的差距。因为各产品的缓存容量有限,算法无法百分百准确命中,所以低速设备或多或少会拖高速设备的后腿,缓存的作用只能是尽量减少这种现象。

  在传统的机械硬盘中,缓存主要发挥的是加速读取作用;如一个数据刚被读取,将临近它位置的数据都保留在DRAM缓存中,就有机会被下一次读取命中(直接从DRAM缓存读出的速度比从机械盘片读取快),这就是机械硬盘缓存的主要作用;理论上缓存越大越有助于提升机械硬盘的读取性能。

  而固态硬盘的缓存就有点不太一样了;通常情况下,带有缓存的固态硬盘在速度上会比不带缓存的更高一些,但对固态硬盘来说,这个提升是具有一定的限度。就反应速度来说,SSD的反应速度一般都在0.2毫秒以内,不比缓存慢,所以带缓存对读取速度的提升并不是特别大。

  但固态硬盘对于DRAM缓存的真正需求并不是缓存数据,而是存储对固态硬盘至关重要的FTL闪存映射表:管理逻辑地址与闪存物理地址的映射关系。

  固态硬盘虽然读写速度比机械硬盘快很多,但闪存不能像磁盘盘片那样直接覆盖写入,这就意味着固态硬盘必须要有一个逻辑地址与实际物理地址之间的转换表;当对3号位置进行覆盖写入时,固态硬盘内实际执行的可能是对E位置的写入,然后让原本对应的C位置无效。

  这张FTL闪存映射表就需要有内存来储存并实时更新,不一样的固态硬盘在处理这张转换表时所用的算法不一样,所需要的内存空间也会千差万别,空间优化后的转换表甚至可以直接放入主控中集成的小容量内存中,这是无外置缓存固态硬盘诞生的前提。

  既然缓存的功能对于固态硬盘来说几乎这么重要,那为什么还会有一些不带缓存的SSD呢?

  其实为了存放FTL闪存映射表,SSD存在两种设计方案:DRAM(带DRAM的)和DRAM-less(不带DRAM的);带DRAM的一般会把缓冲数据和映射表统统存放在DRAM中,优点是查找更新映射表迅速,性能较好,劣势是多了一个DRAM,成本和功耗上升,当前的主流SSD是该方案。

  而DRAM-less则会将少部分映射表放在片内的SRAM上,其余部分的映射表则会放在Flash中,这种方案好处是节省了DRAM的成本和功耗,但是读写Flash要比读写DRAM要慢得多,所以速度上不如DRAM方案,性能也相对低一些,这是当前入门级的SSD多采用这种方案。

  除此之外,还有一些固态硬盘通过另一种方式“拥有缓存”了——群联的新技术叫做“HMB内存缓冲技术”,简单说,就是去掉了原本应该在硬盘上出现的缓存,转而在内存中借用储存空间,实现了数据缓冲!这样就可以在固态硬盘会减少了一个缓存颗粒,从而降低成本,以更合适的价格面向消费者。

  一款SSD产品是否有缓存这样的设计,往往是厂商根据产品定位和用途做得决定,一般一些入门级产品或者低速产品,在设计上就会考虑不带缓存方案,而一些高速产品由于数据交换量大,就有缓存设计,以提高产品的读写效率。

  以上就是对固态硬盘缓存作用详解,总的来说,是否购买带有缓存作用的固态硬盘,还需要根据自己的需求决定,如果预算充足,想要更好的使用体验,那么带有缓存的固态硬盘应该不会让你失望。