Suponiendo que su pregunta es sobre la deduplicación de datos, hay algunos sistemas de archivos que lo admiten en Linux:
- ZFS, con deduplicación en línea (de modo que los datos se deduplican a medida que se almacenan), pero con requisitos de memoria extremos que hacen que la función sea difícil de usar en la práctica;
- Btrfs, con "solo" deduplicación fuera de banda, aunque con procesos estrechamente integrados que proporcionan una deduplicación razonablemente rápida después de almacenar los datos;
- SquashFS, pero probablemente no se ajuste a sus requisitos porque es de solo lectura.
Se supone que XFS obtiene la deduplicación en algún momento, y Btrfs también debe obtener la deduplicación en línea.
Esté atento a la comparación del sistema de archivos de Wikipedia para ver cuándo cambia esto.
El sistema de archivos S3QL tiene deduplicación a nivel de bloque. Se promociona como una solución de almacenamiento en la nube de S3, pero también funciona muy bien en el almacenamiento local.
Aquí hay un ejemplo de parte de nuestro servidor de copias de seguridad/archivo
s3qlstat /path/to/some/archives
Directory entries: 12430247
Inodes: 6343756
Data blocks: 1357349
Total data size: 12.4 TB
After de-duplication: 3.84 TB (30.92% of total)
After compression: 3.71 TB (29.84% of total, 96.52% of de-duplicated)
Database size: 1.29 GiB (uncompressed)
Cache size: 0 bytes, 0 entries
Cache size (dirty): 0 bytes, 0 entries
Queued object removals: 0
El almacenamiento subyacente que utiliza este sistema de archivos
df -h /var/s3ql/part-of-archive
Filesystem Size Used Avail Use% Mounted on
/dev/sde 6.0T 3.8T 2.0T 66% /var/s3ql/part-of-archive
Esto me indica que el almacenamiento subyacente utiliza un poco menos de 4 TB, pero almacena alrededor de 12 TB de datos deduplicados. (Mis archivos tienen bastantes bloques duplicados. Como era de esperar, espero.) La capa de compresión está deshabilitada aquí; si estuviera usando almacenamiento S3 verdadero, lo habría dejado habilitado.
La base de datos SQLite que administra el sistema de archivos en sí tiene un poco más de 1 GB, que es bastante grande, pero como estoy usando esto para archivar en lugar de un uso de producción de alta demanda, está bien.