# Optimizing Energy Efficiency in Cloud Data Centers:
## 4 System Model
### The VM Classifier  
#### 4.2.1 Dataset Description  
To apply machine or deep learning techniques effectively, data are essential, but they are not enough. Data must be in a specific format and filtered to retain only those features relevant to the end goal. Obtaining workload-tracking data in the cloud is a complex task due to their pertinence and customer confidentiality concerns. Microsoft Azure virtual machine traces, released in October 2017, address precisely this need by providing relevant data. For this reason, it was decided to work with the 2019 workflow traces, which contain up-to-date data [26]. Microsoft Azure, also known as Windows Azure, is Microsoft's public cloud computing platform. It provides a variety of cloud services, including computing, analytics, storage, and networking. These services allow users to develop, scale, or manage existing applications in the public cloud. This section describes the Azure dataset, which represents traces from Azure's virtual machines (VMs). These traces offer a representative sample of the workloads of Azure VMs in a specific geographic region. The dataset used in this study spans 30 consecutive days and consists of 198 files, totaling 235 GB. These files include the following:  
Format description files with key-value pairs (schema.csv, category.txt, cores.txt, cpu.txt, deployment.txt, lifetime.txt, memory.txt, deployments.csv, subscriptions.csv). Time-series files (vm-cpu-readings-file-*-of-195.csv). A summary file of the time-series data (vm-table.csv). The traces represent a typical subset of the internal workloads of Azure VMs in a specific geographic region. Figure 1 illustrates a comparison of the VM rates by class in this trace against the overall Azure workload in 2019, highlighting their qualitative similarity. The next section provides a detailed description of each file. The vm-cpu-readings-*-of-195 file is a set of 195 files containing CPU usage traces for virtual machines (VMs) over a 30-day period. Each file contains 1,048,576 records, representing measurements taken every 5 min over a 20 min period. The difference between measurements recorded in two consecutive files (vm-cpu-readings-*-de-195) is 200 min. These files are structured in five columns, described in detail below:  
* \(\mathrm{Timestamp}\): A timestamp in seconds starting from 0, with an increment of 200 s (5 min). * \(\mathrm{V_{mid}}\): The encrypted identifier of each virtual machine. * \(\mathrm{Min_{CPU}}\): The minimum percentage of CPU usage. * \(\mathrm{Max_{CPU}}\): The maximum percentage of CPU usage. * \(\mathrm{Avg_{CPU}}\): The average percentage of CPU usage. Azure public dataset vmtable contains information on around 2,695,548 virtual machines, provided in the file vmtable.csv. Below is a summary of the dataset:  
* 2,695,548 is the total number of virtual machines in the dataset. * 6687 is the total number of subscriptions in the dataset. In addition, other statistical data points are provided from this dataset. These details offer insights into the composition and characteristics of the Azure VMs in the specified dataset. In our Q-learning module, we integrated a VM nature testing step during the VM migration phase, utilizing a classification model based on machine learning (random forest) combined with the self-organizing map (SOM) method. This model categorizes VMs into two types: sensitive and insensitive. A sensitive VM is defined as one whose performance --particularly response time and SLA compliance--is significantly affected by delays or interruptions during migration or placement. These typically include latency-critical applications such as real-time analytics or transactional databases. In contrast, insensitive VMs run background tasks or batch processes that can tolerate temporary disruptions. This classification was implemented using data from the Azure 2019 Vmtable file, enabling more intelligent and SLA-aware migration decisions based on the VMs' sensitivity to load and performance variations.