Sarei curioso di conoscere il rapporto medio di peso tra dati comprimibili e dati già compressi in un backup di Discourse[1], e quanta dati (in %) verrebbe risparmiata utilizzando zstd.
Non è la stessa richiesta di funzionalità, ma riguarda anche la compressione dei backup, quindi sto ricondividendo questo:
Non mi sorprenderei se la percentuale fosse all’incirca la stessa su tutti i miei forum Discourse.
Naturalmente, alcuni forum si basano molto sul caricamento di immagini, e alcuni non consentono nemmeno il caricamento di file ↩︎
Occasionalmente il processo di backup ci causa problemi di disponibilità a causa del carico aggiuntivo. Quindi oggi ho fatto una rapida sperimentazione con zstd.
Questi sono i risultati della compressione dello stesso file dump.sql da 73 GiB con gzip (livello 4, come nel backup di Discourse) e zstd (livello predefinito 3, su 19):
Dimensione dopo compressione: 15,8% più piccola (.zst era l’84% della dimensione di .gz)
Tempo di compressione (-T1): 71% più veloce (29% del tempo di gzip)
Tempo di compressione (-T0): 89% più veloce (11% del tempo di gzip)
I risultati possono variare da caso a caso: non ho eseguito più prove, la mia macchina (6 core) stava facendo anche altre cose, ecc., ecc. — non ho cercato la massima precisione. Tuttavia, ritengo che i vantaggi siano evidenti.
Non sono sicuro che -T0 sia necessariamente la scelta migliore per tutti, dato che lasciare un po’ di margine per lo stesso Discourse sembra una buona idea; ecco perché ho incluso il campione con -T1 per un confronto più equo.
Sembra una situazione vincente per tutti e probabilmente avrebbe anche un impatto significativo sull’infrastruttura di hosting di Discourse. Detto questo, non ho le competenze per preparare una PR, quindi mi limito a condividere ciò che ho scoperto.