Je recherche l' gzip
utilitaire le plus rapide (ou zip). J'ai un volume LVM qui existe à 95% en blanc 0
, donc la compression est très facile. Je suis à la recherche de la solution la plus rapide, et je ne me soucie pas vraiment de la compression sauf celle 0
du.
Je suis au courant gzip -1
(comme gzip --fast
) mais je me demandais s'il y avait une méthode plus rapide.
Merci.
Edit:
après quelques tests, j'ai comparé gzip -1
, lzop -1
et pigz -1
avec l'autre et est arrivé aux résultats suivants:
PIGZ:
time dd if=/dev/VPS/snap | pigz -1 | ssh backup-server "dd of=/home/backupvps/snap.pigz"
104857600+0 records in
104857600+0 records out
53687091200 bytes (54 GB) copied, 2086.87 seconds, 25.7 MB/s
7093985+266013 records in
7163950+1 records out
3667942715 bytes (3.7 GB) copied, 2085.75 seconds, 1.8 MB/s
real 34m47.147s
LZOP:
time dd if=/dev/VPS/snap | lzop -1 | ssh backup-server "dd of=/home/backupvps/snap.lzop"
104857600+0 records in
104857600+0 records out
53687091200 bytes (54 GB) copied, 1829.31 seconds, 29.3 MB/s
7914243+311979 records in
7937728+1 records out
4064117245 bytes (4.1 GB) copied, 1828.08 seconds, 2.2 MB/s
real 30m29.430s
GZIP:
time dd if=/dev/VPS/snap | gzip -1 | ssh backup-server "dd of=/home/backupvps/snap_gzip.img.gz
104857600+0 records in
104857600+0 records out
53687091200 bytes (54 GB) copied, 1843.61 seconds, 29.1 MB/s
7176193+42 records in
7176214+1 records out
3674221747 bytes (3.7 GB) copied, 1842.09 seconds, 2.0 MB/s
real 30m43.846s
Modifier 2 :
Cela n'a rien à voir avec ma question initiale, mais en utilisant time dd if=/dev/VPS/snap | lzop -1 | ssh backup-server "dd of=/home/backupvps/snap.lzop"
(la taille du bloc est passée à 16M), le temps est réduit à real 18m22.442s
!
la source
time
de cette manière. Le débit du dd utilisé pourpigz
est inférieur aux deux autres.Réponses:
Si cela ne vous dérange pas de vous éloigner de DEFLATE,
lzop
c'est une implémentation de LZO qui favorise la vitesse par rapport au taux de compression.la source
lzop
c'est le plus rapide de mon scénario. C'est plus rapide que d'unepigz
manière ou d'une autre (probablement en raison du lot de 0).Bien que je ne l'ai pas encore utilisé personnellement, je pense que l'utilisation de gzip parallèle pourrait accélérer un peu les choses:
la source
Vous pouvez essayer Parallel Gzip (Pascal l'a lié) ou Parallel BZIP.
En théorie, BZIP est bien meilleur pour le texte, vous pouvez donc essayer pbzip .
la source
Votre disque est limité à 30 Mo / s
Tous les compresseurs fonctionnent assez bien. Vous pouvez même réduire le transfert réseau en utilisant bzip2 légèrement plus lent mais omniprésent.
Avez-vous pensé à rsync? Il fait la somme de contrôle, puis compresse la différence uniquement.
la source
pigz -1: 1073741824 bytes (1.1 GB) copied, 8.6779 seconds, 124 MB/s
etgzip -1: 1073741824 bytes (1.1 GB) copied, 11.6724 seconds, 92.0 MB/s
. J'ai pensé à rsync mais cela vérifierait la différence du fichier et cela n'aiderait probablement pas, car la plupart du temps, beaucoup de choses ont changé.Re: lzop il est plus lent lors de sa config std ... Le tweaking peut être la moitié du temps. Mais il existe un remplacement encore plus rapide appelé blosc:
https://github.com/FrancescAlted/blosc
Hmm ... Le temps qu'il a fallu pour publier ceci et obtenir des réponses est probablement au moins le double des économies de temps que vous obtiendrez ... Maintenant, excusez-moi pendant que je recompile mon noyau pour raser un autre .1s de mon temps de démarrage 2s.
la source