Patent ID: 7237076
Filing Date: 2007-06-26
Classification: G06F,Y10S

Abstract:
1. A method for maintaining a plurality of snapshots of an operational volume in a server apparatus; said operational volume having a plurality of blocks each for allowing a block of data to be read/written therein; respective ones of said plurality of snapshots representing volume images of said operational volume taken at different points-in-time, the server apparatus including at least one CPU, a memory, at least one network interface and at least one storage interface, at least one disk apparatus being connected to said storage interface, the method comprising: providing a plurality of virtual volumes in association with respective ones of said snapshots representing volume images of said operational volume taken at different points-in-time, for allowing at least one user to read/write a desired snapshot of said plurality of snapshots from/to a block in said plurality of virtual volumes; forming a difference volume for storing therein a copy of a block of data stored in a block of said operational volume; and generating a first table accessible from said plurality of virtual volumes, said first table storing, in association with each of said virtual volumes, information indicating if a copy of a block of data in a block of said operational volume is present in said difference volume or not; said information including an address value of the block storing therein said desired snapshot of said plurality of snapshots in said difference volume, or information indicating that said block of data is in said block of said operational volume and not present in said difference volume, wherein every one of said plurality of virtual volumes that are associated with respective ones of said snapshots is associated with said difference volume, and difference data in snapshots for said operational volume are stored in said same difference volume; wherein said copy is read from said difference volume as said desired snapshot of said plurality of snapshots if said copy is present in said difference volume, and said copy is read from said operational volume if no copy is present in said differential volume.