Versioning, Delta

<< Click to Display Table of Contents >>

Navigation:  Using SyncBackPro > Expert Mode >

Versioning, Delta

Previous pageReturn to chapter overviewNext page


Delta versioning is an enhancement to versioning so that only the differences between files are stored. This can save a considerable amount of storage space with large files such as virtual machines and databases.


What is Delta?


Delta-copy is the process of storing just the differences between two versions of a file. For example, you have a large virtual machine file and make a backup of it. SyncBackPro will copy the entire file to your backup folder. Later, you update your virtual machine and run your profile to make another backup. This time, SyncBackPro will create a patch file (a delta) that contains just the differences between the original backup file and the new (updated) virtual machine file. If you repeat this step (change the virtual machine file, run the profile) then SyncBackPro will create a patch file with the differences between the original file (the first version of the file) and the new (updated) virtual machine file. So in the backup you have the original file (version 1) and two patch files (version 2 and version 3). The patch files are considerably smaller in size than the original files because they only contain the changes, so storage space is saved. Patch files are also compressed, saving even more storage space.


Using delta-copy only makes sense with large files (e.g. databases, virtual machines, Outlook PST files, etc.) and when you want to save storage space or the backup is on a slow network connection.


Delta versioning is only available if:


Versioning is enabled. For example, you cannot enable delta versioning in the destination unless versioning is enabled for the destination.


You cannot have delta versioning on both the source/left and destination/right.


It can only be used with file systems, e.g. to local, external or network drives. In future versions, cloud and FTP will also be supported.


It cannot be used in the destination/right with Fast Backup.


It cannot be used with compression.


You should not use delta versioning if:


Performance is important. Creating delta versions can be a time consuming process.



If you enable delta versioning in the destination, then you must not change or delete the files in the destination. The same rule applies to the source. If you do then it will cause serious problems. SyncBackPro relies on the hash files it produces to create the delta patch files. Those hash files are a fingerprint of the file they represent, so if you change the files contents then the hash file is invalid for that file, which means the delta patch file is invalid.


You should use consider using delta versioning if:


Limiting the use of backup storage space is more important than performance.


You are backing up very large files, e.g. virtual machines.





The delta versioning settings are:


Enable delta versioning on Source/Left: If enabled, and they meet the criteria defined above, versions will be delta versioned.


Enable delta versioning on Destination/Right: If enabled, and they meet the criteria defined above, versions will be delta versioned.


Minimum file size (MBytes) for a delta to be created: Files smaller than the size specified will not be delta versioned. The default value is 250MB and the minimum value is 10MB.


Disk space to use (MBytes) to cache delta hash files: As part of the delta creation process, SyncBackPro needs to create and read hash files. Hash files are special files that allow SyncBackPro to create delta (patch) files without needing the original files. Hash files are considerably smaller than the original files. For example, the hash file for a 15MB file is just 38KB. These hash files will be stored in the default temporary files directory.


Delta Filter: On the Versioning settings pages you can choose which types of files are versioned. If you click this button, you can specify which of those will be delta versioned. By default, all files that are versioned will be delta versioned. It is not recommended to create delta versions for compressed file types, e.g. JPG images, Zip files, etc., or for encrypted files. This is because the difference between versions of such files can be substantial.



Keeping Versions


With delta versioning, three types of version files are kept: base files (which are the same as the original file), patch files and hash files. There is one hash file per base file, and one or more patch files per base file. When a base file is deleted, the hash file is also deleted. A base file is not deleted until all the patch files are deleted. Hash files are not versions, but support files required as part of the delta versioning process. Base files and patch files are versions.


Because of the relationship between base files and patch files (patch files need a base file), patch files are always deleted before a base file is deleted. A base file cannot be deleted until all the patch files using it are deleted, because without a base file a patch file is useless. This rule means that newer versions can be deleted before older versions. For example:


1.The first version of a file is made. As it's the first version, it's a base file (i.e. the complete file).

2.The second version of a file is made. This is a patch file (i.e. the differences between the modified file and the base file).

3.If you have set SyncBackPro to keep just one version of a file, then it is the patch file that will be deleted. This means the older version (the base file) is kept.


Because of this, it is recommended that at least 2 versions are kept.



How to Restore Delta Versions


Restoring from delta versions is straight forward. If a file is copied from a delta version to the other location, e.g. via restore or changing the action in the Differences window, then SyncBackPro will copy the file across and rebuild it. There is nothing you need to do.




All Content: 2BrightSparks Pte Ltd © 2003-2021