In today’s relational Database-as-a-Service providers such as Microsoft Azure SQL Database, resources of a single database server are shared among workloads from multiple tenants. This multi-tenancy enables cost reduction for the cloud service provider which it can pass on as savings to the tenants. However, resource sharing can adversely affect a tenant’s performance due to resource demands of other tenants’ workloads. Service providers today do not provide any assurances to a tenant in terms of isolating its performance from other co-located tenants.
SQLVM is a mechanism for performance isolation via a promise of reservation of key database server resources, such as CPU, I/O, and memory for each tenant. One key challenge is supporting this abstraction within the database server process without statically allocating resources to tenants while scaling to large numbers of tenants. Another challenge is to devise low-overhead metering mechanisms to objectively establish accountability if a resource reservation is not met. SQLVM can be viewed as a building block upon which higher-level performance assurances (e.g., at the workload level) can be designed.
Technology developed in the SQLVM project formed the basis of CPU and I/O performance-isolation capabilities in multi-tenant Microsoft Azure SQL Database. The new Service Tiers and Performance Levels, made generally available in September 2014, relies on these capabilities to enforce improved performance levels. New I/O Resource Governor functionality based on this technology has shipped with SQL Server 2014.
- Sudipto Das, Feng Li, Vivek R. Narasayya, and Arnd Christian König, Automated Demand-driven Resource Scaling in Relational Database-as-a-Service, in ACM International Conference on Management of Data (SIGMOD) 2016, ACM – Association for Computing Machinery, June 2016.
- Vivek Narasayya, Ishai Menache, Mohit Singh, Feng Li, Manoj Syamala, and Surajit Chaudhuri, Sharing buffer pool memory in multi-tenant relational database-as-a-service, in Proceedings of the VLDB Endowment, vol. 8, no. 7, pp. 726–737, VLDB Endowment, August 2015.
- Sudipto Das, Vivek Narasayya, Feng Li, and Manoj Syamala, CPU Sharing Techniques for Performance Isolation in Multi-tenant Relational Database-as-a-Service, in Proceedings of the VLDB Endowment, Very Large Data Bases Endowment Inc., September 2013.
- Vivek Narasayya, Sudipto Das, Manoj Syamala, Surajit Chaudhuri, Feng Li, and Hyunjung Park, A Demonstration of SQLVM: Performance Isolation in Multi-Tenant Relational Database-as-a-Service, in SIGMOD 2013, ACM International Conference on Management of Data, June 2013.
- Vivek Narasayya, Sudipto Das, Manoj Syamala, Badrish Chandramouli, and Surajit Chaudhuri, SQLVM: Performance Isolation in Multi-Tenant Relational Database-as-a-Service, in CIDR 2013, 6th Biennial Conference on Innovative Data Systems Research, January 2013.