Compression compacte
En informatique, la compression compacte désigne une méthode de compression de données de plusieurs fichiers, où tous les fichiers sont concaténés et traités comme un seul bloc de données. On obtient alors une archive compacte (solid archive).
La technique est utilisée nativement dans les formats 7z[1] et RAR[2], et indirectement dans les formats dérivés de tar, comme les .tar.gz et .tar.bz2. En revanche, le format ZIP n'est pas "compact" car il stocke séparément chaque fichier compressé.
Explication
Les formats de fichiers compressés offrent souvent à la fois la compression et l'archivage (stockage de plusieurs fichiers et méta-données en un seul fichier). Cela peut se faire :
- soit en compressant séparément chaque fichier, puis en archivant les fichiers compressés
- soit en archivant les fichiers (non compressés), puis en compressant l'archive
Seule la deuxième méthode est une compression compacte. Notez que l'ordre des opérations est importante (elles ne sont pas commutatives).
Dans les systèmes Unix, on effectue traditionnellement les opérations dans l'ordre conforme à la compression compacte : archivage avec tar, puis compression avec gzip (par exemple).
Avantages
La compression compacte permet d'atteindre de bien meilleurs taux de compression lorsque les fichiers sont similaires. Elle est également intéressante lors de la compression d'un grand nombre de petits fichiers.
Inconvénients
La compression compacte génère un couplage fort entre les fichiers au sein de l'archive, ce qui a quelques conséquences négatives :
- Extraire un seul fichier d'une archive compacte peut nécessiter l'analyse de tous les autres fichiers.
- La modification d'un fichier dans l'archive peut être extrêmement lente.
- La détérioration d'une petite partie de l'archive peut compromettre l'ensemble de ses fichiers.
Références
- ↑ (en) « 7za man page » (consulté le ) : « -ms=on[:] solid archive on »
- ↑ (en) « RAR Frequently Asked Questions (FAQ) » (consulté le )
Content Disclaimer
Informasi ini disarikan dari Wikipedia dan disajikan kembali untuk tujuan edukasi. Konten tersedia di bawah lisensi CC BY-SA 3.0. Kami tidak bertanggung jawab atas ketidakakuratan data yang bersumber dari kontribusi publik tersebut.
- The information displayed on this website is sourced in part or in whole from Wikipedia and has been adapted for the purpose of restating it. We strive to provide accurate and relevant information, however:
- There is no guarantee of absolute accuracy. Wikipedia is an open, collaborative project that can be edited by anyone, so information is subject to change.
- It is not intended to constitute professional advice. The content displayed is for informational and educational purposes only. For important decisions (e.g., medical, legal, or financial), please consult a professional.
- Content copyright. Wikipedia is licensed under the Creative Commons Attribution-ShareAlike License (CC BY-SA). This means that content may be reused with appropriate attribution and shared under a similar license.
- Responsible use. Any risk arising from the use of information from this website is entirely the responsibility of the user.