Predictive Provisioning: Efficiently Anticipating Usage in Azure SQL Database - Viswanathan, Lalitha; Chandra, Bikash; Lang, Willis; Ramachandra, Karthik; Patel, Jignesh M.; Kalhan, Ajay; Dewitt, David J.; Halverson, Alan (International Conference on Data Engineering, 2017)
Over-booking cloud resources is an effective way to increase the cost efficiency of a cluster, and is being studied within Microsoft for the Azure SQL Database service. A key challenge is to strike the right balance between the potentially conflicting goals of optimizing for resource allocation efficiency and positive user experience. Understanding when cloud database customers use their database instances and when they are idle can allow one to successfully balance these two metrics. In our work, we formulate and evaluate production-feasible methods to develop idleness profiles for customer databases. Using one of the largest data center telemetry datasets, namely Azure SQL Database telemetry across multiple data centers, we show that our schemes are effective in predicting future patterns of database usage. Our methods are practical and improve the efficiency of clusters while managing customer expectations.