File sparse

Un file in cui gran parte dei dati è zero viene detto che contiene un set di dati sparse. I file come questi sono in genere molto grandi, ad esempio un file che contiene dati di immagine da elaborare o una matrice all'interno di un database ad alta velocità. Il problema con i file che contengono set di dati di tipo sparse è che la maggior parte del file non contiene dati utili e, per questo motivo, si tratta di un uso inefficiente dello spazio su disco.

La compressione dei file nel file system NTFS è una soluzione parziale al problema. Tutti i dati nel file non scritti in modo esplicito vengono impostati in modo esplicito su zero. La compressione dei file compatta questi intervalli di zeri. Tuttavia, uno svantaggio della compressione dei file è che il tempo di accesso può aumentare a causa della compressione e della decompressione dei dati.

Il supporto per i file sparse viene introdotto nel file system NTFS come un altro modo per rendere più efficiente l'utilizzo dello spazio su disco. Quando la funzionalità dei file sparse è abilitata, il sistema non alloca spazio su disco rigido a un file, ad eccezione delle aree in cui contiene dati diversi da zero. Quando viene tentata un'operazione di scrittura in cui una grande quantità di dati nel buffer è zero, gli zeri non vengono scritti nel file. Il file system crea invece un elenco interno contenente i percorsi degli zeri nel file e questo elenco viene consultato durante tutte le operazioni di lettura. Quando viene eseguita un'operazione di lettura in aree del file in cui si trovano gli zeri, il file system restituisce il numero appropriato di zeri nel buffer allocato per l'operazione di lettura. In questo modo, la manutenzione del file sparse è trasparente per tutti i processi che vi accedono ed è più efficiente della compressione per questo particolare scenario.

Il valore di dati predefinito di un file sparse è zero; Tuttavia, può essere impostato su altri valori.

Per altre informazioni sui file di tipo sparse, vedere gli argomenti seguenti.

Contenuto della sezione

Argomento Descrizione
Operazioni di file sparse
Determinare se un file system supporta file sparse chiamando la funzione GetVolumeInformation.
Recupero delle dimensioni di un file sparse
Ottenere le dimensioni allocate o le dimensioni totali per un file usando la funzione GetCompressedFileSize o GetFileSize .
Quote di file e dischi di tipo sparse
Un file sparse influisce sulle quote utente in base alle dimensioni nominale del file, non alla quantità effettiva di spazio su disco allocata.