Patent ID: 6732125
Filing Date: 2004-05-04
Classification: G06F,Y10S

Abstract:
A method for backing up data using a self archiving log structured volume having a sequence of numbered blocks of fixed length and a log for recording log entries of write events and synch events to the volume, wherein the log includes synch event entries, active log entries, and inactive log entries, the method comprising:performing a write event by copying data to a sequence of the blocks of the volume, wherein each write event entry includes the number of the block being written and the contents of the block being transferred; performing a synch event to record a point in time when the blocks of the volume were known to be in a consistent state, wherein each synch event entry includes the time of the synch event; performing a log entry for a write event, wherein a log entry for a write event is an active log entry until superseded by a later write event for the same block number and then the active log entry becomes an inactive log entry, wherein when an active segment consists only of inactive entries and synch entries the active segment becomes an inactive segment eligible to be archived; archiving an inactive segment to backing storage; converting the archived inactive segment to a recycle segment containing no entries and eligible to become the new current segment, wherein the current log segment and the active log segment define a finite reconstruction length for the volume; recording index entries in an index of the log, each index entry associated with a volume block number and a corresponding log entry; satisfying write events by adding an entry for a block of the volume to the current log segment and updating the index entry for the block number with the log location of the new log entry; and performing a snapshot of the volume, wherein a snapshot of the volume is a record of the state of the volume at a selected point in the log and is created by filling the index with block/log position relationships from the log entries to the index, scanning backwards in time from the selected point, and ignoring any duplicate entries for a block that occur earlier in the log, wherein if the selected point is a synch entry the snapshot is consistent with respect to a storage application that controls the volume.