{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2026,3,22]],"date-time":"2026-03-22T05:27:42Z","timestamp":1774157262631,"version":"3.50.1"},"reference-count":69,"publisher":"Association for Computing Machinery (ACM)","issue":"4","license":[{"start":{"date-parts":[[2023,10,14]],"date-time":"2023-10-14T00:00:00Z","timestamp":1697241600000},"content-version":"vor","delay-in-days":0,"URL":"https:\/\/www.acm.org\/publications\/policies\/copyright_policy#Background"}],"funder":[{"name":"MUR Missione 4 Componente 2 Investimento 1.4: Potenziamento strutture di ricerca e creazione di \u201ccampioni nazionali\u201d di R&S","award":["M4C2-19"],"award-info":[{"award-number":["M4C2-19"]}]}],"content-domain":{"domain":["dl.acm.org"],"crossmark-restriction":true},"short-container-title":["ACM Trans. Auton. Adapt. Syst."],"published-print":{"date-parts":[[2023,12,31]]},"abstract":"<jats:p>Data Stream Processing (DSP) applications analyze data flows in near real-time by means of operators, which process and transform incoming data. Operators handle high data rates running parallel replicas across multiple processors and hosts. To guarantee consistent performance without wasting resources in the face of variable workloads, auto-scaling techniques have been studied to adapt operator parallelism at run-time. However, most of the effort has been spent under the assumption of homogeneous computing infrastructures, neglecting the complexity of modern environments.<\/jats:p><jats:p>We consider the problem of deciding both how many operator replicas should be executed and which types of computing nodes should be acquired. We devise heterogeneity-aware policies by means of a two-layered hierarchy of controllers. While application-level components steer the adaptation process for whole applications, aiming to guarantee user-specified requirements, lower-layer components control auto-scaling of single operators. We tackle the fundamental challenge of performance and workload uncertainty, exploiting Bayesian optimization (BO) and reinforcement learning (RL) to devise policies. The evaluation shows that our approach is able to meet users\u2019 requirements in terms of response time and adaptation overhead, while minimizing the cost due to resource usage, outperforming state-of-the-art baselines. We also demonstrate how partial model information is exploited to reduce training time for learning-based controllers.<\/jats:p>","DOI":"10.1145\/3597435","type":"journal-article","created":{"date-parts":[[2023,5,16]],"date-time":"2023-05-16T12:05:15Z","timestamp":1684238715000},"page":"1-44","update-policy":"https:\/\/doi.org\/10.1145\/crossmark-policy","source":"Crossref","is-referenced-by-count":18,"title":["Hierarchical Auto-scaling Policies for Data Stream Processing on Heterogeneous Resources"],"prefix":"10.1145","volume":"18","author":[{"ORCID":"https:\/\/orcid.org\/0000-0001-8233-4570","authenticated-orcid":false,"given":"Gabriele","family":"Russo Russo","sequence":"first","affiliation":[{"name":"University of Rome Tor Vergata, Italy"}]},{"ORCID":"https:\/\/orcid.org\/0000-0002-6870-7083","authenticated-orcid":false,"given":"Valeria","family":"Cardellini","sequence":"additional","affiliation":[{"name":"University of Rome Tor Vergata, Italy"}]},{"ORCID":"https:\/\/orcid.org\/0000-0002-7461-6276","authenticated-orcid":false,"given":"Francesco","family":"Lo Presti","sequence":"additional","affiliation":[{"name":"University of Rome Tor Vergata, Italy"}]}],"member":"320","published-online":{"date-parts":[[2023,10,14]]},"reference":[{"key":"e_1_3_3_2_2","first-page":"797","volume-title":"Proceedings of the IEEE CCGRID\u201921","author":"Agarwal Siddharth","year":"2021","unstructured":"Siddharth Agarwal, Maria Alejandra Rodriguez, and Rajkumar Buyya. 2021. A reinforcement learning approach to reduce serverless function cold start frequency. In Proceedings of the IEEE CCGRID\u201921. 797\u2013803. DOI:10.1109\/CCGrid51090.2021.00097"},{"key":"e_1_3_3_3_2","doi-asserted-by":"publisher","DOI":"10.1109\/INFOCOM41043.2020.9155363"},{"key":"e_1_3_3_4_2","doi-asserted-by":"publisher","DOI":"10.14778\/2824032.2824076"},{"key":"e_1_3_3_5_2","doi-asserted-by":"publisher","DOI":"10.1109\/TSC.2017.2711009"},{"key":"e_1_3_3_6_2","doi-asserted-by":"publisher","DOI":"10.1016\/j.jnca.2017.12.001"},{"key":"e_1_3_3_7_2","volume-title":"Feedback Systems: An Introduction for Scientists and Engineers (2nd. ed.)","author":"\u00c5str\u00f6m Karl Johan","year":"2021","unstructured":"Karl Johan \u00c5str\u00f6m and Richard M. Murray. 2021. Feedback Systems: An Introduction for Scientists and Engineers (2nd. ed.). Princeton University Press."},{"key":"e_1_3_3_8_2","first-page":"1","volume-title":"Proceedings of the ACM PODS\u201902","author":"Babcock Brian","year":"2002","unstructured":"Brian Babcock, Shivnath Babu, Mayur Datar, Rajeev Motwani, and Jennifer Widom. 2002. Models and issues in data stream systems. In Proceedings of the ACM PODS\u201902. 1\u201316. DOI:10.1145\/543613.543615"},{"key":"e_1_3_3_9_2","doi-asserted-by":"publisher","DOI":"10.1016\/j.future.2018.05.025"},{"key":"e_1_3_3_10_2","doi-asserted-by":"publisher","DOI":"10.1002\/cpe.4334"},{"key":"e_1_3_3_11_2","doi-asserted-by":"publisher","DOI":"10.1145\/3514496"},{"key":"e_1_3_3_12_2","first-page":"583","volume-title":"Proceedings of the HPCS\u201916","author":"Cardellini Valeria","year":"2016","unstructured":"Valeria Cardellini, Matteo Nardelli, and Dario Luzi. 2016. Elastic stateful stream processing in Storm. In Proceedings of the HPCS\u201916. IEEE, 583\u2013590. DOI:10.1109\/HPCSim.2016.7568388"},{"key":"e_1_3_3_13_2","doi-asserted-by":"publisher","DOI":"10.1109\/TPDS.2018.2846234"},{"key":"e_1_3_3_14_2","first-page":"61","volume-title":"Proceedings of the 25th Euromicro International Conference on Parallel, Distributed, and Network-based Processing, PDP\u201917","author":"Matteis Tiziano De","year":"2017","unstructured":"Tiziano De Matteis and Gabriele Mencagli. 2017. Elastic scaling for distributed latency-sensitive data stream operators. In Proceedings of the 25th Euromicro International Conference on Parallel, Distributed, and Network-based Processing, PDP\u201917. IEEE Computer Society, 61\u201368. DOI:10.1109\/PDP.2017.31"},{"key":"e_1_3_3_15_2","doi-asserted-by":"publisher","DOI":"10.1016\/j.jss.2016.08.037"},{"key":"e_1_3_3_16_2","first-page":"111","volume-title":"Proceedings of the 40th Euromicro Conference on Software Engineering and Advanced Applications","author":"Farahnakian Fahimeh","year":"2014","unstructured":"Fahimeh Farahnakian, Tapio Pahikkala, Pasi Liljeberg, Juha Plosila, and Hannu Tenhunen. 2014. Multi-agent based architecture for dynamic VM consolidation in cloud data centers. In Proceedings of the 40th Euromicro Conference on Software Engineering and Advanced Applications. 111\u2013118. DOI:10.1109\/SEAA.2014.56"},{"key":"e_1_3_3_17_2","doi-asserted-by":"publisher","DOI":"10.1145\/2463676.2465282"},{"key":"e_1_3_3_18_2","doi-asserted-by":"crossref","unstructured":"Marios Fragkoulis Paris Carbone Vasiliki Kalavri and Asterios Katsifodimos. 2023. A survey on the evolution of stream processing systems. arXiv:2008.00842. Retrieved from https:\/\/arxiv.org\/abs\/2008.00842.","DOI":"10.1007\/s00778-023-00819-8"},{"key":"e_1_3_3_19_2","unstructured":"Peter I. Frazier. 2018. A tutorial on Bayesian optimization. arXiv:1807.02811. Retrieved from https:\/\/arxiv.org\/abs\/1807.02811."},{"key":"e_1_3_3_20_2","doi-asserted-by":"publisher","DOI":"10.1109\/TNET.2017.2741969"},{"key":"e_1_3_3_21_2","doi-asserted-by":"publisher","DOI":"10.1109\/TPDS.2013.295"},{"key":"e_1_3_3_22_2","doi-asserted-by":"publisher","DOI":"10.1145\/3469440"},{"key":"e_1_3_3_23_2","doi-asserted-by":"publisher","DOI":"10.1109\/TPDS.2012.24"},{"key":"e_1_3_3_24_2","doi-asserted-by":"publisher","DOI":"10.1109\/JIOT.2020.3025015"},{"key":"e_1_3_3_25_2","doi-asserted-by":"publisher","DOI":"10.1145\/2611286.2611309"},{"key":"e_1_3_3_26_2","doi-asserted-by":"crossref","first-page":"296","DOI":"10.1109\/ICDEW.2014.6818344","volume-title":"Proceedings of the 2014 IEEE International Conference on Data Engineering Workshops","author":"Heinze Thomas","year":"2014","unstructured":"Thomas Heinze, Valerio Pappalardo, Zbigniew Jerzak, and Christof Fetzer. 2014. Auto-scaling techniques for elastic data stream processing. In Proceedings of the 2014 IEEE International Conference on Data Engineering Workshops. 296\u2013302. DOI:10.1109\/ICDEW.2014.6818344"},{"key":"e_1_3_3_27_2","doi-asserted-by":"publisher","DOI":"10.1145\/2806777.2806847"},{"key":"e_1_3_3_28_2","first-page":"629","volume-title":"Proceedings of the 20th IEEE\/ACM International Symposium on Cluster, Cloud, and Internet Computing, CCGRID\u201920","author":"Farahabady Mohammad R. Hoseiny","year":"2020","unstructured":"Mohammad R. Hoseiny Farahabady, Ali Jannesari, Javid Taheri, Wei Bao, Albert Y. Zomaya, and Zahir Tari. 2020. Q-Flink: A QoS-aware controller for Apache Flink. In Proceedings of the 20th IEEE\/ACM International Symposium on Cluster, Cloud, and Internet Computing, CCGRID\u201920. 629\u2013638. DOI:10.1109\/CCGrid49817.2020.00-30"},{"key":"e_1_3_3_29_2","doi-asserted-by":"publisher","DOI":"10.1109\/CCGRID.2018.00021"},{"key":"e_1_3_3_30_2","doi-asserted-by":"publisher","DOI":"10.1109\/MASCOTS.2016.17"},{"key":"e_1_3_3_31_2","first-page":"1532","volume-title":"Proceedings of the 37th IEEE International Conference on Distributed Computing Systems, ICDCS\u201917","author":"Kombi Roland Kotto","year":"2017","unstructured":"Roland Kotto Kombi, Nicolas Lumineau, and Philippe Lamarre. 2017. A preventive auto-parallelization approach for elastic stream processing. In Proceedings of the 37th IEEE International Conference on Distributed Computing Systems, ICDCS\u201917. 1532\u20131542. DOI:10.1109\/ICDCS.2017.253"},{"key":"e_1_3_3_32_2","doi-asserted-by":"publisher","DOI":"10.1109\/MIC.2008.129"},{"key":"e_1_3_3_33_2","doi-asserted-by":"publisher","DOI":"10.14778\/3199517.3199521"},{"key":"e_1_3_3_34_2","doi-asserted-by":"publisher","DOI":"10.1109\/ICDCS.2017.123"},{"key":"e_1_3_3_35_2","doi-asserted-by":"publisher","DOI":"10.1145\/3132618"},{"key":"e_1_3_3_36_2","doi-asserted-by":"publisher","DOI":"10.1109\/ICDCS.2015.48"},{"key":"e_1_3_3_37_2","doi-asserted-by":"publisher","DOI":"10.1109\/TPDS.2017.2762683"},{"key":"e_1_3_3_38_2","doi-asserted-by":"publisher","DOI":"10.1007\/s10723-014-9314-7"},{"key":"e_1_3_3_39_2","doi-asserted-by":"publisher","DOI":"10.1109\/COMST.2019.2916583"},{"key":"e_1_3_3_40_2","doi-asserted-by":"publisher","DOI":"10.1109\/TSP.2011.2165211"},{"key":"e_1_3_3_41_2","first-page":"1591","volume-title":"Proceedings of the 36th IEEE International Conference on Data Engineering, ICDE\u201920","author":"Mei Yuan","year":"2020","unstructured":"Yuan Mei, Luwei Cheng, Vanish Talwar, Michael Y. Levin, Gabriela Jacques-Silva, Nikhil Simha, Anirban Banerjee, Brian Smith, Tim Williamson, Serhat Yilmaz, Weitao Chen, and Guoqiang Jerry Chen. 2020. Turbine: Facebook\u2019s service management platform for stream processing. In Proceedings of the 36th IEEE International Conference on Data Engineering, ICDE\u201920. 1591\u20131602. DOI:10.1109\/ICDE48307.2020.00141"},{"key":"e_1_3_3_42_2","doi-asserted-by":"publisher","DOI":"10.1145\/2903146"},{"key":"e_1_3_3_43_2","first-page":"831","volume-title":"Proceedings of the 2020 IEEE International Parallel and Distributed Processing Symposium, IPDPS\u201920","author":"Menon Harshitha","year":"2020","unstructured":"Harshitha Menon, Abhinav Bhatele, and Todd Gamblin. 2020. Auto-tuning parameter choices in HPC applications using Bayesian optimization. In Proceedings of the 2020 IEEE International Parallel and Distributed Processing Symposium, IPDPS\u201920. 831\u2013840. DOI:10.1109\/IPDPS47924.2020.00090"},{"key":"e_1_3_3_44_2","doi-asserted-by":"publisher","DOI":"10.1038\/nature14236"},{"key":"e_1_3_3_45_2","first-page":"120","volume-title":"Proceedings of the 16th IFIP WG 10.3 International Conference on Network and Parallel Computing, NPC\u201919","author":"Mu Weimin","year":"2019","unstructured":"Weimin Mu, Zongze Jin, Junwei Wang, Weilin Zhu, and Weiping Wang. 2019. BGElasor: Elastic-scaling framework for distributed streaming processing with deep neural network. In Proceedings of the 16th IFIP WG 10.3 International Conference on Network and Parallel Computing, NPC\u201919. Springer, 120\u2013131. DOI:10.1007\/978-3-030-30709-7_10"},{"key":"e_1_3_3_46_2","doi-asserted-by":"publisher","DOI":"10.1109\/TPDS.2019.2896115"},{"key":"e_1_3_3_47_2","first-page":"137","volume-title":"Proceedings of the 2015 IEEE International Conference on Data Engineering, ICDE\u201915","author":"Nasir Muhammad A. U.","year":"2015","unstructured":"Muhammad A. U. Nasir, Gianmarco De Francisci Morales, David Garc\u00eda-Soriano, Nicolas Kourtellis, and Marco Serafini. 2015. The power of both choices: Practical load balancing for distributed stream processing engines. In Proceedings of the 2015 IEEE International Conference on Data Engineering, ICDE\u201915. 137\u2013148. DOI:10.1109\/ICDE.2015.7113279"},{"key":"e_1_3_3_48_2","doi-asserted-by":"publisher","DOI":"10.1145\/1555228.1555263"},{"key":"e_1_3_3_49_2","volume-title":"Gaussian Processes for Machine Learning","author":"Rasmussen Carl Edward","year":"2006","unstructured":"Carl Edward Rasmussen and Christopher K. I. Williams. 2006. Gaussian Processes for Machine Learning. MIT Press."},{"key":"e_1_3_3_50_2","doi-asserted-by":"publisher","DOI":"10.1145\/3361525.3361551"},{"key":"e_1_3_3_51_2","doi-asserted-by":"publisher","DOI":"10.1145\/3303849"},{"key":"e_1_3_3_52_2","doi-asserted-by":"publisher","DOI":"10.1145\/3485126"},{"key":"e_1_3_3_53_2","first-page":"329","volume-title":"Proceedings of the 12th IEEE International Conference on Cloud Computing, CLOUD\u201919","author":"Rossi Fabiana","year":"2019","unstructured":"Fabiana Rossi, Matteo Nardelli, and Valeria Cardellini. 2019. Horizontal and vertical scaling of container-based applications using reinforcement learning. In Proceedings of the 12th IEEE International Conference on Cloud Computing, CLOUD\u201919. 329\u2013338. DOI:10.1109\/CLOUD.2019.00061"},{"key":"e_1_3_3_54_2","doi-asserted-by":"publisher","DOI":"10.1109\/CCGrid51090.2021.00041"},{"key":"e_1_3_3_55_2","doi-asserted-by":"crossref","first-page":"31","DOI":"10.1145\/3328905.3329506","volume-title":"Proceedings of the 13th ACM International Conference on Distributed and Event-based Systems, DEBS\u201919","author":"Russo Gabriele Russo","year":"2019","unstructured":"Gabriele Russo Russo, Valeria Cardellini, and Francesco Lo Presti. 2019. Reinforcement learning based policies for elastic stream processing on heterogeneous resources. In Proceedings of the 13th ACM International Conference on Distributed and Event-based Systems, DEBS\u201919. 31\u201342. DOI:10.1145\/3328905.3329506"},{"key":"e_1_3_3_56_2","doi-asserted-by":"publisher","DOI":"10.1007\/s11227-021-03692-w"},{"key":"e_1_3_3_57_2","doi-asserted-by":"publisher","DOI":"10.1109\/JPROC.2015.2494218"},{"key":"e_1_3_3_58_2","doi-asserted-by":"publisher","DOI":"10.1109\/ICDCS.2018.00109"},{"key":"e_1_3_3_59_2","first-page":"106:1\u2013106:10","volume-title":"Proceedings of 48th International Conference on Parallel Processing, ICPP\u201919","author":"Veith Alexandre da Silva","year":"2019","unstructured":"Alexandre da Silva Veith, Felipe R. de Souza, Marcos D. de Assun\u00e7\u00e3o, Laurent Lef\u00e8vre, and Julio C. Santos dos Anjos. 2019. Multi-objective reinforcement learning for reconfiguring data stream analytics on edge computing. In Proceedings of 48th International Conference on Parallel Processing, ICPP\u201919. ACM, 106:1\u2013106:10. DOI:10.1145\/3337821.3337894"},{"key":"e_1_3_3_60_2","first-page":"8","volume-title":"Proceedings of the 12th USENIX Workshop on Hot Topics in Cloud Computing, HotCloud\u201920","author":"Singh Rayman Preet","year":"2020","unstructured":"Rayman Preet Singh, Bharath Kumarasubramanian, Prateek Maheshwari, and Samarth Shetty. 2020. Auto-sizing for stream processing applications at LinkedIn. In Proceedings of the 12th USENIX Workshop on Hot Topics in Cloud Computing, HotCloud\u201920. 8 pages. Retrieved from https:\/\/www.usenix.org\/conference\/hotcloud20\/presentation\/singh."},{"key":"e_1_3_3_61_2","volume-title":"Proceedings of the Advances in Neural Information Processing Systems","volume":"25","author":"Snoek Jasper","year":"2012","unstructured":"Jasper Snoek, Hugo Larochelle, and Ryan P. Adams. 2012. Practical Bayesian optimization of machine learning algorithms. In Proceedings of the Advances in Neural Information Processing Systems. F. Pereira, C. J. C. Burges, L. Bottou, and K. Q. Weinberger (Eds.), Vol. 25. Curran Associates, Inc. Retrieved from https:\/\/proceedings.neurips.cc\/paper\/2012\/file\/05311655a15b75fab86956663e1819cd-Paper.pdf."},{"key":"e_1_3_3_62_2","doi-asserted-by":"publisher","DOI":"10.1145\/1107499.1107504"},{"key":"e_1_3_3_63_2","volume-title":"Reinforcement Learning: An Introduction (2nd. ed.)","author":"Sutton Richard S.","year":"2018","unstructured":"Richard S. Sutton and Andrew G. Barto. 2018. Reinforcement Learning: An Introduction (2nd. ed.). MIT Press, Cambridge, MA."},{"key":"e_1_3_3_64_2","doi-asserted-by":"publisher","DOI":"10.1109\/TSC.2018.2827070"},{"key":"e_1_3_3_65_2","doi-asserted-by":"publisher","DOI":"10.1007\/s10586-007-0035-6"},{"key":"e_1_3_3_66_2","first-page":"175","volume-title":"Proceedings of the 2017 IEEE 2nd International Workshops on Foundations and Applications of Self* Systems","author":"Trotter Michael","year":"2017","unstructured":"Michael Trotter, Guyue Liu, and Timothy Wood. 2017. Into the storm: Descrying optimal configurations using genetic algorithms and Bayesian optimization. In Proceedings of the 2017 IEEE 2nd International Workshops on Foundations and Applications of Self* Systems. 175\u2013180. DOI:10.1109\/FAS-W.2017.144"},{"key":"e_1_3_3_67_2","doi-asserted-by":"publisher","DOI":"10.1145\/3318464.3386142"},{"key":"e_1_3_3_68_2","doi-asserted-by":"publisher","DOI":"10.1007\/BF00992698"},{"key":"e_1_3_3_69_2","doi-asserted-by":"crossref","first-page":"76","DOI":"10.1007\/978-3-642-35813-5_4","volume-title":"Proceedings of the Software Engineering for Self-Adaptive Systems II","author":"Weyns Danny","year":"2013","unstructured":"Danny Weyns, Bradley Schmerl, Vincenzo Grassi, Sam Malek, Raffaela Mirandola, Christian Prehofer, Jochen Wuttke, Jesper Andersson, Holger Giese, and Karl M. G\u00f6schka. 2013. On patterns for decentralized control in self-adaptive systems. In Proceedings of the Software Engineering for Self-Adaptive Systems II. Springer, 76\u2013107. DOI:10.1007\/978-3-642-35813-5_4"},{"key":"e_1_3_3_70_2","first-page":"292","volume-title":"Proceedings of the IEEE 28th International Conference on High Performance Computing, Data, and Analytics, HiPC\u201921","author":"Xu Jinlai","year":"2021","unstructured":"Jinlai Xu and Balaji Palanisamy. 2021. Model-based reinforcement learning for elastic stream processing in edge computing. In Proceedings of the IEEE 28th International Conference on High Performance Computing, Data, and Analytics, HiPC\u201921. 292\u2013301. DOI:10.1109\/HiPC53243.2021.00043"}],"container-title":["ACM Transactions on Autonomous and Adaptive Systems"],"original-title":[],"language":"en","link":[{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/3597435","content-type":"unspecified","content-version":"vor","intended-application":"text-mining"},{"URL":"https:\/\/dl.acm.org\/doi\/pdf\/10.1145\/3597435","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2025,6,17]],"date-time":"2025-06-17T17:48:44Z","timestamp":1750182524000},"score":1,"resource":{"primary":{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/3597435"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2023,10,14]]},"references-count":69,"journal-issue":{"issue":"4","published-print":{"date-parts":[[2023,12,31]]}},"alternative-id":["10.1145\/3597435"],"URL":"https:\/\/doi.org\/10.1145\/3597435","relation":{},"ISSN":["1556-4665","1556-4703"],"issn-type":[{"value":"1556-4665","type":"print"},{"value":"1556-4703","type":"electronic"}],"subject":[],"published":{"date-parts":[[2023,10,14]]},"assertion":[{"value":"2022-03-30","order":0,"name":"received","label":"Received","group":{"name":"publication_history","label":"Publication History"}},{"value":"2023-05-11","order":1,"name":"accepted","label":"Accepted","group":{"name":"publication_history","label":"Publication History"}},{"value":"2023-10-14","order":2,"name":"published","label":"Published","group":{"name":"publication_history","label":"Publication History"}}]}}