目录

  • 起因
  • 测试环境
  • 测试项目
  • 写入耗时 & 磁盘写入量
  • 空间占用 & 读取速度
  • 其他
  • 结论


起因

希望在有限的磁盘空间存储更多的数据。
看到了 NTFS 磁盘里面的 “压缩此驱动器以节约磁盘空间” 和文件夹属性里的 “压缩内容以便节省磁盘空间”,产生了几个问题:

磁盘压缩好不好?会不会影响固态寿命?会不会降低读写性能?
应不应该开启磁盘压缩?哪些数据适合压缩存储?

于是就有了下面的测试。

测试环境

数据:总大小 32GB,包含 179 个文件夹,3479 个文件,猜猜是啥文件?
设备:USB3.0 SATA SSD

测试项目

写入耗时 & 磁盘写入量

测试项目

写入时间

磁盘 LBA 写入

禁用压缩,使用缓存

05:38

1027

禁用压缩,禁用缓存

05:45

1038

启用压缩,使用缓存

09:27

718

注:启用压缩时不要禁用缓存,否则会产生额外空间占用,占用的空间大于文件本体空间,不计入当前目录,但是驱动器的总可用空间会减少,暂时不清楚原理,可以通过需要重启或者重插移动硬盘的方式恢复可用空间。

空间占用 & 读取速度

测试项目

占用空间 (GB)

读取速度 (MB/s)

读取时间

禁用压缩

32.0

269

02:03

启用压缩

22.0

171

03:10

注:读取速度中启用压缩测试按照解压后的数据量进行统计。

其他

  1. 磁盘内修改压缩属性,基本上相当于重新写一次:
  1. 不压缩 -> 压缩:磁盘写入 LBA 718,
  2. 压缩 -> 不压缩:磁盘写入 LBA 1046

结论

开启压缩会 降低数据读写速度,但是可以通过减少数据写入量,减少磁盘空间占用,提高固态使用寿命
磁盘压缩本质上还是用时间换取空间,要根据具体使用场景进行选择。
个人建议归档存储之类的文件可以开启压缩,常用软件之类的程序就别开了。如果磁盘空间实在是不够用,可以针对特定目录进行压缩,不建议整个驱动器开压缩。