A method and system for mirroring and archiving mass storage. A primary
mass storage and a secondary mass storage are synchronized to contain the
same data. Thereafter, a primary system tracks changes made to the
primary mass storage. These changes are consolidated periodically into
update files, the consolidations representing changes made to the primary
mass storage during a time interval that ends when the primary mass
storage is in a logically consistent state. These update files contain
only those changes necessary to represent the modified state of the
primary mass storage at the time of the update. The primary system then
transfers the update files to a secondary system to bring the secondary
mass storage current with the primary mass storage. The consolidation
minimizes the amount of information that must be transferred and
therefore allows for a relatively low band width communication channel.
In addition, update files may be cached by the primary system so that
requests for mirrored or archived data may be fulfilled by the primary
system cache rather than requiring access to the secondary system.