A practical learning-based approach for dynamic storage bandwidth allocation

In this paper, we address the problem of dynamic allocation of storage bandwidth to application classes so as to meet their response time requirements. We present an approach based on reinforcement learning to address this problem. We argue that a simple learning-based approach may not be practical since it incurs significant memory and search space overheads. To address this issue, we use application-specific knowledge to design an efficient, practical learning-based technique for dynamic storage bandwidth allocation. Our approach can react to dynamically changing workloads, provide isolation to application classes and is stable under overload. We implement our techniques into the Linux kernel and evaluate it using prototype experimentation and trace-driven simulations. Our results show that (i) the use of learning enables the storage system to reduce the number of QoS violations by a factor of 2.1 and (ii) the implementation overheads of employing such techniques in operating system kernels is small.

[1]  Dimitri P. Bertsekas,et al.  Reinforcement Learning for Dynamic Channel Allocation in Cellular Telephone Systems , 1996, NIPS.

[2]  Calton Pu,et al.  Feedback Based Dynamic Proportion Allocation for Disk I/O , 1998 .

[3]  Michael Dahlin,et al.  A quantitative analysis of cache policies for scalable network file systems , 1994, SIGMETRICS.

[4]  Paul Barham,et al.  A fresh approach to file system quality of service , 1997, Proceedings of 7th International Workshop on Network and Operating System Support for Digital Audio and Video (NOSSDAV '97).

[5]  Jakob and Nordström Ernst Carlström Reinforcement learning for control of self-similar call traffic in broadband networks , 1999 .

[6]  Julie Ward,et al.  Appia: Automatic Storage Area Network Fabric Design , 2002, FAST.

[7]  Eric Anderson,et al.  Selecting RAID Levels for Disk Arrays , 2002, FAST.

[8]  K. Shin,et al.  Performance Guarantees for Web Server End-Systems: A Control-Theoretical Approach , 2002, IEEE Trans. Parallel Distributed Syst..

[9]  Ravi Wijayaratne,et al.  Providing QOS guarantees for disk I/O , 2000, Multimedia Systems.

[10]  S ChaseJeffrey,et al.  Managing energy and server resources in hosting centers , 2001 .

[11]  Noah Treuhaft,et al.  Recovery Oriented Computing (ROC): Motivation, Definition, Techniques, and Case Studies , 2002 .

[12]  Prashant J. Shenoy,et al.  Cello: A Disk Scheduling Framework for Next Generation Operating Systems* , 1998, SIGMETRICS '98/PERFORMANCE '98.

[13]  Arif Merchant,et al.  Capacity planning with phased workloads , 1998, WOSP '98.

[14]  Prashant J. Shenoy,et al.  Bandwidth allocation in a self-managing multimedia file server , 2001, MULTIMEDIA '01.

[15]  Ernst Nordström,et al.  A Reinforcement Learning Scheme for Adaptive Link Allocation in ATM Networks , 1999 .

[16]  David A. Patterson,et al.  ISTORE: introspective storage for data-intensive network services , 1999, Proceedings of the Seventh Workshop on Hot Topics in Operating Systems.

[17]  Richard S. Sutton,et al.  Introduction to Reinforcement Learning , 1998 .

[18]  Chenyang Lu,et al.  Proceedings of the Fast 2002 Conference on File and Storage Technologies Aqueduct: Online Data Migration with Performance Guarantees , 2022 .

[19]  Willy Zwaenepoel,et al.  Scalable Content-aware Request Distribution in Cluster-based Network Servers , 2000, USENIX ATC, General Track.

[20]  Eric Anderson,et al.  Proceedings of the Fast 2002 Conference on File and Storage Technologies Hippodrome: Running Circles around Storage Administration , 2022 .

[21]  Richard S. Sutton,et al.  Reinforcement Learning: An Introduction , 1998, IEEE Trans. Neural Networks.

[22]  Arif Merchant,et al.  Minerva: An automated resource provisioning tool for large-scale storage systems , 2001, TOCS.