CPC G06F 11/1469 (2013.01) [G06F 11/1453 (2013.01); G06F 16/13 (2019.01); G06F 16/172 (2019.01); G06F 2201/84 (2013.01)] | 10 Claims |
1. A computer-implemented method of restoring files in a data backup system, comprising:
receiving a restore request;
determining that the received restore request comprises a long sequential read and not small file-level restores;
setting up a local read-ahead cache on an active node and a remote read-ahead cache on a passive node coupled to the active node through a fast interconnect link;
defining an index relating a file offset to memory storing file data and containing an indication of a location of the memory as stored locally or remotely;
receiving a prefetch request to aid retrieval of file data restored from a storage system, wherein the prefetch request issues after a read request and comprises a prefetch request issued at a prefetch horizon on the order of megabytes in size from a read offset, and wherein the prefetch horizon covers an amount of time between stalls of input/output (I/O) operations of reads from the memory and slower reads from disk, and wherein the time between the stalls comprises a read highway;
first determining if the read request accesses data contained in the index, and second determining if the indexed data is stored locally or remotely; and
accessing the read data from the local read-ahead cache if stored locally or accessing the read data from the remote cache if stored remotely to effectively lengthen the read highway to thereby reduce the stalls of I/O operations.
|