Argon: Performance Insulation for Shared Storage Servers

Services that share a storage system should realize the same efficiency, within their share of time, as when they have the system to themselves. The Argon storage server explicitly manages its resources to bound the inefficiency arising from inter-service disk and cache interference in traditional systems. The goal is to provide each service with at least a configured fraction (e.g., 0.9) of the throughput it achieves when it has the storage server to itself, within its share of the server--a service allocated 1/nth of a server should get nearly 1/nth (or more) of the throughput it would get alone. Argon uses automaticallyconfigured prefetch/write-back sizes to insulate streaming efficiency from disk seeks introduced by competing workloads. It uses explicit disk time quanta to do the same for non-streaming workloads with internal locality. It partitions the cache among services, based on their observed access patterns, to insulate the hit rate each achieves from the access patterns of others. Experiments show that, combined, these mechanisms and Argon's automatic configuration of each achieve the insulation goal.

[1]  Prashant J. Shenoy,et al.  Sharc: managing CPU and network bandwidth in shared clusters , 2004, IEEE Transactions on Parallel and Distributed Systems.

[2]  Hector Garcia-Molina,et al.  Scheduling Real-Time Transactions with Disk Resident Data , 1989, VLDB.

[3]  Wei Jin,et al.  Interposed proportional sharing for a storage service utility , 2004, SIGMETRICS '04/Performance '04.

[4]  Michael L. Scott,et al.  Aggressive Prefetching: An Idea Whose Time Has Come , 2005, HotOS.

[5]  Gregory R. Ganger,et al.  Informed data distribution selection in a self-predicting storage system , 2006, 2006 IEEE International Conference on Autonomic Computing.

[6]  Peter Druschel,et al.  Resource containers: a new facility for resource management in server systems , 1999, OSDI '99.

[7]  Gregory R. Ganger,et al.  Object-based storage , 2003, IEEE Commun. Mag..

[8]  Joseph D. Touch,et al.  Idletime scheduling with preemption intervals , 2005, SOSP '05.

[9]  Willy Zwaenepoel,et al.  Cluster reserves: a mechanism for resource management in cluster-based network servers , 2000, SIGMETRICS '00.

[10]  Xiaoyun Zhu,et al.  Triage: performance isolation and differentiation for storage systems , 2004, Twelfth IEEE International Workshop on Quality of Service, 2004. IWQOS 2004..

[11]  Kai Li,et al.  Implementation and performance of application-controlled file caching , 1994, OSDI '94.

[12]  Banu Özden,et al.  The Eclipse Operating System: Providing Quality of Service via Reservation Domains , 1998, USENIX ATC.

[13]  Wei Jin,et al.  USENIX Association Proceedings of USITS ’ 03 : 4 th USENIX Symposium on Internet Technologies and Systems , 2003 .

[14]  Jonathan M. Smith,et al.  USENIX Association , 2000 .

[15]  Kai Li,et al.  Application-Controlled File Caching Policies , 1994, USENIX Summer.

[16]  Gregory R. Ganger,et al.  Track-Aligned Extents: Matching Access Patterns to Disk Drive Characteristics , 2002, FAST.

[17]  Carl A. Waldspurger,et al.  Memory resource management in VMware ESX server , 2002, OSDI '02.

[18]  David J. DeWitt,et al.  An evaluation of buffer management strategies for relational database systems , 1986, Algorithmica.

[19]  Tao Yang,et al.  Demand-driven service differentiation in cluster-based network servers , 2001, Proceedings IEEE INFOCOM 2001. Conference on Computer Communications. Twentieth Annual Joint Conference of the IEEE Computer and Communications Society (Cat. No.01CH37213).

[20]  Doug Shepherd,et al.  The Design of a Storage Server for Continuous Media , 1993, Comput. J..

[21]  Peter Druschel,et al.  Anticipatory scheduling: a disk scheduling framework to overcome deceptive idleness in synchronous I/O , 2001, SOSP.

[22]  Anastasia Ailamaki,et al.  Lachesis: Robust Database Storage Management Based on Device-specific Performance Characteristics , 2003, VLDB.

[23]  Steven M. Hand,et al.  Self-paging in the Nemesis operating system , 1999, OSDI '99.

[24]  Julio César López-Hernández,et al.  Stardust: tracking activity in a distributed storage system , 2006, SIGMETRICS '06/Performance '06.

[25]  Amin Vahdat,et al.  Managing energy and server resources in hosting centers , 2001, SOSP.

[26]  Jim Zelenka,et al.  Informed prefetching and caching , 1995, SOSP.

[27]  Kang G. Shin,et al.  Virtual Services: A New Abstraction for Server Consolidation , 2000, USENIX Annual Technical Conference, General Track.

[28]  Benny Rochwerger,et al.  Oceano-SLA based management of a computing utility , 2001, 2001 IEEE/IFIP International Symposium on Integrated Network Management Proceedings. Integrated Network Management VII. Integrated Management Strategies for the New Millennium (Cat. No.01EX470).

[29]  Arif Merchant,et al.  Façade: Virtual Storage Devices with Performance Guarantees , 2003, FAST.

[30]  Jian Xu,et al.  Performance virtualization for large-scale storage systems , 2003, 22nd International Symposium on Reliable Distributed Systems, 2003. Proceedings..

[31]  Christos Faloutsos,et al.  Flexible and Adaptable Buffer Management Techniques for Database Management Systems , 1995, IEEE Trans. Computers.

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

[33]  Ragunathan Rajkumar,et al.  Real-time filesystems. Guaranteeing timing constraints for disk accesses in RT-Mach , 1997, Proceedings Real-Time Systems Symposium.

[34]  Steve R. Kleiman,et al.  Extent-like Performance from a UNIX File System , 1991, USENIX Winter.

[35]  Timothy Roscoe,et al.  Resource overbooking and application profiling in shared hosting platforms , 2002, OSDI '02.

[36]  Banu Özden,et al.  Disk scheduling with quality of service guarantees , 1999, Proceedings IEEE International Conference on Multimedia Computing and Systems.

[37]  Anoop Gupta,et al.  Performance isolation: sharing and isolation in shared-memory multiprocessors , 1998, ASPLOS VIII.

[38]  Gregory R. Ganger,et al.  Ursa minor: versatile cluster-based storage , 2005, FAST'05.

[39]  Margo Seltzer,et al.  Proccedings of the 7th conference on File and storage technologies , 2009 .

[40]  Richard A. Golding,et al.  Zygaria: Storage Performance as a Managed Resource , 2006, 12th IEEE Real-Time and Embedded Technology and Applications Symposium (RTAS'06).

[41]  Jay K. Strosnider,et al.  Disk scheduling for multimedia data streams , 1994, Electronic Imaging.