我打算压缩所有Oracle数据库服务器的Oracle导出转储文件,以减less其磁盘上的空间使用量。
我的问题是:你知道压缩这种types的文件有什么好的压缩工具/algorithm吗?
Oracle转储文件使用专有的二进制格式。 所以你需要一个对二进制数据有利的标准压缩。 bzip2与二进制数据是好的,所以我会build议。
这是我在一些Linux机器上制作备份脚本时使用的一篇很好的文章。 工作得很好。 我最终使用rzip来满足我的需求。 我用它来备份和压缩所有types的数据文件,包括SQL数据库转储。
我首先尝试使用超级压缩级别的7zip,看看你能得到什么。 我绝对得到比.zip格式更好的.7z结果…
bzip2往往是我这样一个任务的默认答案。
我使用4800 MB .DMP文件做了一些比较。 导致:
然后,我对72 MB的较小的.DMP文件做了一些testing:
所有这些testing都是用7Zip完成的,压缩级别是指7Zip中的默认设置。
一些结论和观察到目前为止
LZMA和LZMA2似乎是.DMP文件的最佳select。 我也看到其他人也在其他论坛报告。 在7zip中,LZMA只支持2个CPU,而LZMA2支持更多(也会使用更多的内存)。 由于压缩结果看起来一样,selectLZMA2应该会导致更快的压缩。
现在让我们来玩超压缩的LZMA2文件的单词和字典大小…
最终结论
7zip,7z,LZMA2,或者你的名字,是要走的路。
如果你有足够的耐心,那么超压缩就可以得到回报。 为了更高的字数也可以得到回报,但是更大的字典大小可能不会。 (在这个testing用例中)
我会好奇的得到一些人的压缩比的平均值。 一旦我完成压缩一些更大的档案,我会尽量记住发布结果。
新的结论
我一直在调整这一点,并与这些设置有最好的结果时间/比例明智: