| US 7,555,505 B2 | ||
| Method and apparatus for synchronizing applications for data recovery using storage based journaling | ||
| Kenji Yamagami, Los Gatos, Calif. (US) | ||
| Assigned to Hitachi, Ltd., Tokyo (Japan) | ||
| Filed on Feb. 28, 2006, as Appl. No. 11/365,085. | ||
| Application 11/365085 is a continuation of application No. 10/627507, filed on Jul. 25, 2003, abandoned. | ||
| Prior Publication US 2006/0149792 A1, Jul. 06, 2006 | ||
| Int. Cl. G06F 12/00 (2006.01); G06F 17/30 (2006.01) | ||
| U.S. Cl. 707—203 [707/200] | 16 Claims |

| 13. A computer implemented method of storing information in a computer system to be coupled to a host computer via a network,
the method comprising the steps of:
storing, in a data volume, write data constituting a plurality of files from the host computer;
storing, in a snapshot storing area, a plurality of snapshots including a first snapshot of at least a portion of the data
volume at a first point in time, and also storing a second snapshot of the portion of the data volume at a second point in
time that is a latest snapshot among the stored snapshots; and
storing, in a journal storing area, an oldest journal entry before the first point in time, a journal entry between the first
and second point in time, and another journal entry after the second point in time,
wherein the journal storing area has a variable amount of available space in which new journal entries can be written,
wherein the computer system manages journal operations such that, if the amount of available space in the journal storing
area falls below a predetermined threshold, then the amount of available space is increased by sequentially freeing journal
entries beginning with the oldest journal entry until the amount of available space is no longer below the predetermined threshold,
wherein if, during the increasing of the amount of available space, it becomes necessary to free said another journal entry
after the second point in time, then said another journal entry is applied to the second snapshot to create a new snapshot
before being made free,
wherein based upon a command for generating marker information targeted to a command device in the computer system from the
host computer, the computer system records marker information as being associated with the journal entries in the journal
storing area, the marker information representing a timing of closing of each of the plurality of files on the host computer
for file system operation, wherein the marker information is independent from a write request,
wherein based upon a command for getting marker information targeted to the command device from the host computer, the computer
system retrieves the recorded marker information fro the host computer, and
wherein when receiving a data recovery request specifying a specific marker information at a target point in time between
the first point in time and the second point in time, the computer system determines whether recovery is possible, and if
recovery is possible, the computer system uses a copy of the first snapshot in a recovery volume and at least a portion of
one journal entry to perform recovery at the target point in time.
|