Request Batching and Asynchronous Request Execution For Deduplication Servers
First Claim
1. A computer readable storage medium comprising program instructions for processing disk access requests on a backup server, wherein the program instructions are executable by a processor to:
- receive a first plurality of disk access requests, wherein the backup server is coupled to a storage device which stores a first plurality of data items, wherein at least a portion of each data item in the first plurality of data items is stored using a reference to a comparable portion of a stored data item;
generate a second plurality of disk access requests based on the first plurality of disk access requests, wherein at least one disk access request of the second plurality of disk access requests references one of the first plurality of data items stored;
obtain, for each of at least two disk access requests in the second plurality of disk access requests, data storage location information associated with a corresponding data item stored on the disk;
determine an execution sequence for the second plurality of disk access requests based on the data storage location information; and
issue the second plurality of disk access requests in the execution sequence.
6 Assignments
0 Petitions
Accused Products
Abstract
A system and method for processing disk access requests on a deduplication backup server coupled to a storage device. The storage device may store a first set of one or more data items where at least a portion of each data item is stored as a reference to a comparable portion of a stored data item. Disk access requests may be received. Accordingly, disk access requests may be generated based on received disk access requests. At least one generated disk access request references one of the first set of data items. The method may include obtaining, for each of at least two generated disk access requests, data storage location information associated with a corresponding data item stored on the disk. The method may include determining an execution sequence for the generated disk access requests based on the data storage location information and issuing generated disk access requests in the execution sequence.
-
Citations
20 Claims
-
1. A computer readable storage medium comprising program instructions for processing disk access requests on a backup server, wherein the program instructions are executable by a processor to:
-
receive a first plurality of disk access requests, wherein the backup server is coupled to a storage device which stores a first plurality of data items, wherein at least a portion of each data item in the first plurality of data items is stored using a reference to a comparable portion of a stored data item; generate a second plurality of disk access requests based on the first plurality of disk access requests, wherein at least one disk access request of the second plurality of disk access requests references one of the first plurality of data items stored; obtain, for each of at least two disk access requests in the second plurality of disk access requests, data storage location information associated with a corresponding data item stored on the disk; determine an execution sequence for the second plurality of disk access requests based on the data storage location information; and issue the second plurality of disk access requests in the execution sequence. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. A method for processing disk access requests on a backup server, the method comprising using a computer to perform:
-
receiving a first plurality of disk access requests, wherein the backup server is coupled to a storage device which stores a first plurality of data items, wherein at least a portion of each data item in the first plurality of data items is stored using a reference to a comparable portion of a stored data item; generating a second plurality of disk access requests based on the first plurality of disk access requests, wherein at least one disk access request of the second plurality of disk access requests references one of the first plurality of data items stored; obtaining, for each of at least two disk access requests in the second plurality of disk access requests, data storage location information associated with a corresponding data item stored on the disk; determining an execution sequence for the second plurality of disk access requests based on the data storage location information; and issuing the second plurality of disk access requests in the execution sequence. - View Dependent Claims (9, 10, 11, 12, 13, 14)
-
-
15. A computer system comprising:
-
a processor; and a computer readable storage medium coupled to the processor, wherein the computer readable storage medium comprises instructions executable by the processor to implement; a plurality of modules configured to issue a first plurality of disk access requests corresponding to a storage device coupled to the computer system, wherein the storage device stores a first plurality of data items, wherein at least a portion of each data item in the first plurality of data items is stored using a reference to a comparable portion of a stored data item; and a disk access management layer (DAML), wherein the DAML is configured to; receive a first plurality of disk access requests from the plurality of modules; generate a second plurality of disk access requests based on the first plurality of disk access requests, wherein at least one disk access request of the second plurality of disk access requests references one of the first plurality of data items stored; obtain, for each of at least two disk access requests in the second plurality of disk access requests, data storage location information associated with a corresponding data item stored on the disk; determine an execution sequence for the second plurality of disk access requests based on the data storage location information; and issue the second plurality of disk access requests in the execution sequence. - View Dependent Claims (16, 17, 18, 19, 20)
-
Specification