Method and apparatus for restoring a corrupted data volume
First Claim
Patent Images
1. A method of restoring a corrupted data volume, the method comprising:
- creating a backup copy of the data volume before the data volume is corrupted;
creating a virtual copy of the backup copy in response to detecting corruption of the data volume;
applying data transactions stored in a transaction log to the virtual copy, overwriting data of the corrupted data volume with data of the backup copy and data of the virtual copy after applying data transactions to the virtual copy.
9 Assignments
0 Petitions
Accused Products
Abstract
Disclosed is a method and apparatus for restoring a corrupted data volume. In one embodiment, the method includes creating a backup copy of the data volume before the data volume is corrupted. Data transactions that modify the contents of the data volume are stored in a transaction log. After detection of the data corruption, a virtual copy of the backup copy is created. Thereafter, select data transactions stored in the transaction log, are applied to the virtual copy. Data of the corrupted data volume is then overwritten with data of the backup copy and data of the virtual copy after applying data transactions to the virtual copy.
-
Citations
19 Claims
-
1. A method of restoring a corrupted data volume, the method comprising:
-
creating a backup copy of the data volume before the data volume is corrupted;
creating a virtual copy of the backup copy in response to detecting corruption of the data volume;
applying data transactions stored in a transaction log to the virtual copy, overwriting data of the corrupted data volume with data of the backup copy and data of the virtual copy after applying data transactions to the virtual copy.
-
-
2. A method of restoring a data volume stored in a first memory, the method comprising:
-
copying first and second data portions of the data volume to a second memory;
modifying data of the first and second data volume portions in the first memory in response to executing first and second instructions, respectively, wherein the first and second data volume portions are copied to the second memory before data of the first and second data volume portions are modified;
copying the first data volume portion stored in the second memory to a third memory;
modifying data of the first data volume portion stored in the third memory in response to re-executing the first instruction;
overwriting the first data volume portion stored in the first memory with the first data portion stored in the third memory after modification of data of the first data volumes in the first and third memories;
overwriting the second data volume portion stored in the first memory with the second data volume portion stored in the second memory after modification of data of the second data volume in the first memory. - View Dependent Claims (3, 4, 5)
-
-
6. A method comprising:
-
storing a plurality of instructions in an instruction memory;
copying data from a plurality of blocks in a first memory to a plurality of blocks, respectively, in a second memory;
modifying data in each of the plurality of first memory blocks in response to executing the plurality of instructions, wherein data in each of the first memory blocks is copied to a respective second memory block before modification;
switching the state of a plurality of first bits in memory from one of a first or second state to the other of the first or second state, wherein the plurality of first bits corresponds to the plurality of first memory blocks, respectively;
switching the state of a plurality of second bits in memory from one of the first or second states to the other of the first and second states, wherein the plurality of second bits corresponds to the plurality of second memory blocks, respectively. - View Dependent Claims (7, 8, 9, 10, 11, 12, 13)
-
-
14. An apparatus comprising:
-
a first memory for storing a data volume;
a second memory;
a third memory;
a computer system in data communication with the first, second and third memories;
the computer system comprising a computer readable medium for storing instructions executable by the computer system, wherein the computer system implements a method in response to executing the instructions, the method comprising;
the computer system copying first and second data portions of the data volume to the second memory;
the computer system modifying data of the first and second data volume portions in the first memory in response to the computer system executing first and second instructions, respectively, wherein the computer system copies the first and second data volume portions to the second memory before the computer system modifies data of the first and second data volume portions;
the computer system copying the first data volume portion stored in the second memory to a third memory;
the computer system modifying data of the first data volume portion stored in the third memory in response to re-executing the first instruction;
the computer system overwriting the first data volume portion stored in the first memory with the first data portion stored in the third memory after the computer system modifies data of the first data volumes in the first and third memories;
the computer system overwriting the second data volume portion stored in the first memory with the second data volume portion stored in the second memory after the computer system modifies data of the second data volume in the first memory.
-
-
15. An apparatus comprising:
-
a first memory for storing a data volume;
a second memory;
a third memory;
means for copying first and second data portions of the data volume to the second memory;
means for modifying data of the first and second data volume portions in the first memory in response to execution of first and second instructions, respectively, wherein the first and second data volume portions are copied to the second memory before data of the first and second data volume portions are modified;
means for copying the first data volume portion stored in the second memory to a third memory;
means modifying data of the first data volume portion stored in the third memory in response to re-execution of the first instruction;
means for overwriting the first data volume portion stored in the first memory with the first data portion stored in the third memory after modification of data of the first data volumes in the first and third memories;
means for overwriting the second data volume portion stored in the first memory with the second data volume portion stored in the second memory after modification of data of the second data volume in the first memory.
-
-
16. A computer readable medium storing instructions executable by a computer system, wherein the computer system performs a method of restoring a data volume in a first memory in response to executing the instructions, the method comprising:
-
copying first and second data portions of the data volume to a second memory;
modifying data of the first and second data volume portions in the first memory in response to executing first and second instructions, respectively, wherein the first and second data volume portions are copied to the second memory before data of the first and second data volume portions are modified;
copying the first data volume portion stored in the second memory to a third memory;
modifying data of the first data volume portion stored in the third memory in response to re-executing the first instruction;
overwriting the first data volume portion stored in the first memory with the first data portion stored in the third memory after modification of data of the first data volumes in the first and third memories;
overwriting the second data volume portion stored in the first memory with the second data volume portion stored in the second memory after modification of data of the second data volume in the first memory. - View Dependent Claims (17, 18, 19)
-
Specification