Changed Block Tracking

The changed block tracking (CBT) mechanism allows Veeam Backup for Proxmox VE to reduce the amount of data read from processed VMs, and to increase the speed and efficiency of incremental backups:

  • During a full backup session Veeam Backup for Proxmox VE reads only written data blocks, while unallocated data blocks are filtered out.
  • During an incremental backup session, Veeam Backup for Proxmox VE reads only those data blocks that have changed since the previous backup session.

To detect unallocated and changed data blocks, CBT relies on the QEMU Dirty Bitmaps functionality:

  1. During the first (full) backup session, Veeam Backup for Proxmox VE creates a bitmap for each disk that is attached to a processed VM.
  2. During subsequent sessions, Veeam Backup for Proxmox VE uses the created bitmaps to compare the contents of disks backed up during the previous backup session and the current disk contents. This allows Veeam Backup for Proxmox VE to detect data blocks that have changed since the previous backup session. As soon as a new backup is created, Veeam Backup for Proxmox VE updates the bitmaps to include the latest changes.

Limitations for Changed Block Tracking

Due to Proxmox VE technical limitations, bitmaps created for disks in the RAW and VMDK formats are automatically removed as soon as VMs that have these disks attached are powered off or restarted. Therefore, Veeam Backup for Proxmox VE may not be able to use CBT when processing those VMs and trying to detect data blocks that have changed since the previous backup session. If CBT cannot be used, Veeam Backup for Proxmox VE reads the whole content of VM disks and compares it with backed-up data that already exists in backup repositories. In this case, the completion time of incremental backups may occur to grow.

Note

This limitation does not apply to disks in the QCOW2 format.