Systems, methods, and computer readable media for computer data protection
First Claim
1. A method of protecting data in a computing file system, comprising:
- defining a virtual volume comprising a virtual volume database associated with a target volume;
mounting the virtual volume;
processing at least one write access including a write data segment and a write target pointer to the target volume, comprising;
creating a virtual volume record in the virtual volume database associated with the at least one write access, comprising;
creating a target pointer corresponding to the write target pointer; and
creating a shadow cache pointer corresponding to a free location of a shadow cache; and
storing the write data segment at the free location; and
processing at least one virtual volume record in the virtual volume database upon the occurrence of an event of interest, comprising copying a cache data segment from the shadow cache at a shadow cache pointer of the at least one virtual volume record to the target volume at a target pointer of the at least one virtual volume record.
5 Assignments
0 Petitions
Accused Products
Abstract
The present invention comprises computing systems, computer readable media, and methods of protecting computing systems. Embodiments comprise defining a virtual volume, mounting the virtual volume, and processing write accesses. Processing write accesses comprises creating a virtual volume record in a virtual volume database associated with the write access and storing write data at a free location of a shadow cache. Embodiments may also include processing read accesses comprising comparing the read accesses to a virtual volume record to determine if a matching virtual volume record exists, reading data from the target volume if the matching virtual volume record is absent, and reading a data from the shadow cache if the matching virtual volume record is present. Embodiments may also comprise processing at least one virtual volume record upon the occurrence of an event of interest and includes copying a cache data segment from the shadow cache to the target volume.
-
Citations
48 Claims
-
1. A method of protecting data in a computing file system, comprising:
-
defining a virtual volume comprising a virtual volume database associated with a target volume;
mounting the virtual volume;
processing at least one write access including a write data segment and a write target pointer to the target volume, comprising;
creating a virtual volume record in the virtual volume database associated with the at least one write access, comprising;
creating a target pointer corresponding to the write target pointer; and
creating a shadow cache pointer corresponding to a free location of a shadow cache; and
storing the write data segment at the free location; and
processing at least one virtual volume record in the virtual volume database upon the occurrence of an event of interest, comprising copying a cache data segment from the shadow cache at a shadow cache pointer of the at least one virtual volume record to the target volume at a target pointer of the at least one virtual volume record. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
-
-
9. A method of protecting data in a computing file system, comprising:
-
defining a virtual volume comprising a virtual volume database associated with a target volume;
mounting the virtual volume;
processing at least one write access including a write data segment and a write target pointer to the target volume, comprising;
creating a virtual volume record in the virtual volume database associated with the at least one write access, comprising;
creating a target pointer corresponding to the write target pointer; and
creating a shadow cache pointer corresponding to a free location of a shadow cache; and
storing the write data segment at the free location; and
processing at least one read access including a read target pointer to the target volume, comprising;
comparing the at least one read access to at least one additional virtual volume record to determine a presence of a matching virtual volume record including a matching cache pointer;
reading a target data segment from the target volume at the read target pointer if the matching virtual volume record is absent; and
reading a cache data segment from the shadow cache at the matching cache pointer if the matching virtual volume record is present. - View Dependent Claims (10, 11, 12, 13, 14, 15, 16)
-
-
17. A computing system, comprising:
-
a processor configured for executing computer instructions;
a memory configured for storing computer instructions for execution by the processor;
a computing file system comprising computer instructions for execution on the processor and configured for servicing file and directory access requests from an operating system and application programs;
a volume virtualizer comprising computer instructions for execution on the processor and configured for;
defining a virtual volume comprising a virtual volume database associated with a target volume;
mounting the virtual volume;
processing at least one write access including a write data segment and a write target pointer to the target volume, comprising;
creating a virtual volume record in the virtual volume database associated with the at least one write access, comprising;
creating a target pointer corresponding to the write target pointer; and
creating a shadow cache pointer corresponding to a free location of a shadow cache; and
storing the write data segment at the free location; and
processing at least one virtual volume record in the virtual volume database upon the occurrence of an event of interest, comprising copying a cache data segment from the shadow cache at a shadow cache pointer of the at least one virtual volume record to the target volume at a target pointer of the at least one virtual volume record; and
at least one mass storage device configured as the target volume. - View Dependent Claims (18, 19, 20, 21, 22, 23, 24)
-
-
25. A computing system, comprising:
-
a processor configured for executing computer instructions;
a memory configured for storing computer instructions for execution by the processor;
a computing file system comprising computer instructions for execution on the processor and configured for servicing file and directory access requests from an operating system and application programs;
a volume virtualizer comprising computer instructions for execution on the processor and configured for;
defining a virtual volume comprising a virtual volume database associated with a target volume;
mounting the virtual volume;
processing at least one write access including a write data segment and a write target pointer to the target volume, comprising;
creating a virtual volume record in the virtual volume database associated with the at least one write access, comprising;
creating a target pointer corresponding to the write target pointer; and
creating a shadow cache pointer corresponding to a free location of a shadow cache; and
storing the write data segment at the free location; and
processing at least one read access including a read target pointer to the target volume, comprising;
comparing the at least one read access to at least one additional virtual volume record to determine a presence of a matching virtual volume record including a matching cache pointer;
reading a target data segment from the target volume at the read target pointer if the matching virtual volume record is absent; and
reading a cache data segment from the shadow cache at the matching cache pointer if the matching virtual volume record is present; and
at least one mass storage device configured as the target volume. - View Dependent Claims (26, 27, 28, 29, 30, 31, 32)
-
-
33. A computer readable medium including a computer program, the computer program comprising:
-
instructions for defining a virtual volume comprising a virtual volume database associated with a target volume;
instructions for mounting the virtual volume;
instructions for processing at least one write access including a write data segment and a write target pointer to the target volume, comprising;
creating a virtual volume record in the virtual volume database associated with the at least one write access, comprising;
creating a target pointer corresponding to the write target pointer; and
creating a shadow cache pointer corresponding to a free location of a shadow cache; and
storing the write data segment at the free location; and
instructions for processing at least one virtual volume record in the virtual volume database upon the occurrence of an event of interest, comprising copying a cache data segment from the shadow cache at a shadow cache pointer of the at least one virtual volume record to the target volume at a target pointer of the at least one virtual volume record. - View Dependent Claims (34, 35, 36, 37, 38, 39, 40)
-
-
41. A computer readable medium including a computer program, the computer program comprising:
-
instructions for defining a virtual volume comprising a virtual volume database associated with a target volume;
instructions for mounting the virtual volume;
instructions for processing at least one write access including a write data segment and a write target pointer to the target volume, comprising;
creating a virtual volume record in the virtual volume database associated with the at least one write access, comprising;
creating a target pointer corresponding to the write target pointer; and
creating a shadow cache pointer corresponding to a free location of a shadow cache; and
storing the write data segment at the free location; and
instructions for processing at least one read access including a read target pointer to the target volume, comprising;
comparing the at least one read access to at least one additional virtual volume record to determine a presence of a matching virtual volume record including a matching cache pointer;
reading a target data segment from the target volume at the read target pointer if the matching virtual volume record is absent; and
reading a cache data segment from the shadow cache at the matching cache pointer if the matching virtual volume record is present. - View Dependent Claims (42, 43, 44, 45, 46, 47, 48)
-
Specification