读取压缩文件比未压缩文件快吗?

Ger*_*nuk 6 compression

是否有可能使用一些简单的算法打包一个大文件使我能够比从未压缩文件中读取数据更快(由于硬盘驱动器比解压缩慢)?我需要什么样的压缩率?任何快速压缩算法都能做到吗?

Mar*_*ler 5

是。压缩,压缩,压缩通常由zipgzipzlib使用,当从具有典型压缩因子(例如4)的硬盘读取数据时。

从SSD上,您可能需要进行更快的解压缩。您可以尝试的一个是lz4

你的旅费可能会改变。

  • 非常有趣的话题。我使用Python读取了纯文本(80MB),zip(27MB),gz(27MB)和bz2格式(17MB)的文件,并得到以下时间:.txt需要0.043秒,.zip需要0.30秒,.gz需要0.42秒,.bz需要2.42秒。HDD和SSD的时间大致相同。当我将文件大小加倍时,时间大约是原来的两倍,因此它不会受到其他问题的限制。我感到惊讶的是,最大的纯文本文件是迄今为止读取速度最快的文件。这似乎受浮点解压缩时间的限制,而不是受传输速度的限制。 (2认同)
  • @NorbertS 非常感谢您所做的这项工作。我正要做这个分析,你帮我省了麻烦。 (2认同)