System, method, and program for accessing secondary storage in a network system
First Claim
1. A method for processing file requests for files maintained in a server that are capable of being accessed from the server over a network, comprising:
- receiving a request for a file maintained in the server;
determining whether a copy of the requested file is stored in a storage system;
determining a delay time associated with retrieving the copy of the requested file from the storage system after determining that the storage system includes the copy of the requested file;
determining whether the delay time exceeds a maximum delay time;
determining a network response time to retrieve the requested file from the server over the network;
retrieving the requested file from the storage system to return to the request after determining that the delay time does not exceed the maximum delay time;
retrieving the requested file from the storage system when the delay time is greater than the maximum delay time if the network response time is greater than the maximum delay time; and
retrieving the requested file from the server over the network to return to the request after determining that the delay time exceeds the maximum delay time.
2 Assignments
0 Petitions
Accused Products
Abstract
Disclose is a system, method, and program for accessing files maintained in a server that is capable of being accessed over a network. A request is received for a file maintained in the server. A determination is then made as to whether a copy of the requested file is stored in a storage system. The system then determines a delay time associated with retrieving the copy of the requested file from the storage system after determining that the storage system includes the copy of the requested file. A determination is then made as to whether the delay time exceeds a maximum delay time. The system retrieves the requested file from the storage system to return to the request after determining that the delay time does not exceed the maximum delay time. Alternatively, the system retrieves the requested file from the server over the network to return to the request after determining that the delay time exceeds the maximum delay time.
-
Citations
31 Claims
-
1. A method for processing file requests for files maintained in a server that are capable of being accessed from the server over a network, comprising:
-
receiving a request for a file maintained in the server;
determining whether a copy of the requested file is stored in a storage system;
determining a delay time associated with retrieving the copy of the requested file from the storage system after determining that the storage system includes the copy of the requested file;
determining whether the delay time exceeds a maximum delay time;
determining a network response time to retrieve the requested file from the server over the network;
retrieving the requested file from the storage system to return to the request after determining that the delay time does not exceed the maximum delay time;
retrieving the requested file from the storage system when the delay time is greater than the maximum delay time if the network response time is greater than the maximum delay time; and
retrieving the requested file from the server over the network to return to the request after determining that the delay time exceeds the maximum delay time. - View Dependent Claims (2, 3, 4, 5, 6, 7, 26, 27)
determining the delay time for each queued file request by adding (1) a set-up time estimating time needed to ready the storage system for data transfer operations and (2) a data transfer time to transfer the data of the requested file from the secondary storage; and
summing the delay time for each queued file request to estimate the time to process all file requests queued against the storage system.
-
-
5. The method of claim 4, wherein the data transfer time for a file request queued against the storage system is determined by:
-
providing a data transfer rate of the storage system; and
dividing the file size of the file request queued against the storage system by the data transfer rate.
-
-
6. The method of claim 1, wherein the storage system comprises a primary storage device and a secondary storage device, wherein retrieving the requested file from the storage system comprises retrieving the requested file from one of the primary and secondary storage devices.
-
7. The method of claim 6, wherein determining whether the requested file is in the storage system comprises determining whether the requested file is stored in one of the primary and secondary storage devices, further comprising retrieving the requested file from the primary storage device after determining that the requested file is stored in the primary storage device, wherein determining whether the delay time exceeds the maximum delay time occurs after determining that the requested file is stored in the secondary storage device, and wherein retrieving the requested file from the storage device after determining that the delay time does not exceed the maximum delay time comprises retrieving the requested file from the secondary storage device.
-
26. The method of claim 6, wherein the secondary storage device has more storage space than the primary storage device, further comprising:
-
storing files retrieved from the server over the network in the primary storage device; and
migrating files from the primary storage device to the secondary storage that are removed from the primary storage device to make room for more recent files retrieved from the server.
-
-
27. The method of claim 26, further comprising:
retrieving the requested file from the primary storage device if the requested file is in the primary storage device, wherein retrieving the requested file from the storage system if the determined delay time does not exceed the maximum delay time comprises retrieving the requested file from the secondary storage device.
-
8. A system for processing file requests, wherein a copy of the requested file is maintained in both a server capable of being accessed from over a network and a storage system;
- comprising;
a computer system in communication with the storage system;
program logic executed by the computer system, comprising (i) means for receiving a request for a file maintained in the server;
(ii) means for determining whether a copy of the requested file is stored in the storage system;
(iii) means for determining a delay time associated with retrieving the copy of the requested file from the storage system after determining that the storage system includes the copy of the requested file;
(iv) means for determining whether the delay time exceeds a maximum delay time;
(v) means for determining a network response time to retrieve the requested file from the server over the network;
(vi) means for retrieving the requested file from the storage system to return to the request after determining that the delay time does not exceed the maximum delay time;
(vii) means for retrieving the requested file from the storage system when the delay time is greater than the maximum delay time if the network response time is greater than the maximum delay time; and
(viii) means for retrieving the requested file from the server over the network to return to the request after determining that the delay time exceeds the maximum delay time. - View Dependent Claims (9, 10, 11, 12)
means for determining the delay time for each queued file request by adding (1) a set-up time estimating time needed to ready the storage system for data transfer operations and (2) a data transfer time to transfer the data of the requested file from the secondary storage; and
means for summing the delay time for each queued file request to estimate the time to process all file requests queued against the storage system.
- comprising;
-
12. The system method of claim 11, wherein the means for determining the data transfer time for a file request queued against the storage system comprises:
-
means for providing a data transfer rate of the storage system; and
means for dividing the file size of the file request queued against the storage system by the data transfer rate.
-
-
13. A system for processing file requests, wherein a copy of the requested file is maintained in a server capable of being accessed over a network, comprising:
-
a computer system;
a storage system accessible to the computer system;
program logic executed by the computer system, comprising (i) means for receiving a request for a file maintained in the server;
(ii) means for determining whether a copy of the requested file is stored in the storage system;
(iii) means for determining a delay time associated with retrieving the copy of the requested file from the storage system after determining that the storage system includes the copy of the requested file;
(iv) means for determining whether the delay time exceeds a maximum delay time;
(v) means for determining a network response time to retrieve the requested file from the server over the network;
(vi) means for retrieving the requested file from the storage system to return to the request after determining that the delay time does not exceed the maximum delay time;
(vii) means for retrieving the requested file from the storage system when the delay time is greater than the maximum delay time if the network response time is greater than the maximum delay time; and
(viii) means for retrieving the requested file from the server over the network to return to the request after determining that the delay time exceeds the maximum delay time. - View Dependent Claims (14, 15, 16, 17, 18, 28, 29)
storing files retrieved from the server over the network in the primary storage device; and
migrating files from the primary storage device to the secondary storage that are removed from the primary storage device to make room for more recent files retrieved from the server.
-
-
29. The system of claim 28, further comprising:
retrieving the requested file from the primary storage device if the requested file is in the primary storage device, wherein retrieving the requested file from the storage system if the determined delay time does not exceed the maximum delay time comprises retrieving the requested file from the secondary storage device.
-
19. An article of manufacture for use in programming a computer system to process file requests for files maintained in a server that is capable of being accessed over a network, the article of manufacture comprising a computer program in a computer useable medium accessible to the computer system, wherein the computer program is capable of causing the computer system to perform:
-
receiving a request for a file maintained in the server;
determining whether a copy of the requested file is stored in a storage system;
determining a delay time associated with retrieving the copy of the requested file from the storage system after determining that the storage system includes the copy of the requested file;
determining whether the delay time exceeds a maximum delay time;
estimating a network response time to retrieve the requested file from the server over the network;
retrieving the requested file from the storage system to return to the request after determining that the delay time does not exceed the maximum delay time;
retrieving the requested file from the storage system when the delay time is greater than the maximum delay time if the network response time is greater than the maximum delay time; and
retrieving the requested file from the server over the network to return to the request after determining that the delay time exceeds the maximum delay time. - View Dependent Claims (20, 21, 22, 23, 24, 25, 30, 31)
determining the delay time for each queued file request by adding (1) a set-up time estimating time needed to ready the storage system for data transfer operations and (2) a data transfer time to transfer the data of the requested file from the secondary storage; and
summing the delay time for each queued file request to estimate the time to process all file requests queued against the storage system.
-
-
23. The article of manufacture of claim 22, wherein the data transfer time for a file request queued against the storage system is determined by:
-
providing a data transfer rate of the storage system; and
dividing the file size of the file request queued against the storage system by the data transfer rate.
-
-
24. The article of manufacture of claim 19, wherein the storage system comprises a primary storage device and a secondary storage device, wherein retrieving the requested file from the storage system comprises retrieving the requested file from one of the primary and secondary storage devices.
-
25. The article of manufacture of claim 24, wherein determining whether the requested file is in the storage system comprises determining whether the requested file is stored in one of the primary and secondary storage devices, further comprising retrieving the requested file from the primary storage device after determining that the requested file is stored in the primary storage device, wherein determining whether the delay time exceeds the maximum delay time occurs after determining that the requested file is stored in the secondary storage device, and wherein retrieving the requested file from the storage device after determining that the delay time does not exceed the maximum delay time comprises retrieving the requested file from the secondary storage device.
-
30. The article of manufacture of claim 24, wherein the secondary storage device has more storage space than the primary storage device, further comprising:
-
storing files retrieved from the server over the network in the primary storage device; and
migrating files from the primary storage device to the secondary storage that are removed from the primary storage device to make room for more recent files retrieved from the server.
-
-
31. The article of manufacture of claim 30, further comprising:
retrieving the requested file from the primary storage device if the requested file is in the primary storage device, wherein retrieving the requested file from the storage system if the determined delay time does not exceed the maximum delay time comprises retrieving the requested file from the secondary storage device.
Specification