Skip to content

Snapshots and Clones

Volume snapshots and volume clones are essential data management features in distributed storage systems that enable data protection, recovery, and replication. While both techniques involve capturing the state of a volume at a specific point in time, they serve distinct purposes and operate using different mechanisms.

Volume Snapshots

In simplyblock, a volume snapshot can be taken instantly. It contains the read-only (frozen) state of the volume at the time it was taken, while the source volume then operates with Copy-on-Write (CoW) semantics.

Multiple snapshots can coexist for a particular volume, representing different frozen generations or versions of that volume, and they are ordered in time (a snapshot references the changed data delta between its predecessor and its successor).

Volume snapshots can be independently deleted, backed up to S3, and replicated into other clusters. New volumes can be created from any Snapshot (copy-on-write cloning).

Key characteristics of volume snapshots include:

  • Space Efficiency: Snapshots share common data blocks with the original volume, requiring minimal additional storage.
  • Fast Creation: As snapshots do not duplicate data immediately, they can be created almost instantaneously.
  • Versioning and Recovery: Users can revert a volume to a previous state using snapshots, aiding in disaster recovery and data protection.
  • Performance Considerations: While snapshots are efficient, excessive snapshot accumulation can impact performance due to metadata overhead and fragmentation.

Volume Clones

A volume clone is a writable, independent copy of a storage volume created from either an existing volume or a snapshot. Unlike snapshots, clones are fully functional duplicates that can operate as separate storage entities.

Key characteristics of volume clones include:

  • Writable and Independent: Clones can be modified without affecting the original volume.
  • Use Case for Testing and Development: Clones are commonly used for staging environments, testing, and application sandboxing.
  • Storage Overhead: Unlike snapshots, clones may require additional storage capacity to accommodate changes made after cloning.
  • Immediate Availability: A clone provides an instant copy of the original volume, avoiding long data copying processes.