Restoring data with reduced suspension-of-access periods
AssigneeSymantec Corporation
InventorDaniel H. Hardman
Life of this patent
Estimating the term…
Abstract
Restoring data, without suspending access to the data for the entire time that the data is being restored. Access is suspended only while a portion of the data is restored, before access to all of the data is permitted. A driver virtualizes any remaining unrestored data. To accomplish this, the driver maintains a list of data yet to be restored. If a request to read a portion of the data is then received, and the requested portion is on the list, the driver restores the requested portion before permitting the read request to be fulfilled. The restored portion is then removed from the list of unrestored data. If a request to write a portion of the data is received, the write is permitted, and the location just written to is removed from the list without restoring.
Claims20
A method for restoring data comprising:
- an act of restoring only an initial portion of data, leaving a remaining portion of the data at least temporarily unrestored;
- after the act of restoring only an initial portion of data, an act of accessing a request to read a portion of the remaining unrestored data;
- an act of restoring at least the requested portion of the remaining data in response to the request;
- an act of responding to the request by providing access to the requested portion after the act of restoring at least the requested portion;
- and
- an act of restoring more of the remaining data after the act of responding;
- wherein the initial portion of data comprises data for instantiating a virtualization driver.
A computer program product comprising one or more computer-readable media having thereon computer-executable instructions that, when executed by one of more processors of a computing system, cause the computing system to perform a method for restoring data, the method comprising:
- an act of restoring only an initial portion of data, leaving a remaining portion of the data at least temporarily unrestored;
- after the act restoring only an initial portion of data, an act of accessing a request to read a portion of the remaining unrestored data;
- an act of restoring at least the requested portion of the remaining data in response to the request;
- an act of responding to the request by providing access to the requested portion after the act of restoring at least the requested portion;
- and
- an act of restoring more of the remaining data after the act of responding;
- wherein the initial portion of data comprises data for instantiating a virtualization driver.
One or more computer-readable media having thereon the following:
- a list of data to be restored in response to a request to restore data;
- computer-executable instructions that, when executed by one or more processors of a computing system, cause the computing system to perform the following:
- an act of restoring only an initial portion of data, leaving a remaining portion of the data at least temporarily unrestored;
- after the act of restoring only an initial portion of data, an act of accessing a request to read a portion of the remaining unrestored data;
- an act of restoring at least the requested portion of the remaining data;
- an act of responding to the request by providing access to the requested portion after the act of restoring at least the requested portion;
- and
- an act of removing the requested portion from the list of data to be restored;
- wherein the initial portion of data comprises data for instantiating a virtualization driver.
Dependencies are inferred from the claim text.