Compressione solida
# Compressione solida

In informatica, la compressione solida (in inglese solid compression) designa un metodo di compressione dei dati di file multipli, nel quale tutti i file compressi sono concatenati e trattati come un unico blocco di dati. Tale archivio è chiamato archivio solido. Si usa nativamente nei formati 7z e RAR, nonché indirettamente nei formati basati su tar come .tar.gz e .tar.bz2. Per converso, il formato ZIP non è solido: memorizza file compressi separati.

Il termine è usato perché i dati sono compressi come un unico blocco solido, anziché come file individuali.

## Spiegazione

I formati di file compressi spesso presentano sia la compressione (la memorizzazione dei dati in uno spazio ridotto) sia l'archiviazione (la memorizzazione di file multipli e di metadati in un unico file). Le due funzioni si possono combinare in due modi:

* comprimere i singoli file e poi archiviarli in un unico file;
* archiviare tutti i file in un unico blocco di dati, e poi comprimerlo.

L'ordine ha importanza, in quanto queste operazioni non commutano: il secondo metodo è appunto la compressione solida.

In Unix, la compressione e l'archiviazione sono tradizionalmente operazioni separate, il che permette di capire questa distinzione:

* comprimere i singoli file e poi archiviare sarebbe un tar di file gzip-pati – questo è molto raro, mentre
* archiviare mediante tar e poi comprimere genera un archivio compresso: un .tar.gz – e questa è la compressione solida.

## Logica

### Benefici

La compressione solida permette percentuali di compressione molto migliori quando tutti i file sono simili, il che accade spesso se sono dello stesso formato. È anche molto efficiente quando si archivia un numero elevato di file piuttosto piccoli.

### Costi

D'altro canto, ricavare un singolo file da un archivio solido richiede l'elaborazione di tutti i file prima di esso, pertanto modificare gli archivi solidi può essere lento e scomodo.

Inoltre, se l'archivio viene anche lievemente danneggiato, una parte dei dati (a volte perfino tutti i dati) dopo la parte danneggiata possono risultare inutilizzabili (a seconda del formato di compressione e di archiviazione), mentre in un formato di archivio non solido, di solito soltanto un file è inutilizzabile e i file successivi normalmente possono ancora essere estratti.

