Compression de Texte

Salut à tous,

J’aimerai connaître le meilleur programme / algorithme de compression pour du texte sous debian. J’ai sur mon serveur quelques fichiers logs de plus de 500 Mo à compresser, dans la soirée je ferais quelques tests de compressions sur des fichiers texte avec tar, 7z, et bzip2 mais j’aurai aimer savoir s’il n’y en avait pas de plus efficaces.

[quote=“Solidstatedrive”]Salut à tous,

J’aimerai connaître le meilleur programme / algorithme de compression pour du texte sous debian. J’ai sur mon serveur quelques fichiers logs de plus de 500 Mo à compresser, dans la soirée je ferais quelques tests de compressions sur des fichiers texte avec tar, 7z, et bzip2 mais j’aurai aimer savoir s’il n’y en avait pas de plus efficaces.[/quote]
le plus puissant ( mais le plus long à compresser aussi ) est bzip2
le meilleur en rapport poids/temps est gzip ( tar n’est pas un format de compression, mais un format d’archivage )

je te conseille gzip ( ajouter l’option -z à tar pour compresser en gzip à la volée )
mais tu peux aussi utiliser bzip2 ( option -j )

Oui j’ai fais une erreur en parlant de tar comme logiciel de compression je voulais parler comme tu l’as deviné de gzip.

Sinon j’ai voulu en savoir plus sur tar, je savais que c’était destiné à l’archivage et qu’il n’y avait aucune compression, mais je ne savais pas exactement ce que c’était, j’ai donc cherché sur wiki, mais il ne m’a pas dit sa réelle utilité, quelle est la différence entre fichier.log et fichier.log.tar par exemple ?

Là lu comme ça, j’ai l’impression que c’est une optimisation de la structure du fichier (oui je n’y connais rien dans ce domaine).

Et merci pour ta réponse, je vais utiliser bzip2 !

Edit : Et 7zip qu’est-ce que tu en penses ?

30M logstest/
1,1M logstest.7z
1,3M logstest.tar.bz2

[quote=“Solidstatedrive”]Oui j’ai fais une erreur en parlant de tar comme logiciel de compression je voulais parler comme tu l’as deviné de gzip.

Sinon j’ai voulu en savoir plus sur tar, je savais que c’était destiné à l’archivage et qu’il n’y avait aucune compression, mais je ne savais pas exactement ce que c’était, j’ai donc cherché sur wiki, mais il ne m’a pas dit sa réelle utilité, quelle est la différence entre fichier.log et fichier.log.tar par exemple ?

Là lu comme ça, j’ai l’impression que c’est une optimisation de la structure du fichier (oui je n’y connais rien dans ce domaine).

Et merci pour ta réponse, je vais utiliser bzip2 !

Edit : Et 7zip qu’est-ce que tu en penses ?

30M logstest/
1,1M logstest.7z
1,3M logstest.tar.bz2[/quote]

Je n’ai pas parlé de 7z car je n’ai jamais essayé de l’utiliser.
En fait gzip et bzip2 ne permettent pas de compresser plusieurs fichiers en même temps dans un même fichier.
Et tar ne permet que de rassembler plusieurs fichier en un seul, en gardant l’arboréssance intacte.
C’est pour ça qu’on utilise généralement le couble .tar.gz ( .tgz ) ou .tar.bz2 car l’un rassemble les fichiers, l’autre les compresse.
C’est aussi pour ça que le logiciel tar inclut des options permettant la compression à la volée.
Le meilleur moyen de savoir lequel compresse le mieux, c’est encore de tester soi-meme.
Tu prends le même fichier, et tu lui applique ces deux commandes ( time permet de savoir le temps qu’a mis la commande lorsqu’elle est terminée)

time tar -zcvf monfichier.tgz fichier1 fichier2 ...
time tar -jcvf monfichier.tar.bz2 fichier1 fichier2 ...

je ne connais pas la commande pour 7z, je te laisse regardertoi même.

7zip :

real 0m14.121s user 0m12.935s sys 0m0.528s

Bz2 :

real 0m24.607s user 0m20.045s sys 0m0.468s

Tgz :

real 0m0.888s user 0m0.707s sys 0m0.055s

29M test 636K test.7z 1,1M test.tar.bz2 2,0M test.tgz

Hier pour info j’ai compressé le dossier que je voulais récupérer avec 7z, 1.6 Go transformés en 65 Mo c’est tout de suite plus rapide à télécharger! Par contre le tar.gz c’est une fusée, j’ai tapé la commande c’était déjà fini, à me demander s’il est pas aller chercher le fichier directement dans la mémoire vive, ça serait possible que debian ai mis en cache le dossier à compresser? ou alors cette rapidité est tout à fait normale ?

gzip est extrèmement rapide et fiable ce qui explique son emploi dans les système de compression/décompression à la volée. Tu as également lha. Pour les logs, dans le but de les lire plus tard, je privilégie personnellement un gzip individuel de chaque fichier.

Salut,

D’ après cet article, le lzma est le meilleur, juste devant bzip2…

Après peut-être que la taille des fichiers compressés dépends de leur nature…