Back to results
US 7,398,422 B2Granted
Method and apparatus for data recovery system using storage based journaling
AssigneeHitachi, Ltd.
InventorsTakashi Amano, Kenji Yamagami
Life of this patent
Estimating the term…
Abstract
A storage system maintains a journal and a snapshot of one or more data volumes. Two journal entry types are maintained, an AFTER journal entry and a BEFORE journal entry. Two modes of data recovery are provided: “fast” recovery and “undo-able” recovery. A combination of both recovery modes allows the user to quickly recover a targeted data state.
Claims16
A method for data recovery in a data storage system comprising:
- receiving I/O requests from a host machine, the I/O requests being directed to a production volume, the I/O requests including write requests;
- producing an original snapshot of the production volume, the original snapshot representative of a first data state of the production volume;
- servicing the write requests, including performing write operations on the production volume to produce an updated production volume, the updated production volume having a second data state;
- storing a plurality of first journal entries, each first journal entry corresponding to one of the write requests and containing data associated with the write request;
- performing a recovery operation comprising steps of:
- producing a copy of the original snapshot;
- applying one or more first journal entries to the original snapshot to produce an updated snapshot, the updated snapshot having a third data state that is a data state of the production volume at a point in time between the first data state and the second data state;
- and
- restoring the third data state on the production volume based on the updated snapshot by copying the updated snapshot to the production volume to restore the production volume to the third data state so that the data recovery can be performed on the production volume in the third data state;
- and
- performing a re-recovery operation comprising steps of:
- making a copy of the copy of the original snapshot to produce a second copy of the original snapshot;
- applying the one or more first journal entries to the second copy of the original snapshot to produce a second updated snapshot;
- and
- copying the second updated snapshot to the production volume to restore the production volume to the third data state,
- wherein the re-recovery operation can be performed if an error occurred during the step of applying the one or more first journal entries to the original snapshot.
13 more elements
A method for data recovery in a data storage system comprising:
- receiving I/O requests from a host machine, the I/O requests being directed to a production volume, the I/O requests including write requests;
- producing an original snapshot of the production volume, the original snapshot representative of a first data state of the production volume;
- servicing the write requests including performing write operations on the production volume to produce an updated production volume, the updated production volume having a second data state;
- storing a plurality of first journal entries, each first journal entry being associated with a write request and containing data in the production volume that is to be overwritten by the write request;
- performing a recovery operation comprising steps of:
- producing a first copy of the undated production volume;
- producing a second copy of the updated production volume;
- applying one or more first journal entries to the second copy of the updated production volume to obtain a recovered volume having a third data state that is a data state of the production volume at a point in time earlier than the second data state;
- and
- restoring the third data state on the production volume based on the recovered volume by copying the recovered volume to the production volume to restore the production volume to the third data state so that the data recovery can be performed on the production volume in the third data state.
7 more elements
A storage system comprising:
- a production volume, the production volume being in a first data state;
- a plurality of secondary volumes;
- and
- a controller operative to receive read requests and write requests from the host machine,
- the controller further operative to service a write request by performing steps of:
- producing a journal entry in response to a write request, the journal entry including data from the production volume that will be overwritten by the write request;
- storing the journal entry being stored on a first volume from among the secondary volumes;
- and
- subsequent to producing the journal entry, performing one or more I/O operations on the production volume to service the write request,
- wherein a plurality of journal entries are stored on the first volume as a result of servicing a plurality of write requests,
- wherein production volume is in a second data state as a result of the write requests,
- the controller further operative to perform a recovery operation on a current data state of the production volume comprising steps of:
- producing a first copy of the production volume in its current data state;
- producing a second copy of the production volume in its current data state;
- applying one or more journal entries to the current data state of the second copy of the production volume to generate a recovery volume having an earlier data state, the earlier data state being a data state of the production volume at a point in time between the first data state and the second data state;
- and
- restoring the third data state on the production volume based on the recovered volume by copying the recovered volume to the production volume to restore the production volume to the third data state so that data recovery can be performed on the production volume in the third data state.
14 more elements
Dependencies are inferred from the claim text.