SQL 数据库备份文件的典型压缩率是多少?

SQL 数据库备份文件的典型压缩率是多少?

我的一位客户希望我们给出一个安全估计,即压缩的 SQL 备份文件占用多少磁盘空间。他们需要据此调整服务器硬盘的大小。

我们可以粗略地估计 SQL 数据库备份的大小(基于估计的记录数等),但是压缩后会怎样呢?

我知道这个问题很难回答,但根据您的经验,SQL 备份文件的典型压缩率是多少?

答案1

如果没有数据库中数据的一小部分代表性样本,就不可能回答这个问题。如果您的数据库中全是 mpeg 视频,那么即使使用 PAQ 也无法将数据压缩超过几个百分点。

如果您的数据库中充满了重复的相同字节,那么它将压缩到极小的大小,压缩率可能达到 99.9% 或更高。您的数据可能介于两者之间,因此压缩率将在 0.1% 到 99.9% 之间。

备份行业喜欢宣传“大多数”数据可以压缩 50%。我发现这是乐观的,但距离并不遥远。然而,我发现我们的 MSSQL DB 通常压缩不到 30%。

答案2

这个问题很难回答,但我今天刚刚对我的一个数据库(运行 PostgreSQL 9.2:

select pg_size_pretty(pg_database_size('mydb'));       
pg_size_pretty 
----------------
5660 MB
(1 row)

转储之后:

% ls -lh

-rw-r--r--  1 pgsql  pgsql   363M Mar  4 16:42 mydb-20130304.sql.gz

所以这是一个减少 93.5%在尺寸方面。

相关内容