Reference

Block-Level Deduplication

Block-level deduplication splits data into fixed or variable-sized blocks, fingerprints each one, and stores only a single physical copy of any block that repeats. References point back to that copy, so identical data across many files consumes space just once.

APIs & internalsGeneral

Block-Level Deduplication

Also known as: block dedup, deduplication storage, block-level dedup, block level deduplication

Block-level deduplication splits data into fixed or variable-sized blocks, fingerprints each one, and stores only a single physical copy of any block that repeats. References point back to that copy, so identical data across many files consumes space just once.

  • Stores one physical copy of each unique block; repeats become lightweight references.
  • Used by ZFS, Btrfs, and backup appliances; needs a large in-memory hash index.
  • Phones generally do not dedupe storage at the block level, so duplicate files still consume space.

How block-level deduplication works

Instead of comparing whole files, block-level deduplication chops data into chunks, hashes each chunk, and keeps a lookup table mapping each hash to one stored block. When a new chunk produces a hash that is already in the table, the system writes a pointer to the existing block instead of storing the data again. This is the dedup model used by enterprise storage arrays, backup systems, and filesystems such as ZFS and Btrfs.

Chunking can be fixed-size (every block is the same length) or variable-size using content-defined boundaries, which keeps deduplication effective even when data shifts by a few bytes. Because it works below the file level, two files that share only part of their content, like two versions of the same document, can still share the unchanged blocks while differing where they actually differ.

Block-level vs. how a phone cleaner works

Block-level dedup is powerful but costly: it needs a large hash index in RAM and adds CPU overhead to every write, which is why it lives mostly in servers, NAS devices, and backup appliances rather than in a phone's filesystem. Mobile operating systems generally do not deduplicate your photos and downloads at the block level.

That gap is exactly why a user-facing cleaner like Cleanor matters. It performs file-level duplicate detection in the photo and file space, finding entire copies you can safely delete, rather than relying on the storage layer to silently collapse identical blocks. Understanding the difference helps explain why duplicate files still eat real space on a phone even though the same idea is automatic on a backup server.

Related terms

Keep reading the reference.

Act on it

Guides and tools for this topic.