Archivos dispersos

Se dice que un archivo en el que gran parte de los datos es ceros contiene un conjunto de datos disperso. Los archivos como estos suelen ser muy grandes, por ejemplo, un archivo que contiene datos de imagen que se van a procesar o una matriz dentro de una base de datos de alta velocidad. El problema con los archivos que contienen conjuntos de datos dispersos es que la mayoría del archivo no contiene datos útiles y, debido a esto, son un uso ineficaz del espacio en disco.

La compresión de archivos en el sistema de archivos NTFS es una solución parcial al problema. Todos los datos del archivo que no se escriben explícitamente se establecen explícitamente en cero. La compresión de archivos compacta estos intervalos de ceros. Sin embargo, un inconveniente de la compresión de archivos es que el tiempo de acceso puede aumentar debido a la compresión y descompresión de datos.

La compatibilidad con archivos dispersos se introduce en el sistema de archivos NTFS como otra manera de hacer que el uso del espacio en disco sea más eficaz. Cuando la funcionalidad de archivo dispersa está habilitada, el sistema no asigna espacio de disco duro a un archivo excepto en las regiones en las que contiene datos distintos de cero. Cuando se intenta realizar una operación de escritura donde una gran cantidad de datos del búfer es ceros, los ceros no se escriben en el archivo. En su lugar, el sistema de archivos crea una lista interna que contiene las ubicaciones de los ceros del archivo y esta lista se consulta durante todas las operaciones de lectura. Cuando se realiza una operación de lectura en áreas del archivo donde se encontraron ceros, el sistema de archivos devuelve el número adecuado de ceros en el búfer asignado para la operación de lectura. De este modo, el mantenimiento del archivo disperso es transparente para todos los procesos que acceden a él y es más eficaz que la compresión para este escenario en particular.

El valor de datos predeterminado de un archivo disperso es cero; sin embargo, se puede establecer en otros valores.

Para obtener más información sobre los archivos dispersos, vea los temas siguientes.

En esta sección

Tema Descripción
Operaciones dispersas de archivos
Determine si un sistema de archivos admite archivos dispersos llamando a la función GetVolumeInformation.
Obtener el tamaño de un archivo disperso
Obtenga el tamaño asignado o el tamaño total de un archivo mediante la función GetCompressedFileSize o GetFileSize .
Cuotas dispersas de archivos y discos
Un archivo disperso afecta a las cuotas de usuario por el tamaño nominal del archivo, no a la cantidad real asignada de espacio en disco.