GNU/Linux >> Tutoriales Linux >  >> Linux

¿Existe un sistema de archivos de almacenamiento a nivel de bloque?

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.


Linux
  1. Comunicación entre procesos en Linux:Almacenamiento compartido

  2. Linux:¿por qué no hay un sistema de archivos Rootfs presente en el sistema?

  3. ¿Ocultar datos en los sistemas de archivos?

  4. Sistema de archivos multiplataforma

  5. ¿Existe un sistema de archivos similar a Git?

¿Qué es HDFS? Guía del sistema de archivos distribuidos de Hadoop

Introducción al sistema de archivos de Linux

Comando Fsck en Linux (Sistema de archivos de reparación)

Administración del sistema de archivos de red (NFS) en Linux

¿Recuperación de datos ext4?

No se pueden enviar datos de MySQL a un archivo