我有单个文件中 77 GB 的大分区备份映像,我想快速压缩它。即使在最差的设置下,压缩效果也应该很好,但选择“最快”设置的 GZIP 大约需要 1 小时。我该如何加快这个过程?
更多详细信息:映像文件是分区的原始二进制副本(linux ddrescue 工具的输出)。我将文件存储在通过 USB 3 连接的 WD 硬盘上。
答案1
关于提高压缩速度:
- 使其并行化。http://blog.codinghorror.com/file-compression-in-the-multi-core-era/。
- 不同的压缩算法(如 lzop)非常快。
- 获取优化的 zlib 实现。例如,Google intel zlib。
关于提高读取速度:
- 如果您使用的是 SSD 或以“块”模式从磁盘读取数据,那么您只能接近额定磁盘吞吐量。这与读取小文件相关的文件寻道有关。
- 在 Linux 中,你可以使用类似
dd if=/dev/sda1 bs=1m | lzop > my_backup.dd.lzop