Flexible Resource Allocation for Relational Database-as-a-Service - Arora, Pankaj; Chaudhuri, Surajit; Das, Sudipto; Dong, Junfeng; George, Cyril; Kalhan, Ajay; König, Arnd Christian; Lang, Willis; Li, Changsong; Li, Feng; Liu, Jiaqi; Maas, Lukas M.; et al. (49th International Conference on Very Large Data Bases, 2023)
Oversubscription is an essential cost management strategy for cloud database providers, and its importance is magnified by the emerging paradigm of serverless databases. In contrast to general purpose techniques used for oversubscription in hypervisors, operating systems and cluster managers, we develop techniques that leverage our understanding of how DBMSs use resources and how resource allocations impact database performance. Our techniques are designed to flexibly redistribute resources across database tenants at the node and cluster levels with low overhead. We have implemented our techniques in a commercial cloud database service: Azure SQL Database. Experiments using microbenchmarks, industry-standard benchmarks and real-world resource usage traces show that using our approach, it is possible to tightly control the impact on database performance even with a relatively high degree of oversubscription.