Legal claims defining the scope of protection, as filed with the USPTO.
1. A storage system coupled to a host computer via a network comprising: a data volume storing write data from the host computer; a snapshot storing area storing a plurality of snapshots; a journal storing area storing journal entries associated with the write data, the journal entries including a journal entry between a first point in time and a second point in time; and a storage controller to conduct write operations according to write requests received from the host computer, to manage snapshot operations to store the plurality of snapshots, and to perform data recovery with a target time using at least one of the journal entries and a selected snapshot among the plurality of snapshots, wherein the journal entries are generated for each of the write operations issued from the host computer and each of the journal entries includes a unique sequence number assigned by the storage system when a corresponding one of the journal entries is generated, wherein the storage system manages journal operations to record the journal entries, and to apply the at least one of the journal entries to the selected snapshot, wherein the storage system maintains a management table storing relationship information for each of the journal entries in association with the snapshots, wherein the storage controller selects a snapshot that is closest in time to the target time from among the plurality of snapshots as the selected snapshot, and applies the at least one journal entry to the selected snapshot in sequential order to perform the data recovery by referring to the management table, and wherein said unique sequence numbers are used to select the at least one journal entry to be sequentially applied to said selected snapshot.
2. The storage system according to claim 1 , wherein the plurality of snapshots includes a first snapshot of at least a portion of the data volume at a first point in time and a second snapshot of the at least a portion of the data volume at a second point in time subsequent to the first point in time, wherein in response to a data recovery request with a target time between the first point in time and the second point in time, the storage controller selects the first snapshot as the selected snapshot based on the target time, selects at least one of the journal entries corresponding to a write operation conducted between the first point in time and the target time as the at least one selected journal entry, and recovers data of the portion of the data volume at the target time by using the first snapshot and a portion of the at least one selected journal entry.
3. The storage system according to claim 2 , wherein the storage controller monitors the journal storing area and determines whether to apply certain ones of the journal entries to said first snapshot based on the monitored results.
4. The storage system according to claim 3 , wherein the storage controller determines to apply the certain ones of the journal entries so that a predetermined amount of free space is maintained for the journal storing area.
5. The storage system according to claim 1 , wherein the plurality of snapshots also have sequence numbers, and if there is a snapshot having a higher sequence number than the oldest journal entry of said journal entries, said controller frees journal entries that are earlier in time than said snapshot having the higher sequence number.
6. The storage system according to claim 1 , wherein said storage system includes a plurality of said data volumes, wherein said journal storing area stores journal entries for write data to said plurality of said data volumes.
7. A storage system for processing data comprising: a production data store receiving write operations from a host device; a snapshot data store storing one or more snapshots of at least a portion of the production data store; a journal data store storing one or more journal entries associated with the write operations; and a controller, wherein in response to a data recovery request specifying a target time, the controller selects a snapshot based on a target time, determines a beginning journal entry based on unique sequence numbers assigned by the storage system and associated with the journal entries and a sequence number of the selected snapshot, updates the selected snapshot by applying the beginning journal entry to the selected snapshot, and performs additional updates to the selected snapshot by applying journal entries that are later in time than the beginning journal entry and earlier in time than the target time, wherein the storage system maintains a management table storing relationship information for each of the journal entries in association with the snapshots, wherein the storage controller selects a snapshot that is closest in time to the target time from among the plurality of snapshots as the selected snapshot, and applies the journal entries to the selected snapshot in sequential order to perform the data recovery by referring to the management table, wherein the journal entries are generated for each write operation issued from the host computer and each of the journal entries includes one of the unique sequence numbers assigned by the storage system when a corresponding one of the journal entries is generated, and wherein said unique sequence numbers are used to select said selected snapshot and the journal entries that are to be applied to the selected snapshot.
8. The storage system according to claim 7 , wherein the controller accesses the production data store and the snapshot data store to store one or more snapshots of at least a portion of the production data store on the snapshot data store, and accesses the journal data store to record a journal entry for each write operation from the host device.
9. The storage system according to claim 8 , wherein the controller updates one of the snapshots with a portion of the journal entries so that space in the journal data store is released.
10. The storage system according to claim 8 , wherein the controller updates one of the snapshots with a portion of the journal entries when an amount of free space in the journal data store falls below a first threshold value.
11. The storage system according to claim 7 , wherein if there is a snapshot having a higher sequence number than the oldest journal entry of said journal entries, said controller frees journal entries that are earlier in time than said snapshot having the higher sequence number.
Unknown
July 31, 2012
Browse 5M+ US patents with plain-English claim translations and AI-generated analysis.