Ir al contenido

Deduplicación global

La Deduplicación Global (GDD) de NGBackup es un motor nativo en Rust, de nivel producción, que reduce el almacenamiento de backup mucho más allá de los ~20:1 que el mercado suele garantizar — las cargas reales de NGBackup alcanzan más de 60:1. El ratio de dedup depende de tus datos y tu retención: cuantos más backups conservas de los mismos datos, más bloques se repiten, así que los ratios siguen subiendo — no hay techo fijo. La GDD reporta la cifra exacta de tu entorno en tiempo de ejecución, a partir de los bytes reales ingeridos vs. almacenados (savings_factor, en gdd-core). Deduplica tanto en el cliente como en el storage y se integra junto a tu instalación sin cambiar el resto de la configuración.

Deduplicación global en origen y destino

  • Dedup global en origen: el File Daemon divide y calcula el hash de los datos y envía solo los chunks que el repositorio aún no tiene, y el Storage Daemon mantiene un único repositorio de chunks compartido por todos los jobs y clientes.
  • Chunking por contenido (FastCDC) — bloques variables encuentran duplicados aun cuando los datos se desplazan.
  • Índice en redb con refcounting: búsquedas rápidas y recuperación segura de chunks sin referencias.
  • Filtros de Bloom multicapa — una capa caliente (inserciones recientes) sobre una capa fría mapeada en memoria evita lecturas del índice en disco para chunks que se sabe que están ausentes, recortando I/O en la ruta de miss.
  • Transferencia de chunks protegida: los chunks viajan dentro de la sesión File Daemon a Storage Daemon, cifrada con TLS-PSK por defecto; consulta Cifrado & TLS.
  • Verificación de integridad: el dedup scrub bajo demanda relee los chunks y verifica el CRC de cada uno, y el dedup verify confirma que todos los chunks de un job estén presentes; los mapas de extent se recuperan de escrituras interrumpidas tras un fallo. Los chunks corruptos o ausentes se reportan, no se reparan: mantén el chunk store en almacenamiento redundante (RAID) y una segunda copia de los backups críticos. La recuperación de espacio es un dedup vacuum explícito.

La dedup se habilita por FileSet con Dedup = Client en el bloque Options. El File Daemon hace la división en chunks y el hash; el Storage Daemon mantiene el repositorio de chunks. No se necesita ningún tipo especial de Device. Consulta las referencias Device y Storage y la página del plugin Global Deduplication.