An incremental backup
is a backup
method where multiple backups are kept (not just the last one). These backups will be incremental if each original piece of backed up information is stored only once, and then successive backups only contain the information that changed since a previous backup.
As a backup method, it is highly efficient, since it allows for the illusion of storage of N copies of size S information chunks, with a total storage requirement much lower than NxS. If the original information that is backed up does not change between backups, the total size will approach just S. If it changes almost completely, the NxS limit will be approached.
A "normal" incremental backup will only back up files that have been changed since the last backup of any type. This provides the quickest means of backup, since it only makes copies of files that have not yet been backed up. For instance, following a full backup on Friday, Monday’s tape will contain only those files changed since Friday. Tuesday’s tape contains only those files changed since Monday, and so on. The downside to this is that in order to perform a full restore, one needs to restore the last full backup first, followed by each of the subsequent incremental backups to the present day in the correct order. Should any one of these backup copies be damaged (particularly the full backup), the restore will be incomplete.
An example of a typical incremental backup command in MS-DOS would be: xcopy c:source*.* d:destination*.* /s /m
A cumulative backup of all
changes made since the last full
backup, i.e., the differences
since the last full backup. The advantage to this is the quicker recovery time, requiring only a full backup and the latest differential backup to restore the system. The disadvantage is that for each day elapsed since the last full backup, more data needs to be backed up, especially if a significant proportion of the data has been changed.
A more sophisticated incremental backup scheme involves multiple numbered backup levels
. A full backup is level 0. A level n
backup will back up everything since the most recent level n-1
backup. Assume a level 0 backup was taken on a Sunday. A level 1 backup taken on Monday would only include changes made since Sunday. A level 2 backup taken on Tuesday would only include changes made since Monday. A level 3 backup taken on Wednesday would only include changes made since Tuesday. If a level 2
backup was taken on Thursday, it would include all changes made since Monday
because Monday was the most recent level n-1 backup.
An incremental backup of the changes made between two instances of a mirror
is called a reverse incremental. By applying a reverse incremental to a mirror, the result will be a previous version of the mirror.
Synthetic full backup
A synthetic backup is a form of an incremental backup that is possible when there is a separate computer that manages the backups. The backup server takes a typical incremental backup of the system in question and combines this data with the previous backups to generate a new synthetic backup. This new synthetic backup is indistinguishable from a normal full backup and shares all the advantages, such as faster restore times.
This style is similar to the Synthetic backup concept. After an initial full backup, only incremental backups are sent to a centralized backup server. This server keeps track of all the incrementals and sends the proper data back to the server during restores. This can be implemented by sending each incremental directly to tape as it is taken and then refactoring the tapes as necessary. If enough disk space is available, an online mirror can be maintained along with previous incremental changes so that the current or older versions of the systems being backed up can be restored.
Block Level Incremental
This method only backs up the blocks within the file that changed. This requires a higher level of integration between the filesystem and the backup software.
Byte level Incremental or Differential
These backup technologies are similar to the "Block level Incremental backup" method. However, the Binary Incremental or Differential backup method is based on a binary variation of the files compared to the previous backup: while the block-based technologies work with heavy changing units (blocks of 8Ks, 4Ks or 1K), the byte-based technologies work with the minimum unit, saving space when reflecting a change on a file. Another important difference is that they work independently on the file system. At the moment, these are the technologies that achieve the highest relative compression of the data, turning into a great advantage for the security copies carried out through the Internet.
While the terms above are in very wide use, some backup vendors reverse the meaning of "incremental" and "differential". For one example, see Backup4All