Dans mon application, j'ai besoin de compresser les journaux qui sont des fichiers texte.
Semble cela bzip2
et gzip
a le même taux de compression.
Est-ce exact?
Dans mon application, j'ai besoin de compresser les journaux qui sont des fichiers texte.
Semble cela bzip2
et gzip
a le même taux de compression.
Est-ce exact?
Réponses:
Normalement, bz2 a un meilleur taux de compression, combiné à de meilleures fonctionnalités de récupérabilité.
OTOH, gz est plus rapide.
On dit que xz est encore meilleur que bz2, mais je ne connais pas le comportement temporel.
-1
, ce n'est pas très lent, mais avec les paramètres par défaut, il a tendance à être assez lent.
La dernière mise à jour de maximumcompression.com date de juin 2011 (réponse mise à jour en octobre 2015).
Par conséquent, ce site Web ne mentionne pas
le compresseur de texte champion mondial actuel :
cmix
Concours / Repères:
cmix
n'est pas le gagnant car il nécessite trop de RAM, plus de 20 Go)Détails:
Byron Knoll se développe activement en cmix
tant que logiciel libre (GPL) depuis 2013 sur la base du livre Data Compression Explained de Matt Mahoney . Matt Mahoney maintient également certaines des références ci-dessus et propose ZPAQ ( WP ), un archiveur incrémentiel en ligne de commande.
Si vous préférez un outil plus standard (nécessitant moins de RAM), je recommande:
lrzip
lrzip
est une évolution de rzip
par Con Kolivas .
lrzip
signifie deux noms: Long Range ZIP et Lzma RZIP .
lrzip
est souvent meilleur que xz
(un autre outil de compression populaire).
Alexander Riccio recommande également lrzip
.
Mon favori est:
zpaq
L ' "expert archiveur" , Matt Mahoney , travaille intensivement sur les algorithmes PAQ depuis dix ans et offre le meilleur compromis entre ressources CPU / mémoire et niveau de compression.
Cependant, la dernière zpaq
version n'est pas souvent packagée / disponible sur les distributions récentes :-(
Je la compile toujours à partir de sources quand j'ai une nouvelle machine et j'ai besoin d'un très bon compresseur: https://github.com/zpaq/zpaq
clone https://github.com/zpaq/zpaq
cd zpaq
g++ -O3 -march=native -Dunix zpaq.cpp libzpaq.cpp -pthread -o zpaq
Peut-être pourriez-vous jeter un œil à ces références , en particulier la partie testant la compression des fichiers journaux .
J'ai fait une référence à tester pour compresser les éléments suivants:
dossier 204 Mo (avec 1 600 fichiers html)
Résultats
7zip => 2.38 MB
winrar => 49.5 MB
zip => 50.8 MB
gzip => 51.9 MB
donc le 7zip est le meilleur parmi eux, vous pouvez l'obtenir ici
http://www.7-zip.org/
bz2 a une compression plus serrée, l'algorithme a plus d'options pour rechercher la redondance à compresser.
gzip est dans beaucoup plus d'outils et est plus multiplateforme. D'autres outils Windows peuvent gérer les fichiers .gz. Cela fait partie de http, donc même les navigateurs Web peuvent le comprendre.
Sous Linux, il existe des outils qui vous permettent de travailler directement sur des fichiers compressés. zgrep et bzgrep peuvent rechercher dans des fichiers compressés.
Si seulement sur Linux, j'utiliserais bzip2, pour les taux de compression légèrement meilleurs.
xz compresse beaucoup mieux que bz2, mais prend plus de temps. Donc, si la compression maximale est votre objectif et que l'espace sur votre disque dur est limité (ce qui est mon cas avec un lecteur à 98% plein - pendant que je réorganise mes systèmes de fichiers), et vous pouvez lancer un script pour faire le travail - faites une pause et revenez dans 5 minutes.
unxz est très rapide à décompresser dans mon expérience - ce qui est une bonne chose pour moi au quotidien.
bz2 est plus rapide à compresser que xz, mais ne semble pas obtenir les résultats de compression de xz.
La seule façon de faire ces évaluations est d'exécuter des tests de performance par rapport à un mélange de fichiers communs que vous compressez / décompressez normalement, et de faire varier les paramètres pour voir ce qui vient en tête.