Incremental backup

From Wikipedia, the free encyclopedia

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.

Contents

[edit] Variants

[edit] Incremental

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

[edit] Differential

A cumulative backup of all changes made after 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 majority of the data has been changed.

[edit] Multilevel incremental

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.

[edit] Reverse incremental

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.

[edit] 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.

[edit] Incrementals forever

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.

[edit] See also

Languages