Adaptive Performance Isolation Middleware for Multi-tenant SaaS

SaaS providers typically adopt a multi-tenant architecture to leverage economies of scale. By maximizing the sharing of resources among multiple customer organizations, called tenants, operational costs are reduced. However, this high degree of resource sharing complicates performance isolation between tenants: different tenants have different requirements regarding performance and ensuring compliance with these co-existing and competing performance constraints within a shared application remains a challenge. This paper presents an adaptive middleware that enables SaaS providers to efficiently enforce different and competing performance constraints in multi-tenant SaaS applications. It can manage a combination of performance constraints in terms of latency, throughput and deadlines at a fine-grained level, and enables rapid response on changing circumstances, while preserving the resource usage efficiency of application-level multi-tenancy. We focus on service-oriented applications that asynchronously process small units of work, as supported by many cloud platforms via queues or simple workflows (e.g. Google App Engine, Amazon AWS). We have implemented a prototype on top of a private cloud platform, based on OpenStack and JBoss. The evaluation shows the effectiveness and flexibility of our solution in the context of an industry-relevant SaaS application, with minimal performance overhead.

[1]  David P. Anderson,et al.  BOINC: a system for public-resource computing and storage , 2004, Fifth IEEE/ACM International Workshop on Grid Computing.

[2]  Ming Mao,et al.  A Performance Study on the VM Startup Time in the Cloud , 2012, 2012 IEEE Fifth International Conference on Cloud Computing.

[3]  Wouter Joosen,et al.  A Middleware Layer for Flexible and Cost-Efficient Multi-tenant Applications , 2011, Middleware.

[4]  Bo Gao,et al.  A Framework for Native Multi-Tenancy Application Development and Management , 2007, The 9th IEEE International Conference on E-Commerce Technology and The 4th IEEE International Conference on Enterprise Computing, E-Commerce and E-Services (CEC-EEE 2007).

[5]  Xiao Zhang,et al.  CPI2: CPU performance isolation for shared compute clusters , 2013, EuroSys '13.

[6]  Cor-Paul Bezemer,et al.  Multi-tenant SaaS applications: maintenance dream or nightmare? , 2010, IWPSE-EVOL '10.

[7]  Douglas Thain,et al.  Distributed computing in practice: the Condor experience , 2005, Concurr. Pract. Exp..

[8]  Eugene Ciurana,et al.  Google App Engine , 2009 .

[9]  Rajkumar Buyya,et al.  The Aneka platform and QoS-driven resource provisioning for elastic applications on hybrid Clouds , 2012, Future Gener. Comput. Syst..

[10]  Valérie Issarny,et al.  QoS-Aware Service Composition in Dynamic Service Oriented Environments , 2009, Middleware.

[11]  Yanbo Han,et al.  Feedback-Control-Based Performance Regulation for Multi-Tenant Applications , 2009, 2009 15th International Conference on Parallel and Distributed Systems.

[12]  Rouven Krebs,et al.  Metrics and techniques for quantifying performance isolation in cloud environments , 2012, QoSA '12.

[13]  Frank Leymann,et al.  Runtime Prediction of Service Level Agreement Violations for Composite Services , 2009, ICSOC/ServiceWave Workshops.

[14]  Jeffrey O. Kephart,et al.  The Vision of Autonomic Computing , 2003, Computer.

[15]  Christof Momm,et al.  A Combined Workload Planning Approach for Multi-tenant Business Applications , 2011, 2011 IEEE 35th Annual Computer Software and Applications Conference Workshops.

[16]  Sanjay Chaudhary,et al.  Application Performance Isolation in Virtualization , 2009, 2009 IEEE International Conference on Cloud Computing.

[17]  Anne H. H. Ngu,et al.  QoS-aware middleware for Web services composition , 2004, IEEE Transactions on Software Engineering.

[18]  A. Zahariev Google App Engine , 2009 .

[19]  Ying Chen,et al.  SPIN: Service Performance Isolation Infrastructure in Multi-tenancy Environment , 2008, ICSOC.

[20]  Prashant Malik,et al.  Cassandra: a decentralized structured storage system , 2010, OPSR.

[21]  Yong Zhao,et al.  Falkon: a Fast and Light-weight tasK executiON framework , 2007, Proceedings of the 2007 ACM/IEEE Conference on Supercomputing (SC '07).

[22]  Luiz Fernando Bittencourt,et al.  HCOC: a cost optimization algorithm for workflow scheduling in hybrid clouds , 2011, Journal of Internet Services and Applications.

[23]  Wouter Joosen,et al.  Towards performance isolation in multi-tenant SaaS applications , 2012, MW4NG '12.

[24]  Anees Shaikh,et al.  Performance Isolation and Fairness for Multi-Tenant Cloud Storage , 2012, OSDI.

[25]  Premkumar T. Devanbu,et al.  GlueQoS: middleware to sweeten quality-of-service policy interactions , 2004, Proceedings. 26th International Conference on Software Engineering.

[26]  Yong Zhao,et al.  Cloud Computing and Grid Computing 360-Degree Compared , 2008, GCE 2008.

[27]  Amin Vahdat,et al.  Enforcing Performance Isolation Across Virtual Machines in Xen , 2006, Middleware.