Make DB backup use Zstandard compression #2248
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Partially fixes #2151.
Zstandard is a fast, modern, lossless data compression algorithm. For these backup files, it gives marginally better compression ratios than
gzip
and much faster compression and particularly decompression. We want the backup process to be quick as it's a CPU-intensive activity that could affect site performance.Experimental comparison of different compression utilities with their default settings:
Zstandard is the clear best balance between speed and compression ratio. Any attempt to increase the compression ratio further, including flags to zstd, slowed the process significantly. If we were concerned about backup local space usage we should consider using additional or external storage, incremental backups, or a separate archival process.
This was executed on dokku3 out of business hours. Throwaway script attached:
script.txt