├── AzureReadings_at_a_timestamp.csv ├── DataPreprocessing.ipynb ├── README.md ├── prediction_of_vms_using_IndRNN.ipynb ├── prediction_of_vms_using_gru.ipynb ├── prediction_of_vms_using_lstm.ipynb └── vm table.ipynb /README.md: -------------------------------------------------------------------------------- 1 | # predicting-cloud-CPU-utilization-on-Azure-dtasegt-using-deeplearning 2 | Many companies are utilizing the cloud for their day to day activities. Many big cloud service providers like AWS, Microsoft Azure have been success-fully serving its increasing customer base. A brief understanding of the char-acteristics of production virtual machine (VM) workloads of large cloud pro-viders can inform the providers resource management systems, e.g. VM scheduler, power manager, server health manager. In our project we will be analysing Microsoft Azure’s VM CPU utilization dataset released in October 2017. We predict the VM workload from the CPU usage pattern like mini-mum, maximum and average from the Azure dataset. Different techniques among Deep learning are used for the prediction by considering the history of the workload. By considering real VM traces, we can show that the predic-tion-informed schedules increase utilization and stop physical resource ex-haustion. We can arrive at a conclusion that cloud service providers can use their workloads’ characteristics and machine learning techniques to enhance resource management greatly. 3 | -------------------------------------------------------------------------------- /vm table.ipynb: -------------------------------------------------------------------------------- 1 | {"nbformat":4,"nbformat_minor":0,"metadata":{"colab":{"name":"vm table.ipynb","provenance":[],"collapsed_sections":[],"mount_file_id":"1cNuW_yUfTdcWp_zl9pPmpVHIEjOD_3B_","authorship_tag":"ABX9TyM4MJJUflZoxm5YKNjvzkYY"},"kernelspec":{"name":"python3","display_name":"Python 3"}},"cells":[{"cell_type":"code","metadata":{"id":"la426jDEFvnC","colab_type":"code","colab":{"base_uri":"https://localhost:8080/","height":34},"executionInfo":{"status":"ok","timestamp":1592404724990,"user_tz":-330,"elapsed":2980,"user":{"displayName":"biswajit padhi","photoUrl":"","userId":"13405267854865162652"}},"outputId":"c793252b-8b8e-4929-bf7e-0f3275b2c5f6"},"source":["import math\n","import numpy as np\n","import pandas as pd\n","import matplotlib.pyplot as plt\n","from sklearn.preprocessing import MinMaxScaler\n","from sklearn.metrics import mean_squared_error\n","import keras"],"execution_count":null,"outputs":[{"output_type":"stream","text":["Using TensorFlow backend.\n"],"name":"stderr"}]},{"cell_type":"code","metadata":{"id":"Gq_3_9bpGOzy","colab_type":"code","colab":{"base_uri":"https://localhost:8080/","height":316},"executionInfo":{"status":"ok","timestamp":1592404735767,"user_tz":-330,"elapsed":13743,"user":{"displayName":"biswajit padhi","photoUrl":"","userId":"13405267854865162652"}},"outputId":"64464c87-5cc2-487f-ee82-6cbbb7a635ac"},"source":["data_path = '/content/drive/My Drive/azure download/data/vmtable.csv'\n","headers=['vm id','subscription id','deployment id','vm created', 'vm deleted',\n","'max cpu', 'avg cpu', 'p95max cpu', 'vm category', 'vm core count', 'vm memory']\n","vmtable = pd.read_csv(data_path, header=None,\n","index_col=False,names=headers,delimiter=',')\n","vmtable.head()"],"execution_count":null,"outputs":[{"output_type":"execute_result","data":{"text/html":["
\n","\n","\n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n","
vm idsubscription iddeployment idvm createdvm deletedmax cpuavg cpup95max cpuvm categoryvm core countvm memory
0x/XsOfHO4ocsV99i4NluqKDuxctW2MMVmwqOPAlg4wp8mq...VDU4C8cqdr+ORcqquwMRcsBA2l0SC6lCPys0wdghKROuxP...Pc2VLB8aDxK2DCC96itq4vW/zVDp4wioAUiB3HoGSFYQ0o...0259170099.3698693.42409410.194309Delay-insensitive11.75
1H5CxmMoVcZSpjgGbohnVA3R+7uCTe/hM2ht2uIYi3t7KwX...BSXOcywx8pUU0DueDo6UMol1YzR6tn47KLEKaoXp0a1bf2...3J17LcV4gXjFat62qhVFRfoiWArHnY763HVqqI6orJCfV8...01539300100.0000006.18178433.981360Interactive10.75
2wR/G1YUjpMP4zUbxGM/XJNhYS8cAK3SGKM2tqhF7VdeTUY...VDU4C8cqdr+ORcqquwMRcsBA2l0SC6lCPys0wdghKROuxP...Pc2VLB8aDxK2DCC96itq4vW/zVDp4wioAUiB3HoGSFYQ0o...2188800259170099.5690273.5736357.924250Delay-insensitive11.75
31XiU+KpvIa3T1XP8kk3ZY71Of03+ogFL5Pag9Mc2jBuh0Y...8u+M3WcFp8pq183WoMB79PhK7xUzbaviOBv0qWN6Xn4mbu...DHbeI+pYTYFjH8JAF8SewM0z/4SqQctvxcBRGIRglBmeLW...0259170099.40508516.28761195.697890Delay-insensitive856.00
4z5i2HiSaz6ZdLR6PXdnDjGva3jIlkMPXx23VtfXx9q3dXF...VDU4C8cqdr+ORcqquwMRcsBA2l0SC6lCPys0wdghKROuxP...Pc2VLB8aDxK2DCC96itq4vW/zVDp4wioAUiB3HoGSFYQ0o...0218850098.9679613.0360389.445484Delay-insensitive11.75
\n","
"],"text/plain":[" vm id ... vm memory\n","0 x/XsOfHO4ocsV99i4NluqKDuxctW2MMVmwqOPAlg4wp8mq... ... 1.75\n","1 H5CxmMoVcZSpjgGbohnVA3R+7uCTe/hM2ht2uIYi3t7KwX... ... 0.75\n","2 wR/G1YUjpMP4zUbxGM/XJNhYS8cAK3SGKM2tqhF7VdeTUY... ... 1.75\n","3 1XiU+KpvIa3T1XP8kk3ZY71Of03+ogFL5Pag9Mc2jBuh0Y... ... 56.00\n","4 z5i2HiSaz6ZdLR6PXdnDjGva3jIlkMPXx23VtfXx9q3dXF... ... 1.75\n","\n","[5 rows x 11 columns]"]},"metadata":{"tags":[]},"execution_count":2}]},{"cell_type":"code","metadata":{"id":"ARBqeNZiGYnp","colab_type":"code","colab":{"base_uri":"https://localhost:8080/","height":299},"executionInfo":{"status":"ok","timestamp":1592404735768,"user_tz":-330,"elapsed":13735,"user":{"displayName":"biswajit padhi","photoUrl":"","userId":"13405267854865162652"}},"outputId":"dedf6330-11a4-4c10-8a58-aceea948b14a"},"source":["vmtable['vm lifetime'] = np.maximum((vmtable['vm deleted'] - vmtable['vm created']),300)/ 3600\n","vmtable['vm core hour'] = vmtable['vm lifetime'] * vmtable['vm core count']\n","vmtable = vmtable.drop(['vm created','vm deleted','vm core count','vm lifetime'], axis=1, inplace=False)\n","vmtable.head()"],"execution_count":null,"outputs":[{"output_type":"execute_result","data":{"text/html":["
\n","\n","\n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n","
vm idsubscription iddeployment idmax cpuavg cpup95max cpuvm categoryvm memoryvm core hour
0x/XsOfHO4ocsV99i4NluqKDuxctW2MMVmwqOPAlg4wp8mq...VDU4C8cqdr+ORcqquwMRcsBA2l0SC6lCPys0wdghKROuxP...Pc2VLB8aDxK2DCC96itq4vW/zVDp4wioAUiB3HoGSFYQ0o...99.3698693.42409410.194309Delay-insensitive1.75719.916667
1H5CxmMoVcZSpjgGbohnVA3R+7uCTe/hM2ht2uIYi3t7KwX...BSXOcywx8pUU0DueDo6UMol1YzR6tn47KLEKaoXp0a1bf2...3J17LcV4gXjFat62qhVFRfoiWArHnY763HVqqI6orJCfV8...100.0000006.18178433.981360Interactive0.75427.583333
2wR/G1YUjpMP4zUbxGM/XJNhYS8cAK3SGKM2tqhF7VdeTUY...VDU4C8cqdr+ORcqquwMRcsBA2l0SC6lCPys0wdghKROuxP...Pc2VLB8aDxK2DCC96itq4vW/zVDp4wioAUiB3HoGSFYQ0o...99.5690273.5736357.924250Delay-insensitive1.75111.916667
31XiU+KpvIa3T1XP8kk3ZY71Of03+ogFL5Pag9Mc2jBuh0Y...8u+M3WcFp8pq183WoMB79PhK7xUzbaviOBv0qWN6Xn4mbu...DHbeI+pYTYFjH8JAF8SewM0z/4SqQctvxcBRGIRglBmeLW...99.40508516.28761195.697890Delay-insensitive56.005759.333333
4z5i2HiSaz6ZdLR6PXdnDjGva3jIlkMPXx23VtfXx9q3dXF...VDU4C8cqdr+ORcqquwMRcsBA2l0SC6lCPys0wdghKROuxP...Pc2VLB8aDxK2DCC96itq4vW/zVDp4wioAUiB3HoGSFYQ0o...98.9679613.0360389.445484Delay-insensitive1.75607.916667
\n","
"],"text/plain":[" vm id ... vm core hour\n","0 x/XsOfHO4ocsV99i4NluqKDuxctW2MMVmwqOPAlg4wp8mq... ... 719.916667\n","1 H5CxmMoVcZSpjgGbohnVA3R+7uCTe/hM2ht2uIYi3t7KwX... ... 427.583333\n","2 wR/G1YUjpMP4zUbxGM/XJNhYS8cAK3SGKM2tqhF7VdeTUY... ... 111.916667\n","3 1XiU+KpvIa3T1XP8kk3ZY71Of03+ogFL5Pag9Mc2jBuh0Y... ... 5759.333333\n","4 z5i2HiSaz6ZdLR6PXdnDjGva3jIlkMPXx23VtfXx9q3dXF... ... 607.916667\n","\n","[5 rows x 9 columns]"]},"metadata":{"tags":[]},"execution_count":3}]},{"cell_type":"code","metadata":{"id":"XEpkrdieHDPc","colab_type":"code","colab":{"base_uri":"https://localhost:8080/","height":34},"executionInfo":{"status":"ok","timestamp":1592404736399,"user_tz":-330,"elapsed":14359,"user":{"displayName":"biswajit padhi","photoUrl":"","userId":"13405267854865162652"}},"outputId":"5219e342-9e9d-4503-879a-6686e5614e54"},"source":["vmtable.isnull().values.any()"],"execution_count":null,"outputs":[{"output_type":"execute_result","data":{"text/plain":["False"]},"metadata":{"tags":[]},"execution_count":4}]},{"cell_type":"code","metadata":{"id":"G93BEOYEHVp_","colab_type":"code","colab":{}},"source":["def plot_corr(df,size=10):\n","\n"," import seaborn as sn\n"," corr = df.corr()\n"," sn.heatmap(corr,annot=True)"],"execution_count":null,"outputs":[]},{"cell_type":"code","metadata":{"id":"tyEffsugIOED","colab_type":"code","colab":{"base_uri":"https://localhost:8080/","height":378},"executionInfo":{"status":"ok","timestamp":1592404737689,"user_tz":-330,"elapsed":15639,"user":{"displayName":"biswajit padhi","photoUrl":"","userId":"13405267854865162652"}},"outputId":"f0aff14a-67a8-4562-f08b-acfbe6c6c364"},"source":["import seaborn as sn\n","corr=vmtable.corr()\n","sn.heatmap(corr,annot=True)\n","plt.savefig('/content/drive/My Drive/azure download/data/corr plot before.png', dpi = 300)\n","plt.show()"],"execution_count":null,"outputs":[{"output_type":"stream","text":["/usr/local/lib/python3.6/dist-packages/statsmodels/tools/_testing.py:19: FutureWarning: pandas.util.testing is deprecated. Use the functions in the public API at pandas.testing instead.\n"," import pandas.util.testing as tm\n"],"name":"stderr"},{"output_type":"display_data","data":{"image/png":"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\n","text/plain":["
"]},"metadata":{"tags":[],"needs_background":"light"}}]},{"cell_type":"code","metadata":{"id":"16MRCK8MUqik","colab_type":"code","colab":{"base_uri":"https://localhost:8080/","height":34},"executionInfo":{"status":"ok","timestamp":1592404737690,"user_tz":-330,"elapsed":15632,"user":{"displayName":"biswajit padhi","photoUrl":"","userId":"13405267854865162652"}},"outputId":"6b38c56b-0285-4693-d686-9cfd2d60f274"},"source":["vmtable['vm category'].unique()"],"execution_count":null,"outputs":[{"output_type":"execute_result","data":{"text/plain":["array(['Delay-insensitive', 'Interactive', 'Unkown'], dtype=object)"]},"metadata":{"tags":[]},"execution_count":7}]},{"cell_type":"code","metadata":{"id":"vjGFJcAIV9xF","colab_type":"code","colab":{"base_uri":"https://localhost:8080/","height":185},"executionInfo":{"status":"ok","timestamp":1592404737691,"user_tz":-330,"elapsed":15624,"user":{"displayName":"biswajit padhi","photoUrl":"","userId":"13405267854865162652"}},"outputId":"e786282e-bae3-4f3f-eb72-f142afe04330"},"source":["vmtable.count()"],"execution_count":null,"outputs":[{"output_type":"execute_result","data":{"text/plain":["vm id 2013767\n","subscription id 2013767\n","deployment id 2013767\n","max cpu 2013767\n","avg cpu 2013767\n","p95max cpu 2013767\n","vm category 2013767\n","vm memory 2013767\n","vm core hour 2013767\n","dtype: int64"]},"metadata":{"tags":[]},"execution_count":8}]},{"cell_type":"code","metadata":{"id":"bO6L3kvfVsuh","colab_type":"code","colab":{"base_uri":"https://localhost:8080/","height":185},"executionInfo":{"status":"ok","timestamp":1592404737692,"user_tz":-330,"elapsed":15618,"user":{"displayName":"biswajit padhi","photoUrl":"","userId":"13405267854865162652"}},"outputId":"35f56e77-438e-4ca4-8e8f-ff0a55b41477"},"source":["vmtable[vmtable['vm category']=='Interactive'].count()"],"execution_count":null,"outputs":[{"output_type":"execute_result","data":{"text/plain":["vm id 60682\n","subscription id 60682\n","deployment id 60682\n","max cpu 60682\n","avg cpu 60682\n","p95max cpu 60682\n","vm category 60682\n","vm memory 60682\n","vm core hour 60682\n","dtype: int64"]},"metadata":{"tags":[]},"execution_count":9}]},{"cell_type":"code","metadata":{"id":"qZa_Db8JVs7W","colab_type":"code","colab":{"base_uri":"https://localhost:8080/","height":185},"executionInfo":{"status":"ok","timestamp":1592404738312,"user_tz":-330,"elapsed":16231,"user":{"displayName":"biswajit padhi","photoUrl":"","userId":"13405267854865162652"}},"outputId":"f462a122-906e-4242-feb6-59efbd8a2b93"},"source":["vmtable[vmtable['vm category']=='Delay-insensitive'].count()"],"execution_count":null,"outputs":[{"output_type":"execute_result","data":{"text/plain":["vm id 780488\n","subscription id 780488\n","deployment id 780488\n","max cpu 780488\n","avg cpu 780488\n","p95max cpu 780488\n","vm category 780488\n","vm memory 780488\n","vm core hour 780488\n","dtype: int64"]},"metadata":{"tags":[]},"execution_count":10}]},{"cell_type":"code","metadata":{"id":"jg7FNiN0Vxf9","colab_type":"code","colab":{"base_uri":"https://localhost:8080/","height":185},"executionInfo":{"status":"ok","timestamp":1592404738965,"user_tz":-330,"elapsed":16876,"user":{"displayName":"biswajit padhi","photoUrl":"","userId":"13405267854865162652"}},"outputId":"c8cc656c-b047-45ab-a4a4-5411183fc57e"},"source":["vmtable[(vmtable['vm category']!='Interactive') & (vmtable['vm category']!='Delay-insensitive')].count()"],"execution_count":null,"outputs":[{"output_type":"execute_result","data":{"text/plain":["vm id 1172597\n","subscription id 1172597\n","deployment id 1172597\n","max cpu 1172597\n","avg cpu 1172597\n","p95max cpu 1172597\n","vm category 1172597\n","vm memory 1172597\n","vm core hour 1172597\n","dtype: int64"]},"metadata":{"tags":[]},"execution_count":11}]},{"cell_type":"code","metadata":{"id":"VDSE1DcdIR7l","colab_type":"code","colab":{}},"source":["vm_category = {'Delay-insensitive':0,'Interactive':1,'Unkown':np.nan}\n","vmtable['vm category'] = vmtable['vm category'].map(vm_category)"],"execution_count":null,"outputs":[]},{"cell_type":"code","metadata":{"id":"HYN8EdpBUcME","colab_type":"code","colab":{"base_uri":"https://localhost:8080/","height":185},"executionInfo":{"status":"ok","timestamp":1592404739571,"user_tz":-330,"elapsed":17459,"user":{"displayName":"biswajit padhi","photoUrl":"","userId":"13405267854865162652"}},"outputId":"be104b99-072b-4280-9e44-2294c7c22ad5"},"source":["vmtable = vmtable.dropna()\n","vmtable.count()"],"execution_count":null,"outputs":[{"output_type":"execute_result","data":{"text/plain":["vm id 841170\n","subscription id 841170\n","deployment id 841170\n","max cpu 841170\n","avg cpu 841170\n","p95max cpu 841170\n","vm category 841170\n","vm memory 841170\n","vm core hour 841170\n","dtype: int64"]},"metadata":{"tags":[]},"execution_count":13}]},{"cell_type":"code","metadata":{"id":"Ye3gNfrXWvsq","colab_type":"code","colab":{"base_uri":"https://localhost:8080/","height":325},"executionInfo":{"status":"ok","timestamp":1592404789057,"user_tz":-330,"elapsed":1952,"user":{"displayName":"biswajit padhi","photoUrl":"","userId":"13405267854865162652"}},"outputId":"ff46ddf7-3b60-4fe1-dca1-76262aa5f71e"},"source":["vmtable2=vmtable.drop(['vm category'], axis=1, inplace=False)\n","corr=vmtable2.corr()\n","sn.heatmap(corr,annot=True)\n","plt.savefig('/content/drive/My Drive/azure download/data/corr plot after.png')\n","plt.show()"],"execution_count":null,"outputs":[{"output_type":"display_data","data":{"image/png":"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\n","text/plain":["
"]},"metadata":{"tags":[],"needs_background":"light"}}]},{"cell_type":"code","metadata":{"id":"fxgiAdm0R1v8","colab_type":"code","colab":{}},"source":[""],"execution_count":null,"outputs":[]}]} --------------------------------------------------------------------------------