Data block prefetching and caching in a hierarchical storage model

Abstract Storage subsystems have become one of the most important components in computer systems nowadays and have been expanded to include all three levels of memory hierarchy, namely the cache, the secondary and the tertiary storage. This paper presents a study of data block prefetching and caching over the two upper storage levels in a hierarchical storage model, by proposing techniques for data amortization from tertiary to secondary and from secondary to cache levels. Each level reserves a specific area for data prefetching and an evolutionary algorithm is proposed for identifying the data blocks to be prefetched in each of the two upper storage levels. An analytic model is proposed such that the cache, the secondary and the tertiary storage are appropriately parameterized in order to analyse the expected performance improvement due to prefetching. The data object prefetching approach is experimented under certain workload of requests referring to all storage levels and has shown significant performance improvement with respect to request service times, as well as cache and secondary storage hit ratios.

[1]  B. C. Brookes,et al.  Information Sciences , 2020, Cognitive Skills You Need for the 21st Century.

[2]  Brian N. Bershad,et al.  A trace-driven comparison of algorithms for parallel prefetching and caching , 1996, OSDI '96.

[3]  Sam H. Noh,et al.  A database disk buffer management algorithm based on prefetching , 1998, CIKM '98.

[4]  David Kotz,et al.  A Detailed Simulation Model of the HP 97560 Disk Drive , 1994 .

[5]  Ann L. Chervenak,et al.  Tertiary Storage: An Evaluation of New Applications , 1994 .

[6]  Christopher Small,et al.  Why does file system prefetching work? , 1999, USENIX Annual Technical Conference, General Track.

[7]  Anna R. Karlin,et al.  A study of integrated prefetching and caching strategies , 1995, SIGMETRICS '95/PERFORMANCE '95.

[8]  John Wilkes,et al.  An introduction to disk drive modeling , 1994, Computer.

[9]  Carl Staelin,et al.  The HP AutoRAID hierarchical storage system , 1995, SOSP.

[10]  Alexander A. Stepanov,et al.  Loge: A Self-Organizing Disk Controller , 1991 .

[11]  Zbigniew Michalewicz,et al.  Genetic Algorithms + Data Structures = Evolution Programs , 1996, Springer Berlin Heidelberg.

[12]  Zbigniew Michalewicz,et al.  Genetic algorithms + data structures = evolution programs (3rd ed.) , 1996 .

[13]  Lalit M. Patnaik,et al.  Genetic algorithms: a survey , 1994, Computer.

[14]  D. E. Goldberg,et al.  Genetic Algorithms in Search , 1989 .

[15]  Spencer W. Ng,et al.  Advances in Disk Technology: Performance Issues , 1998, Computer.

[16]  Anna R. Karlin,et al.  Implementing cooperative prefetching and caching in a globally-managed memory system , 1998, SIGMETRICS '98/PERFORMANCE '98.

[17]  Jeffrey Scott Vitter,et al.  Strategic directions in storage I/O issues in large-scale computing , 1996, CSUR.

[18]  Elizabeth Shriver Performance modeling for realistic storage devices , 1997 .

[19]  Garth A. Gibson,et al.  RAID: high-performance, reliable secondary storage , 1994, CSUR.

[20]  Matthew Addison Blaze Caching in large-scale distributed file systems , 1993 .

[21]  Hui Lei,et al.  An analytical approach to file prefetching , 1997 .

[22]  Arif Merchant,et al.  An analytic behavior model for disk drives with readahead caches and request reordering , 1998, SIGMETRICS '98/PERFORMANCE '98.

[23]  Spencer W. Ng,et al.  Improving Disk Performance Via Latency Reduction , 1991, IEEE Trans. Computers.

[24]  David E. Goldberg,et al.  Genetic Algorithms in Search Optimization and Machine Learning , 1988 .

[25]  Yannis Manolopoulos,et al.  Data placement schemes in replicated mirrored disk systems , 2000, J. Syst. Softw..