Backup software

Backup software are computer programs used to perform a backup; they create supplementary exact copies of files, databases or entire computers. These programs may later use the supplementary copies to restore the original contents in the event of data loss; hence, they are very useful to users.

Key features
There are several features of backup software that make it more effective in backing up data.

Volumes
Voluming allows the ability to compress and split backup data into separate parts for storage on smaller, removable media such as CDs. It was often used because CDs were easy to transport off-site and inexpensive compared to hard drives or servers.

However, the recent increase in hard drive capacity and decrease in drive cost has made voluming a far less popular solution. The introduction of small, portable, durable USB drives, and the increase in broadband capacity has provided easier and more secure methods of transporting backup data off-site.

Data compression
Since hard drive space has cost, compressing the data will reduce the size allowing for less drive space to be used to save money.

Access to open files
Many backup solutions offer a plug-in for access to exclusive, in use, and locked files.

Differential and incremental backups
Backup solutions generally support differential backups and incremental backups in addition to full backups, so only material that is newer or changed compared to the backed up data is actually backed up. The effect of these is to increase significantly the speed of the backup process over slow networks while decreasing space requirements.

Schedules
Backup schedules are usually supported to reduce maintenance of the backup tool and increase the reliability of the backups.

Encryption
To prevent data theft, some backup software offers cryptography features to protect the backup.

Transaction mechanism
To prevent loss of previously backed up data during a backup, some backup software (e.g., Areca Backup, Argentum Backup) offer Transaction mechanism (with commit/rollback management) for all critical processes (such as backups or merges) to guarantee the backups' integrity.