Meilleur outil compression

Bonjour,

Quel est le meilleur rapport qualité / temps des outils de compression existant sous Debian ?

J’ai deux types de compression à faire :

  • 1 fichier .SQL d’un dump de base de données
  • N (+ milliers) de fichiers d’une WEBAPP

Merci à vous

Par exemple : http://pokecraft.first-world.info/wiki/Quick_Benchmark:_Gzip_vs_Bzip2_vs_LZMA_vs_XZ_vs_LZ4_vs_LZO

En résumer, pour du texte :

  • gzip, rapide dans les deux sens
  • bzip2, meilleure compression, beaucoup plus lent
  • xz, bon ratio compression / taille

perso j’ai pris l’habitude d’utiliser 7zip (en ligne de commande) qui offre la meilleure compression.

Tout dépend de ce que l’on veut, gz est rapide dans le deux sens et très fiable. bzip2 est plus efficace mais lent à la compression. xz est lent dans les deux sens donc innapplicable si ça n’est pas pour un usage unique.

Aucun des trois ne supporte un fichier compressé endommagé, donc à éviter pour un backup.

attention tout de même, 7z n’est pas adapté pour les backups sous Unix/Linux.

La man précise :

[quote]Backup and limitations
DO NOT USE the 7-zip format for backup purpose on Linux/Unix because :
- 7-zip does not store the owner/group of the file.

   On Linux/Unix, in order to backup directories you must use tar :
    - to backup a directory  : tar cf - directory | 7za a -si directory.tar.7z
    - to restore your backup : 7za x -so directory.tar.7z | tar xf -

[/quote]

Question d’usage…

J’utilise des archives .tar.gz quand je vais devoir revenir souvent dessus,
du .tar.xz quand je ne vais plus les modifier (en particulier si je veux les balader via le réseau),
et du .7z pour les archives à destination de PC sous Windows.

j’aurais dû préciser:pour de l’archivage c’est .tgz,pour compresser des fichiers sur mon ftp c’est ou autre c’est .7z

Tu as inversé bzip2 et xz, non ?

Tu as inversé bzip2 et xz, non ?[/quote]
Non, bzip est lent à la compression et rapide à la décompression. xz est lent dans les deux sens.

Pour l’archivage, un tgz fait que si le fichier est endommagé, même un peu, l’archive est perdue. Il vaut mieux compresser les fichiers et archiver le tout dans ce cas.

[quote=“fran.b”]Tout dépend de ce que l’on veut, gz est rapide dans le deux sens et très fiable. bzip2 est plus efficace mais lent à la compression. xz est lent dans les deux sens donc innapplicable si ça n’est pas pour un usage unique.

Aucun des trois ne supporte un fichier compressé endommagé, donc à éviter pour un backup.[/quote]
Quel est le meilleur pour le backup ?

[quote=“alpha”][quote=“fran.b”]Tout dépend de ce que l’on veut, gz est rapide dans le deux sens et très fiable. bzip2 est plus efficace mais lent à la compression. xz est lent dans les deux sens donc innapplicable si ça n’est pas pour un usage unique.

Aucun des trois ne supporte un fichier compressé endommagé, donc à éviter pour un backup.[/quote]
Quel est le meilleur pour le backup ?[/quote]
Un backup est souvent prévu pour être utilisé très logntemps après (surtout si c’est pour de l’archivage en fait). Les risques d’un fichier endommagé sont fréquents. Un fichier tar endommagé se récupère, un fichier compressé endommagé est irrécupérable à partir de l’octet modifié. gzip permet de récupérer une partie des fichiers (il comprime par blocs), bzip2 également (mais c’est moins pratique, plusieurs blocs et la perte est plus importante), xz pas du tout. Donc, dans l’ordre de préférence pour des données importantes:

  • Pas de compression
  • Compression de chaque fichier et tar des fichiers compressés
  • tar czf (gzip)
  • tar cjf (bzip2)

xz à proscrire

Utilise butterFS et fait de la compression au niveau FS :079

Ça ne change pas son souci d’archivage. butterFS est non stable pour le moment (bien que considéré comme fiable), donc inutilisable dans un cadre professionnel.

PS: C’est amusant que butterFS soit fondé sur les B-trees, ça ne me rajeunit pas: Vers les années 85, j’avais travaillé sur les bornes multimedia de l’institut du monde Arabe à Paris, les séquences video étaient associés à des petits fichiers, il y en avait énormément au point que l’accès séquentiel à ces fichiers dans la gestion des répertoires de MSDOS posait un souci. J’avais développé un disque virtuel avec les fonctions d’accès aux fichiers (bopen, bcreate, bclose, bread, bwrite, bseek) usuels et une organisation des fichiers sous la forme d’un B-tree (de mémoire, l’efficace était un B-tree 8 16). Ça s’était avéré très efficace.