This Article 
 Bibliographic References 
 Add to: 
Asynchronous Scheduling of Redundant Disk Arrays
September 2003 (vol. 52 no. 9)
pp. 1170-1184

Abstract—Allocation of data to parallel disk using redundant storage and random placement of blocks can be exploited to achieve low access delays. New algorithms are proposed which improve the previously known shortest queue algorithm by systematically exploiting that scheduling decisions can be deferred until a block access is actually started on a disk. These algorithms are also generalized for coding schemes with low redundancy. Using extensive simulations, practically important quantities are measured which have so far eluded an analytical treatment: The delay distribution when a stream of requests approaches the limit of the sytem capacity, the system efficiency for parallel disk applications with bounded prefetching buffers, and the combination of both for mixed traffic. A further step toward practice is taken by outlining the system design for \alpha: automatically load-balanced parallel hard-disk array. Additional algorithmic measures are proposed for \alpha that allow variable sized blocks, seek time reduction, fault tolerance, inhomogeneous systems, and flexible priorization schemes.

[1] A. Aggarwal and J. S. Vitter, The Input/Output Complexity of Sorting and related Problems Comm. ACM, vol. 31, no. 9, pp. 1116-1127, 1988.
[2] P. Sanders, S. Egner, and J. Korst, Fast Concurrent Access to Parallel Disks Proc. 11th ACM-SIAM Symp. Discrete Algorithms, pp. 849-858, 2000.
[3] K. Salem and H. Garcia-Molina, Disk Striping Proc. Data Eng. '86, pp. 336-342, 1986.
[4] D.A. Patterson, G. Gibson, and R.H. Katz, “A Case for Redundant Arrays of Inexpensive Disks (RAID),” Proc. ACM SIGMOD Conf., pp. 109–116, 1988.
[5] C. Armen, Bounds on the Separation of Two Parallel Disk Models Proc. Workshop on I/O in Parallel and Distributed Systems (IOPADS), pp. 122-127, May 1996.
[6] E.L. Miller and R.H. Katz, RAMA: An Easy-to-Use, High-Performance Parallel File System Parallel Computing, vol. 23, pp. 419-446, 1997.
[7] R.M. Karp, M. Luby, and F. Meyer auf der Heide, Efficient PRAM Simulation on a Distributed Memory Machine Proc. 24th ACM Symp. Theory of Computing, pp. 318-326, May 1992.
[8] Y. Azar, A.Z. Broder, A.R. Karlin, and E. Upfal, Balanced Allocations Proc. 26th ACM Symp. Theory of Computing, pp. 593-602, 1994.
[9] W. Tetzlaff and R. Flynn, Block Allocation in Video Servers for Availability and Throughput Proc. Multimedia Computing and Networking, 1996.
[10] R. Tewari, R. Mukherjee, D.M. Dias, and H.M. Vin, Design and Performance Tradeoffs in Clustered Video Servers Proc. Int'l Conf. Multimedia Computing and Systems, pp. 144-150, 1996.
[11] J. Korst, Random Duplicate Assignment: An Alternative to Striping in Video Servers Proc. ACM Multimedia, pp. 219-226, 1997.
[12] R. Muntz, J.R. Santos, and S. Berson, A Parallel Disk Storage System for Real-Time Multimedia Applications Int'l J. Intelligent Systems, vol. 13, pp. 1137-1174, 1998.
[13] P. Berenbrink, A. Brinkmann, and C. Scheideler, Design of the PRESTO Multimedia Storage Network Proc. Int'l Workshop Comm. and Data Management in Large Networks, pp. 2-12, Oct. 1999.
[14] J. Santos, R. Muntz, and B. Ribeiro-Neto, “Comparing Random Data Allocation and Data Stripping in Multimedia Servers,” Proc. ACM SIGMETRICS Conf., June 2000.
[15] N.D. Vvedenskaya, R.L. Dobrushin, and F.I. Karpelevich, Queueing System with Selection of the Shortest of Two Queues: An Asymptotic Approach Problems of Information Transmission, vol. 32, no. 1, pp. 15-29, 1996.
[16] M. Mitzenmacher, The Power of Two Choices in Randomized Load Balancing PhD thesis, Univ. of California Berkeley, 1996.
[17] R. Cole, A. Frieze, B.M. Maggs, M. Mitzenmacher, A.W. Richa, R.K. Sitaraman, and E. Upfal, On Balls and Bins with Deletions Proc. Second RANDOM, pp. 145-158, 1998.
[18] P. Berenbrink, A. Czumaj, A. Steger, and B. Vöcking, Balanced Allocations: The Heavily Loaded Case Proc. 32th Ann. ACM Symp. Theory of Computing, pp. 745-754, 2000.
[19] M. Adler, P. Berenbrink, and K. Schröder, Analyzing an Infinite Parallel Job Allocation Process Proc. Sixth European Symp. Algorithms, pp. 417-428, 1998.
[20] P. Berenbrink, A. Czumaj, T. Friedetzky, and N.D. Vvedenskaya, On the Analysis of Infinite Parallel Job Allocation Processes via Differential Equations Proc. 11th ACM Symp. Parallel Algorithms and Architectures, pp. 99-108, 2000.
[21] P. Sanders, Reconciling Simplicity and Realism in Parallel Disk Models Proc. 12th ACM-SIAM Symp. Discrete Algorithms, pp. 67-76, 2001.
[22] J. Korst and P. Coumans, Asynchronous Control of Disks in Video Servers Technical Report NL-MS-19. 649, Philips Research Laboratories, Eindhoven, The Netherlands, 1998.
[23] P. Berenbrink, M. Riedel, and C. Scheideler, Simple Competitive Request Scheduling Strategies Proc. 11th ACM Symp. Parallel Architectures and Algorithms, pp. 33-42, 1999.
[24] R.K. Ahuja, R.L. Magnanti, and J.B. Orlin, Network Flows. Prentice Hall, 1993.
[25] K. Mehlhorn and S. Näher, The LEDA Platform of Combinatorial and Geometric Computing. Cambridge Univ. Press, 1999.
[26] A.S. Tanenbaum, Computer Networks, third ed. Prentice Hall, 1996.
[27] K.S. Trivedi, Probability and Statistics with Reliability, Queuing, and Computer Science Applications. Prentice Hall, 1982.
[28] A. Borodin, J. Kleinberg, P. Raghavan, M. Sudan, and D.P. Williamson, Adversarial Queuing Theory Proc. 28th Ann. ACM Symp. Theory of Computing, pp. 376-385, 1996.
[29] W. Aiello, E. Kushilevitz, R. Ostrovsky, and A. Rosém, Adaptive Packet Routing for Bursty Adversarial Traffic Proc. 30th Ann. ACM Symp. Theory of Computing, pp. 359-368, 1998.
[30] G. Copeland and T. Keller, “A Comparison of High-Availability Media RecoveryTechniques,” Proc. ACM SIGMOD Conf., pp. 98–109, 1989.
[31] J. Aerts, J. Korst, and S. Egner, Random Duplicate Storage for Load Balancing in Multimedia Servers Information Processing Letters, vol. 76, nos. 1-2, pp. 51-59, 2000.
[32] M. Kallahalla and P.J. Varman, Optimal Read-Once Parallel Disk Scheduling Proc. Workshop on I/O in Parallel and Distributed Systems (IOPADS), pp. 68-77, 1999.
[33] D.A. Hutchinson, P. Sanders, and J.S. Vitter, Duality between Prefetching and Queued Writing with Parallel Disks Proc. Ninth European Symp. Algorithms (ESA), pp. 62-73, 2001.
[34] F.J. MacWilliams and N.J.A. Sloane, Theory of Error-Correcting Codes. North-Holland, 1988.
[35] G.A. Gibson, L. Hellerstein, R.M. Karp, R.H. Katz, and D.A. Patterson, Coding Techniques for Hhandling Failures in Large Disk Arrays, csd-88-477 technical report, Univ. of California Berkley, 1988.
[36] M.O. Rabin, Efficient Dispersal of Information for Security, Load Balancing and Fault Tolerance J. ACM, vol. 36, no. 2, pp. 335-348, 1989.
[37] M. Blaum, J. Brady, J. Bruck, and J. Menon, EVENODD: An Optimal Scheme for Tolerating Double Disk Failures in RAID Architectures Proc. 21st Ann. Int'l Symp. Computer Architecture, pp. 245-254, 1994.
[38] G.A. Alvarez, W.A. Burkhard, and F. Cristian, Tolerating Multiple Failures in RAID Architectures with Optimal Storage and Uniform Declustering Proc. 24th Ann. Int'l Symp. Computer Architecture (ISCA-97), Computer Architecture News, vol. 25, no. 2, pp. 62-72, June 1997.
[39] M.R. Garey and D.S. Johnson, Computers and Intractability: A Guide to the Theory of NP-Completeness.New York: W.H. Freeman, 1979.
[40] H.G.P. Bosch, Mixed-Media File Systems PhD thesis, Univ. of Twente, The Netherlands, 1999.
[41] G. Nerjes, P. Muth, M. Paterakis, Y. Romboyannakis, P. Triantafillou, and G. Weikum, Incremental Scheduling of Mixed Workloads in Multimedia Information Servers J. Multimedia Tools and Applications, vol. 11, no. 1, pp. 249-273, 2000.

Index Terms:
Parallel disks, lazy scheduling, asynchronous, random redundant storage, duplicate allocation, soft real time, bipartite matching, queuing theory.
Peter Sanders, "Asynchronous Scheduling of Redundant Disk Arrays," IEEE Transactions on Computers, vol. 52, no. 9, pp. 1170-1184, Sept. 2003, doi:10.1109/TC.2003.1228512
Usage of this product signifies your acceptance of the Terms of Use.