Ash*_*Ash 8 compression archive format
Zip、Rar、7z、Gzip、BZip2、Tar 等。我听说 7z 是本月的流行,为什么?它适用于所有情况还是针对特定情况有更好的选择。
或者也许实际的文件归档程序,即 WinZip、WinRar、7Zip 等(与格式相反)有更大的影响?
在您的回答中,您能否描述您提到的格式使用什么样的速度/压缩权衡。
请提供支持您的答案的任何经验测试的链接。
背景:我需要备份一个自定义搜索索引,该索引创建了大约 3000 个相对较小的文件(小于 10MB),每个文件都包含大量重复数据。
(像往常一样,维基百科有一篇相关文章,但关于性能比较的部分很简短。)
谢谢
var*_*tec 14
Compress、Gzip、Bzip、Bzip2 不用于归档多个文件。他们只压缩单个文件。对于存档,它们通常与 TAR 一起使用。TAR 的问题在于它没有索引表。只有在您计划恢复整个事情时才好。如果您期望您只需要恢复有限数量的选定文件,请忘记 TAR。要从tar.gz
或tar.bz2
存档中获取最后一个文件,您必须解压缩并处理所有文件。对于 zip、rar 或 7-zip,它会转到索引表,跳到存档的相关位置,只处理相关文件。
好的,TAR 出来了,剩下的就是 ZIP、RAR 和 7-ZIP。在这三个中,ZIP 是最流行的,大多数东西都支持它,许多应用程序都内置了支持。而且速度很快。另一方面,7-ZIP 也是可移植的,库是 LGPL,并且压缩率比其他两个要好得多,这是消耗更多 CPU 的代价。RAR 是真正的失败者,既不是很好的压缩,也不是真正的便携,也不是很快。
编辑:似乎最好的选择是 7-ZIP,但使用 bzip2 压缩方法。这样您就不会有 TAR 的缺点,但您仍然可以利用 bzip2 多核支持。看到这篇文章。
spl*_*tne 10
推荐阅读:
多核时代的文件压缩(Jeff Atwood aka CodingHorror,2009 年 2 月)
我再次尝试了文件压缩,因为我们每天都会在 Stack Overflow 上生成一些非常大的备份文件。
我们在我们的数据库服务器上使用最新的 64 位版本的 7zip (4.64)。我不是台式机上双核以上的忠实粉丝,但这对服务器来说是毫无疑问的。CPU 内核越多越好!这台服务器有两个四核CPU,总共8核,我有点沮丧地发现RAR和7zip似乎都没有使用超过2个。
尽管如此,即使它只使用 2 个内核进行压缩,7zip 算法也非常有效,并且在过去几年中已经发展得相当快。我曾经推荐 RAR 而不是 Zip,但考虑到 7zip 的效率提高以及它是免费的而 RAR 不是的事实,它现在是合乎逻辑的选择。
关于算法:
为什么 bzip2 能够比 7zip 运行得更快?[...] Bzip2 使用 2 个以上的 CPU 内核来并行化其工作。
归档时间: |
|
查看次数: |
6266 次 |
最近记录: |