Backup and DR
Differential Backup Explained and Compared to Incremental
In this article, we will overview differential backup and its specifics. This type of backup cannot be used for file-level or image-based backups. However, there is a popular scenario where you can meet and should use differential backup. Continue reading to learn more about this type of backup and the difference between incremental and differential backup.
What Is a Differential Backup?
A differential backup is a type of backup that uploads the new and updated files after the first full backup. It’s essential to remember that each consequent differential backup compares the dataset only with the initial full backup.
Facts About Differential Backup
- It’s faster to perform a differential backup than to perform a full backup
- A differential backup will become larger than a full backup. Thus, you need to run another full backup from time to time.
- It’s easier and faster to recover files from a differential backup than from an incremental backup. The reason is the architecture of both solutions.
Incremental vs Differential Backup
Incremental and differential backups both perform a backup of changed and modified files. However, there is a distinct difference between incremental and differential backup.
Storage Space
A differential backup grows over time, as it consists of all the changes since the initial full backup. Thus, differential backup is slower and takes more storage space than an incremental backup.
Cost
If you compare the cost of a differential backup with an incremental one, you’ll find that the former is more costly than the latter. This is because cumulative differential backup will take more storage space over time than the incremental backup process. It will consume more resources, and you either need to get additional storage or require an audit to perform a clean-up in order to continue using this strategy. If you need cost-effective backup operations, you should go with an incremental one.
Backup Speed
Another difference between differential and incremental backup processes is their backup speed. An incremental backup requires one full backup and then subsequent backups over time. On the other hand, the differential backup process requires one full backup that is the source of comparison for subsequent differential backups.
Let’s understand that with an example.
Your IT staff performs a full backup on Sunday and schedules incremental backups on Monday, Tuesday, etc.
If your staff is using a differential backup strategy, the system will create backup files of all changes that occur on Monday and then all changes that happen on Tuesday, alongside any changes that occurred on Monday since Sunday.
Since incremental backup takes less space, its backup speed is quicker than a differential one.
Data Restoration Speed
The purpose of backing up is to streamline the restoration process. You should be able to recover data as and when required. In the case of differential backup, the recovery process requires you to have one full backup file and a recent differential backup file. Since a few steps are required in differential backup, the recovery time is quick in this backup strategy.
On the flip side, if you have implemented an incremental backup process in your system, the whole process of recovery takes more time. It requires you to have a full backup file and also multiple backup copies. In the event that one of the subsequent increment copies is missing or corrupted, recovery time will increase.
Further reading Understanding RPO and RTO
You can go with an incremental backup recovery process when you only need partial data restoration.
- During a recovery, incremental backup software needs to process each increment change and the first full backup to restore data to the required state. This process is slower compared to recovery from a differential backup.
- In an incremental backup, each next incremental change relies on the previous backup. This means that if any of the changes are lost, the whole dataset is lost. To recover from the differential backup, you only need two “files” – the initial full backup and the latest differential backup.
- Since incremental backups are typically smaller, they can run more often, and more data is preserved in the event of a disaster. Incremental backup allows better RPO in comparison to differential backup.
Nowadays, incremental backup has become the most common type used to back up various files and datasets. By default, most backup software developers implement an incremental backup. SQL Server differential backup is a typical use case of differential backup. For other datasets, differential backup is not used and cannot be enabled in most backup software solutions.
Cloud Compatibility
If you have a plan for digital transformation and you want to pick a backup strategy that consumes less space but offers optimal results, then you need to go with the incremental backup technique. It’s suitable for the cloud as it requires less space and backup time, although the data recovery process will take time. Since this type of backup doesn’t require much space, it will reduce the cost of cloud storage.
Differential Backup Use Case: Microsoft SQL Server
To understand how the differential backup works, we will review how it’s used in the backup of Microsoft SQL Server. Microsoft has developed a native backup structure in three layers for its SQL Server databases:
Full backup
A backup of the whole database. This is the largest of the three backups; you don’t want to run it very often.
Differential backup
SQL Server differential backup contains all changes since the initial full backup. The Microsoft SQL Server database is designed in such a way that it’s technically possible to back up only the changed parts of the dataset.
Transaction log backup
The SQL Server database creates a highly detailed map of the database - that’s transaction logs. If the database and differential backups are lost or unrecoverable, the transaction log backup chain is enough to recover the latest recorded state. Backup of the T-logs usually takes less time than a full or differential backup.
All three backup types are complementary to each other in the SQL Server. You will be able to achieve lower downtime and lose less data while restoring from a chain of full-differential-transaction logs.
Further reading Microsoft SQL Server Backup and Restore
Conclusion
A differential backup is a highly specific backup technique, and it is not used for datasets outside of SQL Server databases. When considering other types of backup, like file-level or image-based backups, a differential backup is proven to be ineffective. You can go with incremental backup during the digital transformation process, as it speeds up the backup process while allowing you to save money in the long run.