Je dois souvent rassembler des fichiers journaux et les télécharger sur un serveur central (appartenant à une autre société). Le serveur central a une taille limite de fichier. J'essaie donc de créer le plus petit fichier possible au format zip.
Quels sont les meilleurs paramètres à utiliser lors de la compression d'un fichier texte au format zip lorsque mon seul besoin est une petite taille de fichier?
J'ai fait la compression évidente et j'ai choisi l'ultra compression, et j'ai remarqué que LZMA fait un meilleur travail que le dégonflement, mais il y a beaucoup trop de variantes pour que je puisse toutes les tester.
compression
zip
7-zip
jjnguy
la source
la source
Deflate
format, ce n'est plus un fichier .zip "normal", mais un fichier zip "étendu", créé par WinZip. À l'origine, ils conservaient l'extension au format .zip, une source de consternation (étant donné que la plupart des outils de gestion de zip classiques ne peuvent pas s'en occuper), mais la plupart des archiveurs utilisent maintenant .zipx pour les distinguer des fichiers .zip traditionnels. Si vous pouvez utiliser LZMA, passez à .7z et choisissez PPMd - il devrait compresser mieux (et plus rapidement!) Pour les fichiers texte.Réponses:
Pour créer le plus petit fichier ZIP standard que 7-Zip peut créer, essayez:
Source: Comment puis-je obtenir la meilleure compression ZIP standard?
Sinon, si vous ne vous souciez pas de la norme ZIP, utilisez les paramètres ultra suivants:
Qui sont:
la source
Si vous pouvez utiliser le format .7z plutôt que simplement le format .zip, je voudrais simplement utiliser PPMD avec les options suivantes et laisser le reste tel que défini par le niveau de compression:
Je compresse régulièrement les journaux de serveur / texte (60 Mo +) en utilisant ces options et ils sortent généralement à 1 ou 2% de la taille d'origine.
la source
Je compare pour db.fdb 1,2 Go (1236598784 B) dans le serveur Ubuntu 14.04.03 avec p7zip [64] 9.20 sur VM:
et avoir que des résultats:
Je pense que la deuxième méthode fonctionne bien = (presque) mieux compresser avec le meilleur temps. Mais pour une meilleure "vue" et facile à retenir est la première méthode - avec de petits fichiers et aucun point de compression maximale. Entre la méthode 2 et la méthode 3, nous n'obtenons pas un format 7z plus petit, mais nous passons près de deux fois plus de temps pour la compression. Quelqu'un décide avec le sien.
la source
Après de nombreuses expériences, une exploration de la documentation détaillée de 7zip et une lecture du code source de 7z concernant les paramètres avancés de LZMA2, voici une meilleure méthode ci-dessous. Il a permis de réduire de 2 à 4 fois les fichiers de test réels de 1 Go dans le monde réel par rapport aux solutions précédemment acceptées publiées ici ou même dans la page de manuel 7z.
La compression LZMA2 est supposée ici, mais vous pourrez peut-être obtenir de meilleures performances dans 7zip en passant des options LZMA2 avancées telles que
-m0=LZMA2:27
, ou-m0=LZMA2:d25
, ou un tableau de paramètres tels queDe tels paramètres ne semblaient pas être respectés par les versions 7z que j'ai testées, mais vous voudrez peut-être explorer davantage ou patcher le code 7z pour les analyser correctement. Ou peut-être est-il censé fonctionner et est simplement cassé dans les versions qui ont été testées.
la source
Définissez le champ "découper en volume, octets" sur la taille de fichier maximale autorisée du serveur (en octets, je pense, même s'il semble accepter les abréviations courantes telles que "KB" et "MB"). Si le fichier zip dépasse cette taille, 7-zip le scinde automatiquement en plusieurs fichiers, tels que integration_serviceLog.zip.001 , integration_serviceLog.zip.002 , etc. (Autrefois, PK Zip l'avait utilisé pour disquettes.) Vous aurez besoin de tous les fichiers pour les décompresser. Utilisez cela au lieu de vous soucier des meilleurs paramètres de compression absolus à utiliser pour un ensemble de fichiers particulier, car ce qui est le mieux pour un fichier peut être différent pour un autre fichier, et vous ne voulez pas avoir à le subir à chaque fois que vous en avez besoin. copier les journaux.
la source