2011-05-20 72 views
1

我从我的站点创建数据转储以供其他人下载和分析。每个转储将是一个巨大的XML文件。什么是数据转储的最佳压缩算法

我想弄清楚,最好的压缩算法:

  • 压缩效率(CPU明智)
  • 使尽可能小的文件
  • 是相当普遍的

我知道压缩的基础知识,但对哪种算法符合法案并无任何线索。我将使用MySQL和Python来生成转储,所以我需要一些优秀的python库。

+0

大概只是使用gzip ... – 2011-05-20 05:35:11

+0

我认为'CPU-wise'和'最小可能的文件'是相互排斥的。 – 2011-05-20 05:38:08

回答

3

对于大多数情况,标准压缩级别的GZIP应该没问题。更高的压缩级别=更多的CPU时间。 BZ2包装更好,但速度也更慢。那么,在CPU消耗/运行时间和压缩效率之间总是有一个折衷关系......所有具有默认压缩级别的压缩都应该没问题。

+0

+1对于速度很重要的大型文本文件,只需在最快的设置下使用gzip即可。 – samplebias 2011-05-20 06:08:27

+0

结束使用这个。 Mark Pilgrim的“潜入Python 3.0”也为它提供了很好的指导,它总是很方便。 – mlissner 2011-05-23 01:31:38