定义
Solid Compression是一种多文件的数据压缩方式,其中所有未被压缩的文件是一个整体,视为一个独立的data block。这样的文件称为solid archive。7z、RAR压缩格式和tar-based格式都支持Solid Compression。但是ZIP压缩不支持,因为ZIP存储分立的压缩文件。
概念解释
文件压缩格式通常包括:压缩(compression)和打包(archiving)。对于多文件的情况,可以用两种不同的方式组合压缩和打包过程:
1. 先单独压缩每个文件,然后打包成一个独立的文件
2. 先打包成一个独立的文件,然后再进行压缩(Solid Compression)
ZIP可以使用第1种方式实现Solid Compression的效果。在Unix中,压缩和打包是两个分立的过程,以下是一个例子:
- compressing individual files and then archiving would be a tar of gzip’ed files – this is very uncommon, while
- archiving via tar and then compressing yields a compressed archive: a .tar.gz – and this is solid compression.
Solid Compression的优缺点
优点
- 对于所有文件都很相似的情况(相同的文件格式等),Solid Compression的压缩率更高
- 打包很多小文件时更加高效
缺点
- 使用Solid Compression后,如果要从压缩包中提取出某一个文件,则需要处理所有的文件才能实现。因此,修改Solid Archive会比较慢和不方便。但是最新版的7-zip中可以设置solid block size,修改压缩文件相对比较简单。
- 使用Solid Compression,一旦压缩文件有一点损坏,可能导致压缩包里面的所有文件都无法使用。
参考资料
wiki: Solid compression
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)