ABSTRACT
Consolidation of multiple databases on the same server allows service providers to save significant resources because many production database servers are often under-utilized. Recent research investigates the problem of minimizing the number of servers required to host a set of tenants when the working sets of tenants are kept in main memory (e.g., in-memory OLAP workloads, or OLTP workloads), thus the memory assigned to each tenant, as well as the I/O bandwidth and CPU time, are all dictated by the working set size of the tenant. Other research investigates the reverse problem when the number of servers is fixed, but the amount of resources allocated to different tenants on the same server needs to be configured to optimize a cost function. In this paper we investigate the problem when neither the number of servers nor the amount of resources allocated to each tenant are fixed. This problem arises when consolidating OLAP workloads of tenants whose service-level agreements (SLAs) allow for queries to be answered from disk. We study the trade-off between the amount of memory and the I/O bandwidth assigned to OLAP workloads, and develop a principled approach for allocating resources to tenants in a manner that minimizes the total number of servers required to host all tenants while satisfying the SLA of each tenant. We then explain how we modified InnoDB, the storage engine of MySQL, to be able to change the amount of resources allocated to each tenant at runtime, so as to account for fluctuations in workloads. Finally, we evaluate our approach experimentally using the TPC-H benchmark to demonstrate its effectiveness and accuracy.
- http://www.salesforce.com.Google Scholar
- K. Abhishek, S. Leyffer, and J. Linderoth. Filmint: An outer approximation-based solver for convex mixed-integer nonlinear programs. INFORMS Journal on computing, 22(4):555--567, 2010. Google ScholarDigital Library
- M. Armbrust, A. Fox, R. Griffith, A. D. Joseph, R. H. Katz, A. Konwinski, G. Lee, D. A. Patterson, A. Rabkin, and M. Zaharia. Above the clouds: A berkeley view of cloud computing. Technical report, University of California at Berkeley, 2009.Google Scholar
- S. Aulbach, T. Grust, D. Jacobs, A. Kemper, and J. Rittinger. Multi-tenant databases for software as a service: schema-mapping techniques. In SIGMOD, 2008. Google ScholarDigital Library
- C. Chekuri and S. Khanna. On multi-dimensional packing problems. In Proceedings of the tenth annual ACM-SIAM symposium on Discrete algorithms, SODA '99, pages 185--194, Philadelphia, PA, USA, 1999. Society for Industrial and Applied Mathematics. Google ScholarDigital Library
- C. Curino, E. P. Jones, S. Madden, and H. Balakrishnan. Workload-aware database monitoring and consolidation. In SIGMOD, 2011. Google ScholarDigital Library
- A. J. Elmore, S. Das, D. Agrawal, and A. El Abbadi. Who's driving this cloud? towards efficient migration for elastic and autonomic multitenant databases. Technical Report CS-2010-05, UCSB, 2010.Google Scholar
- M. R. Garey, R. L. Graham, D. S. Johnson, and Andrew. Resource constrained scheduling as generalized bin packing. Journal of Combinatorial Theory, 21:257--298, 1976.Google ScholarCross Ref
- G. Graefe. The five-minute rule twenty years later, and how flash memory changes the rules. In Proceedings of the 3rd international workshop on Data management on new hardware, DaMoN '07, pages 6:1--6:9, 2007. Google ScholarDigital Library
- J. Gray and G. Graefe. The five-minute rule ten years later, and other computer storage rules of thumb. SIGMOD Rec., 26(4):63--68, Dec. 1997. Google ScholarDigital Library
- J. Gray and F. Putzolu. The 5 minute rule for trading memory for disc accesses and the 10 byte rule for trading memory for cpu time. In SIGMOD, 1987. Google ScholarDigital Library
- H. Hacıgümüş, J. Tatemura, W.-P. Hsiung, H. J. Moon, O. Po, A. Sawires, Y. Chi, and H. Jafarpour. CloudDB: One size fits all revived. In SERVICES, 2010.Google Scholar
- M. Hui, D. Jiang, G. Li, and Y. Zhou. Supporting database applications as a service. In ICDE, 2009. Google ScholarDigital Library
- D. Jacobs and S. Aulbach. Ruminations on multi-tenant databases. In BTW, pages 514--521, 2007.Google Scholar
- F. Li, M. Hadjieleftheriou, G. Kollios, and L. Reyzin. Dynamic authenticated index structures for outsourced databases. In SIGMOD, 2006. Google ScholarDigital Library
- B. Reinwald. Database support for multi-tenant applications. In IEEE Workshop on Information and Software as Services, 2010.Google Scholar
- J. Schaffner, B. Eckart, D. Jacobs, C. Schwarz, H. Plattner, and A. Zeier. Predicting in-memory database performance for automating cluster management tasks. In ICDE, 2011. Google ScholarDigital Library
- Z. Shen, S. Subbiah, X. Gu, and J. Wilkes. Cloudscale: elastic resource scaling for multi-tenant cloud systems. In Proceedings of the 2nd ACM Symposium on Cloud Computing, SOCC '11, pages 5:1--5:14, 2011. Google ScholarDigital Library
- R. Sion. Query execution assurance for outsourced databases. In VLDB, 2005. Google ScholarDigital Library
- A. A. Soror, U. F. Minhas, A. Aboulnaga, K. Salem, P. Kokosielis, and S. Kamath. Automatic virtual machine configuration for database workloads. In SIGMOD, 2008. Google ScholarDigital Library
- P. Xiong, Y. Chi, S. Zhu, H. J. Moon, C. Pu, and H. Hacigumus. Intelligent management of virtualized resources for database systems in cloud environment. In ICDE, 2011. Google ScholarDigital Library
Index Terms
- CloudOptimizer: multi-tenancy for I/O-bound OLAP workloads
Recommendations
A taxonomic survey on load balancing in cloud
Cloud computing aims to provide seamless computing services to the millions of consumers across the world. Datacenter, the engine of cloud computing, hosts large scale computing resources (hardware and software) at the backend of cloud. In the recent ...
A tenant-based resource allocation model for scaling Software-as-a-Service applications over cloud computing infrastructures
Cloud computing provides on-demand access to computational resources which together with pay-per-use business models, enable application providers seamlessly scaling their services. Cloud computing infrastructures allow creating a variable number of ...
Comments