“…To track the phases automatically, Sherwood et al presented an architecture specifically for executed code (Sherwood, Sair, and Calder 2003). Also, some techniques based on machine learning have been proposed (Khanna et al 2014;Bhattacharyya, Sotiriadis, and Amza 2017;Jandaghi, Bhattacharyya, and Amza 2018). For example, to detect workload phases for inspiring more accurate resource provisioning, (Berral, Wang, and Youssef 2020a) proposed combining conditional restricted Boltzmann machines and distance-based clustering (i.e., k-means) to discover behavioral phases from resource usage metrics for auto-scaling.…”