Dynamically adaptive data retrieval for a disk drive storage system
First Claim
1. A method for retrieving a data file from a disk drive storage media comprising the steps ofsending a request for reading said data file, comprising at least one data block, for storage in a data cache mail box location, said request identifying the location and size of said data file and including an adaptive read start parameter value,reading said request from said mail box location and initializing the transfer of data from said disk drive to a data cache,inserting a read start message in said data cache mail box, at a time based upon said read start parameter value and the size of the data file to be retrieved, indicating that data can begin to be read from said data cache,polling said data cache mail box for said read start message, andreading data from said data cache upon detection of said read start message in the data cache mail box.
1 Assignment
0 Petitions
Accused Products
Abstract
An apparatus and method for retrieving a data file from a disk drive storage which provide for overlapping read operations thereby reducing the latency seen by a requesting host computer. The host computer requests the retrieval of a data file and a channel director places that request in a data cache. If the data file is not in the data cache, a disk director reads and transfers the data file from the disk drive to the data cache. At a certain point in the transfer of the data file into the data cache, the disk director places a start read message in the data cache which is then read by the channel director. Upon receipt of the start read message, the channel director begins to read the data file from the data cache, thus reading data from the data cache as the disk director completes writing the data file to the data cache. The channel director can adaptively modify the starting point for reading the data files depending upon the "success" rate of previous read operations. The success rate translates into increasing or decreasing a parameter representing the percentage of the data file which must be placed in data cache before the channel director can begin reading from the cache. The percentage varies between 50% and 100% to maintain a "success" rate between, preferably, 85% and 95%.
-
Citations
18 Claims
-
1. A method for retrieving a data file from a disk drive storage media comprising the steps of
sending a request for reading said data file, comprising at least one data block, for storage in a data cache mail box location, said request identifying the location and size of said data file and including an adaptive read start parameter value, reading said request from said mail box location and initializing the transfer of data from said disk drive to a data cache, inserting a read start message in said data cache mail box, at a time based upon said read start parameter value and the size of the data file to be retrieved, indicating that data can begin to be read from said data cache, polling said data cache mail box for said read start message, and reading data from said data cache upon detection of said read start message in the data cache mail box.
-
9. Apparatus for retrieving data from a disk drive comprising
a disk drive storage medium, a data cache, a disk director for responding to a request in said data cache for retrieving data from the disk drive and delivering the data to the data cache, a host processor for initiating a read request to a channel director, a channel director for responding to the read request for sending a data request to said data cache, said data request including a start parameter value, the location of the requested data file and the length of the data file, and responding to a start data read message in said data cache for initiating the reading of said data file from said data cache, said disk director responding to said start parameter value and the length of the data file for placing said start data read message in said data cache when an amount of the data file corresponding to said parameter value and said data file length has been placed in said data cache, and said channel director adaptively changing said start parameter value in response to a determined "success" rate.
Specification