{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2026,1,14]],"date-time":"2026-01-14T14:55:43Z","timestamp":1768402543413,"version":"3.49.0"},"reference-count":39,"publisher":"Association for Computing Machinery (ACM)","issue":"2","content-domain":{"domain":[],"crossmark-restriction":false},"short-container-title":["Proc. VLDB Endow."],"published-print":{"date-parts":[[2020,10]]},"abstract":"<jats:p>Microsoft Azure is dedicated to guarantee high quality of service to its customers, in particular, during periods of high customer activity, while controlling cost. We employ a Data Science (DS) driven solution to predict user load and leverage these predictions to optimize resource allocation. To this end, we built the Seagull infrastructure that processes per-server telemetry, validates the data, trains and deploys ML models. The models are used to predict customer load per server (24h into the future), and optimize service operations. Seagull continually re-evaluates accuracy of predictions, fallback to previously known good models and triggers alerts as appropriate. We deployed this infrastructure in production for PostgreSQL and MySQL servers across all Azure regions, and applied it to the problem of scheduling server backups during low-load time. This minimizes interference with user-induced load and improves customer experience.<\/jats:p>","DOI":"10.14778\/3425879.3425886","type":"journal-article","created":{"date-parts":[[2020,11,25]],"date-time":"2020-11-25T02:45:23Z","timestamp":1606272323000},"page":"154-162","source":"Crossref","is-referenced-by-count":24,"title":["Seagull"],"prefix":"10.14778","volume":"14","author":[{"given":"Olga","family":"Poppe","sequence":"first","affiliation":[{"name":"Microsoft"}]},{"given":"Tayo","family":"Amuneke","sequence":"additional","affiliation":[{"name":"Microsoft"}]},{"given":"Dalitso","family":"Banda","sequence":"additional","affiliation":[{"name":"Microsoft"}]},{"given":"Aritra","family":"De","sequence":"additional","affiliation":[{"name":"Microsoft"}]},{"given":"Ari","family":"Green","sequence":"additional","affiliation":[{"name":"Microsoft"}]},{"given":"Manon","family":"Knoertzer","sequence":"additional","affiliation":[{"name":"Microsoft"}]},{"given":"Ehi","family":"Nosakhare","sequence":"additional","affiliation":[{"name":"Microsoft"}]},{"given":"Karthik","family":"Rajendran","sequence":"additional","affiliation":[{"name":"Microsoft"}]},{"given":"Deepak","family":"Shankargouda","sequence":"additional","affiliation":[{"name":"Microsoft"}]},{"given":"Meina","family":"Wang","sequence":"additional","affiliation":[{"name":"Microsoft"}]},{"given":"Alan","family":"Au","sequence":"additional","affiliation":[{"name":"Microsoft"}]},{"given":"Carlo","family":"Curino","sequence":"additional","affiliation":[{"name":"Microsoft"}]},{"given":"Qun","family":"Guo","sequence":"additional","affiliation":[{"name":"Microsoft"}]},{"given":"Alekh","family":"Jindal","sequence":"additional","affiliation":[{"name":"Microsoft"}]},{"given":"Ajay","family":"Kalhan","sequence":"additional","affiliation":[{"name":"Microsoft"}]},{"given":"Morgan","family":"Oslake","sequence":"additional","affiliation":[{"name":"Microsoft"}]},{"given":"Sonia","family":"Parchani","sequence":"additional","affiliation":[{"name":"Microsoft"}]},{"given":"Vijay","family":"Ramani","sequence":"additional","affiliation":[{"name":"Microsoft"}]},{"given":"Raj","family":"Sellappan","sequence":"additional","affiliation":[{"name":"Microsoft"}]},{"given":"Saikat","family":"Sen","sequence":"additional","affiliation":[{"name":"Microsoft"}]},{"given":"Sheetal","family":"Shrotri","sequence":"additional","affiliation":[{"name":"Microsoft"}]},{"given":"Soundararajan","family":"Srinivasan","sequence":"additional","affiliation":[{"name":"Microsoft"}]},{"given":"Ping","family":"Xia","sequence":"additional","affiliation":[{"name":"Microsoft"}]},{"given":"Shize","family":"Xu","sequence":"additional","affiliation":[{"name":"Microsoft"}]},{"given":"Alicia","family":"Yang","sequence":"additional","affiliation":[{"name":"Microsoft"}]},{"given":"Yiwen","family":"Zhu","sequence":"additional","affiliation":[{"name":"Microsoft"}]}],"member":"320","published-online":{"date-parts":[[2020,11,16]]},"reference":[{"key":"e_1_2_1_1_1","unstructured":"2020. Application Insights. https:\/\/docs.microsoft.com\/en-us\/azure\/azure-monitor\/app\/app-insights-overview.  2020. Application Insights. https:\/\/docs.microsoft.com\/en-us\/azure\/azure-monitor\/app\/app-insights-overview."},{"key":"e_1_2_1_2_1","unstructured":"2020. ARIMA. https:\/\/pypi.org\/project\/pmdarima\/.  2020. ARIMA. https:\/\/pypi.org\/project\/pmdarima\/."},{"key":"e_1_2_1_3_1","unstructured":"2020. Azure Data Lake Analytics. https:\/\/azure.microsoft.com\/en-us\/services\/data-lake-analytics.  2020. Azure Data Lake Analytics. https:\/\/azure.microsoft.com\/en-us\/services\/data-lake-analytics."},{"key":"e_1_2_1_4_1","unstructured":"2020. Azure ML. https:\/\/azure.microsoft.com\/en-us\/services\/machine-learning\/.  2020. Azure ML. https:\/\/azure.microsoft.com\/en-us\/services\/machine-learning\/."},{"key":"e_1_2_1_5_1","unstructured":"2020. Cosmos DB. https:\/\/docs.microsoft.com\/en-us\/azure\/cosmos-db\/introduction.  2020. Cosmos DB. https:\/\/docs.microsoft.com\/en-us\/azure\/cosmos-db\/introduction."},{"key":"e_1_2_1_6_1","unstructured":"2020. Dask. https:\/\/dask.org\/.  2020. Dask. https:\/\/dask.org\/."},{"key":"e_1_2_1_7_1","unstructured":"2020. GluonTS. https:\/\/gluon-ts.mxnet.io\/.  2020. GluonTS. https:\/\/gluon-ts.mxnet.io\/."},{"key":"e_1_2_1_8_1","unstructured":"2020. MLflow. https:\/\/mlflow.org\/.  2020. MLflow. https:\/\/mlflow.org\/."},{"key":"e_1_2_1_9_1","unstructured":"2020. NimbusML. https:\/\/docs.microsoft.com\/en-us\/python\/api\/nimbusml\/nimbusml.timeseries.ssaforecaster.  2020. NimbusML. https:\/\/docs.microsoft.com\/en-us\/python\/api\/nimbusml\/nimbusml.timeseries.ssaforecaster."},{"key":"e_1_2_1_10_1","unstructured":"2020. Prophet. https:\/\/facebook.github.io\/prophet\/.  2020. Prophet. https:\/\/facebook.github.io\/prophet\/."},{"key":"e_1_2_1_11_1","doi-asserted-by":"publisher","DOI":"10.5555\/3026877.3026899"},{"key":"e_1_2_1_12_1","volume-title":"Steven Euijong Whang, and Martin Zinkevich","author":"Breck Eric","year":"2019"},{"key":"e_1_2_1_13_1","doi-asserted-by":"publisher","DOI":"10.1109\/TCC.2014.2350475"},{"key":"e_1_2_1_14_1","doi-asserted-by":"publisher","DOI":"10.1145\/3132747.3132772"},{"key":"e_1_2_1_15_1","volume-title":"Jordan","author":"Crankshaw Daniel","year":"2015"},{"key":"e_1_2_1_16_1","doi-asserted-by":"publisher","DOI":"10.5555\/3154630.3154681"},{"key":"e_1_2_1_17_1","doi-asserted-by":"publisher","DOI":"10.1145\/1989323.1989357"},{"key":"e_1_2_1_18_1","doi-asserted-by":"publisher","DOI":"10.1145\/2882903.2903733"},{"key":"e_1_2_1_19_1","doi-asserted-by":"publisher","DOI":"10.1145\/2654822.2541941"},{"key":"e_1_2_1_20_1","doi-asserted-by":"publisher","DOI":"10.14778\/3137765.3137786"},{"key":"e_1_2_1_21_1","volume-title":"PRESS: PRedictive Elastic ReSource Scaling for cloud systems. In TNSM. 9--16.","author":"Gong Zhenhuan","year":"2010"},{"key":"e_1_2_1_22_1","doi-asserted-by":"publisher","DOI":"10.1016\/j.future.2011.05.027"},{"key":"e_1_2_1_23_1","doi-asserted-by":"publisher","DOI":"10.1145\/2647868.2654889"},{"key":"e_1_2_1_24_1","volume-title":"Workload Characterization and Prediction in the Cloud: A Multiple Time Series Approach. In IEEE Network Operations and Management Symposium. 1287--1294","author":"Khan Arijit","year":"2012"},{"key":"e_1_2_1_25_1","doi-asserted-by":"publisher","DOI":"10.1145\/3038912.3052707"},{"key":"e_1_2_1_26_1","doi-asserted-by":"publisher","DOI":"10.14778\/3007263.3007264"},{"key":"e_1_2_1_27_1","doi-asserted-by":"publisher","DOI":"10.1145\/1879141.1879143"},{"key":"e_1_2_1_28_1","doi-asserted-by":"publisher","DOI":"10.5555\/2946645.2946679"},{"key":"e_1_2_1_29_1","doi-asserted-by":"publisher","DOI":"10.1145\/1773394.1773400"},{"key":"e_1_2_1_30_1","doi-asserted-by":"publisher","DOI":"10.5555\/2535461.2535489"},{"key":"e_1_2_1_31_1","doi-asserted-by":"publisher","DOI":"10.1145\/1519065.1519068"},{"key":"e_1_2_1_32_1","doi-asserted-by":"publisher","DOI":"10.1145\/3183713.3190651"},{"key":"e_1_2_1_33_1","volume-title":"Qun Guo, Alekh Jindal, Ajay Kalhan, Morgan Oslake, Sonia Parchani, Vijay Ramani, Raj Sellappan, Saikat Sen, Sheetal Shrotri, Soundararajan Srinivasan, Ping Xia, Shize Xu, Alicia Yang, and Yiwen Zhu.","author":"Poppe Olga","year":"2020"},{"key":"e_1_2_1_34_1","doi-asserted-by":"publisher","DOI":"10.1109\/CLOUD.2011.42"},{"key":"e_1_2_1_35_1","doi-asserted-by":"publisher","DOI":"10.1145\/2038916.2038921"},{"key":"e_1_2_1_36_1","doi-asserted-by":"publisher","DOI":"10.1145\/3183713.3190650"},{"key":"e_1_2_1_37_1","doi-asserted-by":"publisher","DOI":"10.5555\/1496950.1496966"},{"key":"e_1_2_1_38_1","volume-title":"Predictive Provisioning: Efficiently Anticipating Usage in Azure SQL Database. In ICDE. 1111--1116.","author":"Viswanathan Lalitha","year":"2017"},{"key":"e_1_2_1_39_1","doi-asserted-by":"publisher","DOI":"10.1145\/2508148.2485974"}],"container-title":["Proceedings of the VLDB Endowment"],"original-title":[],"language":"en","link":[{"URL":"https:\/\/dl.acm.org\/doi\/pdf\/10.14778\/3425879.3425886","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2022,12,28]],"date-time":"2022-12-28T11:06:31Z","timestamp":1672225591000},"score":1,"resource":{"primary":{"URL":"https:\/\/dl.acm.org\/doi\/10.14778\/3425879.3425886"}},"subtitle":["an infrastructure for load prediction and optimized resource allocation"],"short-title":[],"issued":{"date-parts":[[2020,10]]},"references-count":39,"journal-issue":{"issue":"2","published-print":{"date-parts":[[2020,10]]}},"alternative-id":["10.14778\/3425879.3425886"],"URL":"https:\/\/doi.org\/10.14778\/3425879.3425886","relation":{},"ISSN":["2150-8097"],"issn-type":[{"value":"2150-8097","type":"print"}],"subject":[],"published":{"date-parts":[[2020,10]]}}}