Methods and systems for backing up and restoring different point in time versions of a virtual machine, a real machine, an application, a database, or a set of electronic files using a plurality of independently managed snapshot chains are described. The different point in time versions of the data being backed-up may be stored using two or more snapshot chains corresponding with two or more data partitions of the data being backed-up. Over time, additional full image snapshots may be acquired from an external server or generated locally by a storage appliance to limit the snapshot chain lengths and to limit the aggregate block chain lengths for the snapshot chains. Acquisition and generation of the additional full image snapshots may be staggered across different data partitions to limit computational and storage costs per snapshot.
展开▼