云数据中心重复任务消除算法研究
1. 算法概述
在云数据中心中,如何消除重复任务是一个重要的问题。本文提出了一种改进的灰狼优化算法,用于解决云数据中心的重复任务消除问题。该算法的主要流程是从可用的物理机(PM)中选择合适的PM,并在每个阶段验证虚拟机(VM)和PM上的任务分布,以防止重复任务分配,并确保正确的负载均衡技术。
1.1 算法结构
算法的结构包含位置更新($D_{update}$)、初始化($D_{ini}$)和适应度评估($D_{eval}$)三个部分。其计算复杂度可以通过以下公式确定:
$D = D_{ini} + (D_{update} + D_{eval}) \times F_{evaluations}$
$= N + (N \times D + N) \times F_{evaluations}$
$= N \times (1 + (D + 1) \times F_{evaluations})$
1.2 算法流程图
graph TD;
A[接收任务和用户界面请求] --> B[评估可用主机资源和生产力];
B --> C[选择合适的主机];
C --> D[分配任务];
D --> E[防止任务重复];
E --> F[验证任务分布];
F --> G[负载均衡];
2. 评估参数
为了评估算法的性能,使用了以下几个参数:
2.1 完工时间(Makespan)
完工时间是指按照指定顺序处理所有任务所需的时间。计算公式如下:
$Makespan = (\frac{Given\ time\ of\ network}{Complete\ time\ of\ network}) \times 100$
2.2 吞吐量(Throughput)
吞吐量是指在一定时间内可以传输和接收的数据量。计算公式如下:
$Throughput = \frac{No.\ of\ Tasks}{Makespan}$
2.3 不平衡度(Degree of Imbalance)
不平衡度用于衡量云工作负载在虚拟机之间的分布随机程度。计算公式如下:
$Imbalance\ \overline{Degree} = \frac{Max\ \overline{CTime}_i - Min\ \overline{CTime}_i}{Avg\ \overline{CTime}_i}$
其中,$Max\ \overline{CTime}_i$ 表示所有虚拟机上任务的最大完成时间,$Min\ \overline{CTime}_i$ 表示所有虚拟机上任务的最小完成时间,$Avg\ \overline{CTime}_i$ 表示所有虚拟机上任务的平均完成时间。
2.4 网络生命周期(Network Lifetime)
网络生命周期是指网络能够执行其指定任务的时间。由于重复任务的减少,网络生命周期会相应增加。
3. 实验设置
在本研究中,使用定制的CloudSim在标准工作负载格式(SWF)的测试数据集上实现了改进的灰狼优化算法。数据集的文件大小范围为200到400千字节。通过不同数量的作业(范围从200到2000)、不同数量的虚拟机(VM)和物理机(PM),在云计算环境中的不同数据中心评估了算法的性能。同时,将该算法的结果与ABC、M. Bat、HHO - ACO和PSO算法进行了比较,重点关注完工时间、吞吐量、周转时间和不平衡度等参数,作为负载均衡有效性的指标。
3.1 模拟参数
| 类型 | 设置 | 值 | 类型 | 设置 | 值 |
|---|---|---|---|---|---|
| RZ | 1 到 4 | 5 | Task | No. of Data | 100/1000 |
| DC | No. of task center | 5 | Length of task | 100/200/400 byte | |
| No. of hosts | 100/1000 | No. of processor per requirement | 250 KB | ||
| Type of manager | Time and space | Bandwidth | 1000 | ||
| Memory | Total memory | 204,800 MB | VM | Total no. of VM | 30/20/20 |
| No. of processor | 4 per VM | VM image size | 1000 | ||
| cloudlets | Total no. of data | 400/600 |
4. 实验结果
4.1 吞吐量
| 给定任务数量 | PSO | ABC | PSO - CALBA | M.BAT | HHO - ACO | 改进算法 |
|---|---|---|---|---|---|---|
| 200 | 160 | 165 | 170 | 175 | 186 | 193 |
| 400 | 355 | 365 | 372 | 378 | 385 | 390 |
| 600 | 560 | 570 | 575 | 580 | 588 | 592 |
| 800 | 750 | 770 | 775 | 780 | 786 | 791 |
从吞吐量结果来看,改进算法在不同任务数量下都表现出了较好的性能,始终高于其他算法。
4.2 完工时间
| 虚拟机数量 | PSO | ABC | PSO - CALBA | M - Bat | HHO - ACO | 改进算法 |
|---|---|---|---|---|---|---|
| 10 | 48 | 48 | 47 | 46 | 46 | 45 |
| 20 | 100 | 98 | 97 | 97 | 97 | 96 |
| 30 | 198 | 196 | 195 | 194 | 194 | 192 |
| 40 | 398 | 395 | 393 | 390 | 390 | 388 |
完工时间结果显示,改进算法在不同虚拟机数量下都能实现较低的完工时间,表明其在减少完成时间方面表现出色。
4.3 平均周转时间
| 给定任务数量 | PSO | ABC | PSO - CALBA | M - Bat | HHO - ACO | 改进算法 |
|---|---|---|---|---|---|---|
| 200 | 100 | 98 | 94 | 92 | 92 | 90 |
| 400 | 150 | 148 | 147 | 146 | 144 | 142 |
| 600 | 170 | 165 | 162 | 157 | 155 | 152 |
| 800 | 200 | 195 | 194 | 190 | 188 | 185 |
| 1200 | 250 | 250 | 247 | 245 | 240 | 230 |
| 1600 | 280 | 278 | 275 | 270 | 265 | 262 |
平均周转时间方面,改进算法在各个任务数量下都具有最低的平均周转时间,说明其任务完成效率较高。
4.4 不平衡度
| 任务数量 | PSO | ABC | PSO - CALBA | M - Bat | HHO - ACO | 改进算法 |
|---|---|---|---|---|---|---|
| 200 | 2.8 | 2.6 | 2.9 | 2.4 | 0.66 | 0.87 |
| 400 | 3.4 | 2.9 | 2.3 | 2.5 | 1.2 | 0.8 |
| 800 | 2.7 | 1.2 | 1.5 | 2.2 | 0.9 | 0.5 |
| 1200 | 3 | 1.8 | 0.7 | 1.3 | 0.31 | 0.39 |
| 1600 | 3.1 | 2.2 | 2.5 | 0.8 | 0.21 | 0.19 |
不平衡度结果表明,改进算法在多个任务数量下都能实现较低的不平衡度,说明其负载均衡效果较好。
综上所述,改进的灰狼优化算法在云数据中心的重复任务消除和负载均衡方面表现出色,能够有效提高吞吐量、降低完工时间、减少平均周转时间和不平衡度,从而提升云数据中心的性能和稳定性。
5. 算法优势分析
5.1 任务分配与重复消除
改进的灰狼优化算法在接收到任务和用户界面请求后,会评估数据中心中可用主机的数量、资源及当时的生产力,然后将用户请求路由到合适的主机。这种方式有效避免了任务的重复分配,因为当用户提交多个请求时,每个请求都会被单独列出和处理。
5.2 性能指标提升
- 完工时间 :从实验结果的完工时间表中可以看出,改进算法在不同虚拟机数量下的完工时间均低于其他对比算法。这意味着该算法能够更高效地完成任务,减少整体的处理时间。
- 吞吐量 :在吞吐量方面,改进算法在不同任务数量下都取得了较高的值。较高的吞吐量表示在单位时间内能够处理更多的任务,体现了算法的高效性。
- 平均周转时间 :改进算法在各个任务数量下的平均周转时间最低,说明任务从提交到完成的时间更短,提高了任务的处理效率。
- 不平衡度 :较低的不平衡度表明云工作负载在虚拟机之间的分布更加均匀,改进算法在多个任务数量下都实现了较低的不平衡度,证明其在负载均衡方面表现出色。
5.3 网络生命周期延长
由于该算法能够有效消除重复任务,减少了不必要的资源消耗,从而使得网络能够在更长的时间内执行其指定任务,延长了网络的生命周期。
6. 操作步骤总结
6.1 算法执行流程
graph LR;
A[接收任务和用户请求] --> B[评估主机资源和生产力];
B --> C[选择合适主机];
C --> D[分配任务];
D --> E{任务是否重复};
E -- 是 --> F[消除重复任务];
E -- 否 --> G[验证任务分布];
F --> G;
G --> H[负载均衡调整];
H --> I[任务执行];
6.2 具体操作步骤列表
- 数据准备 :准备标准工作负载格式(SWF)的测试数据集,文件大小范围为200到400千字节。
- 环境搭建 :使用定制的CloudSim搭建云计算环境,设置模拟参数,如任务数量、虚拟机数量、物理机数量、带宽、内存等。
- 算法实现 :在CloudSim中实现改进的灰狼优化算法,包括位置更新、初始化和适应度评估等步骤。
- 性能评估 :运行算法,记录完工时间、吞吐量、平均周转时间和不平衡度等性能指标。
- 结果对比 :将改进算法的结果与ABC、M. Bat、HHO - ACO和PSO等算法进行对比,分析其性能优势。
7. 总结与展望
改进的灰狼优化算法在云数据中心的重复任务消除和负载均衡方面展现出了显著的优势。通过实验验证,该算法能够有效提高吞吐量、降低完工时间、减少平均周转时间和不平衡度,同时延长网络的生命周期。
在未来的研究中,可以考虑将该算法应用于预测和实际环境中,进一步验证其在不同场景下的性能。此外,还可以对算法进行优化和改进,以适应不断变化的云数据中心需求,提高算法的鲁棒性和适应性。
总之,改进的灰狼优化算法为云数据中心的重复任务消除和负载均衡提供了一种有效的解决方案,具有广阔的应用前景。
超级会员免费看
8180

被折叠的 条评论
为什么被折叠?



