备份压缩级别的常见做法

备份压缩级别的常见做法

这个问题可能有点“基于意见”,但请考虑将其视为寻找有关压缩级别使用的权威信息来源。

我有一台服务器,其中有几个不同大小的数据库(从兆字节到 40GB)。目前我们正在使用gzip -9压缩级别,备份速度很慢。

我们有每日备份政策,并且我们保留:

  • 每日备份 14 天
  • 每周备份 2 个月
  • 每月备份 2 年
  • 每年永久备份

数据库备份是这样完成的:mysqldump ... > | gzip -9 -c > $TIMESTAMP.sql.gz

我已经为一个小型数据库尝试了不同的压缩级别。以下是结果(服务器负载有点大,所以可能有点不准确):

level | time (real) | output file size
    1 |    0m1.844s | 6.6M
    3 |    0m1.902s | 6.1M
    5 |    0m2.112s | 5.1M
    7 |    0m2.447s | 4.9M
    9 |    0m3.498s | 4.8M

此后我认为应该使用 5 或 7 压缩级别,并且我们应该避免 9 压缩级别。

问题是:

关于备份压缩级别的常见做法有哪些?

公司或机构是否使用任何标准?

答案1

关于备份压缩级别的常见做法有哪些?

没有,一切都严格取决于您的需求和能力。

公司或机构是否使用任何标准?

没有,使用任何对你有用的东西。

我强烈建议使用 ZSTD 而不是 gzip。它已经足够成熟,压缩比比gzip好很多,解压速度也快得惊人。它有 22 个压缩级别,包括--long--ultra,因此您需要进行试验以找出最适合您的压缩级别。

请考虑对压缩数据使用 PAR2,并保留原始数据和压缩数据的校验和。如果没有校验和,在存储或检索数据时很容易由于位错误而丢失数据。

相关内容