基于文件类型的云负载均衡混合模型的制作方法

文档序号:28267507发布日期:2021-12-31 18:55阅读:73来源:国知局
基于文件类型的云负载均衡混合模型的制作方法

1.本发明属于云平台领域,具体涉及一种用于云平台的负载均衡算法。


背景技术:

2.如今,云计算正在发挥重要作用。供应商正在利用saas、paas和iaas提供优质服务,在过去几年中,这些服务在公共云计算市场上呈现出巨大增长(约21.5%)。服务质量(qos)还涉及其他内部和外部因素,如环境问题、经济、可持续性、绩效、能源消耗、新政策和新技术的发展。这意味着云计算的成功在很大程度上取决于供应商和消费者的有效支持策略和智能决策。类似地,其他特性,如负载平衡、可伸缩性、吞吐量、能耗、执行时间、截止时间约束、优化、迁移和响应时间,都被消费者和供应商考虑以维护qos。由于传统算法无法有效地解决qos优化问题,因此今年使用通用启发式算法来优化云中的qos。
3.由于云中数据量巨大且种类繁多,仅提取相关信息就需要更多的资源。当需要处理大规模的、计算复杂的和需要资源的应用程序时,这种情况变得更加令人望而生畏。在这种情况下,数据预处理可以发挥重要作用,其中使用机器学习模型对数据进行离线分类可以显著减少在线处理阶段的执行时间和内存需求。此外,对虚拟机的任务也需要合理分配,以确保最佳的负载均衡。


技术实现要素:

4.本发明是为了解决现有技术中存在的上述技术问题而做出,其目的在于提出了一种新的高效的负载均衡算法。
5.本发明利用文件类型进行分类,在svm和aco的基础上,提出了一种新的混合多目标启发式模型,并且基于迁移时间、吞吐量时间、开销时间和优化时间等qos指标对模型进行优化,该模型满足在云环境中进行高效的负载均衡。
6.本发明提供基于文件类型的云负载均衡混合模型,包括以下步骤,
7.s1:使用支持向量机对云中的文件进行分类;
8.s2:将支持向量机的分类结果输入到蚁群优化算法中,并在蚁群优化算法中采用多目标方式优化云平台负载均衡性能。
9.进一步的,所述步骤s1包括,
10.s11对支持向量机引入核函数,将原始数据空间转化为包含点积变换函数的高维空间,核函数如下:
[0011][0012][0013]
f()是svm函数,表示非线性函数,u
i
表示支持向量,α
i
表示拉格朗日乘子,u
j
表示成员类标签,i,j表示节点的编号,n表示节点总数,c表示截距;
[0014]
s12采用以下多项式核函数使数据线性可分,
[0015]
s(x,y)=((x
t
y+1))
d
[0016]
x是输入向量,y是成员类标签,t表示转秩,d是多项式次,多项式次数根据学习算法进行选择。
[0017]
进一步的,所述步骤s2包括,
[0018]
s21以无向加权图的形式表示虚拟机网络,虚拟机网络表示成一个无向图g=(v,e),v代表虚拟机或节点,e表示具有信息素权重的无向边,信息素权重表示两个节点之间的过载和欠载强度,并以信息素的形式更新;
[0019]
s22初始化信息素,设定初始信息素为0.1,初始信息素值位于两个节点vmi和vmj之间,在第一次迭代之后,信息素被全局更新,vmi表示第i个节点,vmj表示第j个节点;
[0020]
s23计算概率,蚂蚁k通过如下公式计算穿过边缘的概率来决定从当前节点vmi移动到下一个节点vmj,
[0021][0022]
n表示蚂蚁k的邻居数量,从节点i到节点j的概率取决于两个参数τ
ij
和η
ij
,τ
ij
表示信息素,η
ij
表示从节点i到节点j移动的可能性,α和β为用于控制τ
ij
和η
ij
之间的影响的参数;
[0023]
s24采用以下公式更新局部信息素,
[0024][0025]
τ
ij
表示节点i到节点j的信息素,当每只蚂蚁穿过一条边缘ij时,ρ是恒定的信息素蒸发系数,是边缘ij上的初始信息素;
[0026]
s25更新全局信息素,采用以下公式计算全局信息素,
[0027][0028]
m表示蚂蚁数量,是蚂蚁k在一次迭代中在ij边上沉积的信息素,l
k
是蚂蚁k建立的轨迹t
i
的长度;
[0029]
s26值采用以下公式计算:
[0030][0031][0032]
[0033]
t
i
表示在机器m
j
上运行的任务i;
[0034]
s27使用上式计算完成时间,starttime
i
是随机分配任务i的时间,是在机器j上完成任务i的估计时间。
[0035]
本发明的有益效果是,在云平台上提出一个新的负载均衡混合模型。该方案以云中的各种文件类型(如音频、视频、文本和图像等)为基础,使用支持向量机(svm)对云中的文件进行分类。svm的分类结果进一步输入到蚁群优化算法(aco)中,并在aco中采用多目标优化方式以实现在云中获得更好的负载均衡性能。该模型优于现有的方法,在云平台中具有显著的鲁棒性和可靠性。
附图说明
[0036]
图1示出了本发明提出的混合多目标启发式模型结构;
[0037]
图2示出了虚拟机网络;
[0038]
图3示出了分类器的性能比较;
[0039]
图4示出了违反sla平均数量的性能比较;
[0040]
图5示出了平均迁移时间的性能比较;
[0041]
图6示出了平均优化时间的性能比较;
[0042]
图7示出了平均吞吐量的性能比较;
[0043]
图8示出了平均开销时间的性能比较;
具体实施方式
[0044]
为了获得更好的分类结果和有效的任务分配,本发明提出了一种基于支持向量机和蚁群算法的混合模型,与现有模型相比,该模型具有最佳的负载均衡性能。通过将这两个模型集成到一个具有多目标方法的混合模型中,解决了它们各自的局限性,并增强了它们的综合效益。此外,早期的研究通过制定适当的单目标或多目标qos指标来关注各种因素,如成本、响应时间和能源消耗。通用启发式算法和混合启发式算法的发展是云计算中解决此类多目标优化问题的新方法。
[0045]
混合启发式算法常用于解决分类、负载平衡、容错、成本分析和节能等问题。然而,将云数据分类为各种文件类型是对知识体系的新贡献。postgresql和aws已经使用分类方法对数据进行分类。然而,在云计算中,有关数据文件(如音频、视频、文本、图像、地图)的分类需要一些额外的工作来实现准确的分类,并实现负载均衡。这个问题可以分两步解决。在第一步中,需要开发分类算法,对云数据集执行准确的分类,从而产生准确的数据类。在第二步中,生成的数据类被输入到负载均衡算法中,比如通用启发式算法。svm是一种鲁棒性很强的算法,适合处理分类和回归问题。由于蚁群优化算法(aco)在处理负载均衡问题中的良好性能使它成为使用最广泛的算法之一。aco具有很强的鲁棒性,能够更快地搜索到最优解。由于其多样性,aco已被广泛应用于各种研究。
[0046]
因此,针对上述问题,将svm与aco相结合,在考虑多个重要qos指标的基础上提出一个新的混合多目标启发式模型。
[0047]
本发明提出了基于文件类型的云负载均衡混合模型,包括以下步骤,
[0048]
s1:使用支持向量机(svm)对云中的文件进行分类;
[0049]
s2:svm的分类结果输入到蚁群优化算法(aco)中,并在aco中采用多目标优化方式以实现在云平台中获得更好的负载均衡性能;
[0050]
进一步的,所述步骤s1包括,
[0051]
输入:各种类型文件(视频、音频、文本和图像等);
[0052]
输出:文件类别;
[0053]
s11vm引入核函数,将原始数据空间转化为包含点积变换函数的高维空间。核函数如下:
[0054][0055][0056]
f()是svm函数,表示非线性函数,u
i
表示支持向量,α
i
表示拉格朗日乘子,u
j
表示成员类标签,i,j表示节点的编号,n表示节点总数,c表示截距;
[0057]
s12由于输入的数据是由各种类型的文件组成,为了使数据线性可分,本发明选择了poly函数,即
[0058]
poly(u,v)=((u
k
v+1))
s
[0059]
s是多项式次,多项式核定义为:
[0060]
s(x,y)=((x
t
y+1))
d
[0061]
多项式次数必须根据学习算法进行选择。
[0062]
进一步的,所述步骤s2包括,
[0063]
输入:已分类文件;
[0064]
输出:数据分配;
[0065]
s21以无向加权图的形式表示虚拟机网络。虚拟机网络可表示成一个无向图g=(v,e),v代表虚拟机或节点,e表示具有信息素权重的无向边,信息素权重表示两个节点之间的过载和欠载强度,并以信息素的形式更新;
[0066]
s22初始化信息素,设定初始信息素为0.1。初始信息素值位于两个节点之间,即vmi和vmj之间。在第一次迭代之后,信息素被全局更新;
[0067]
s23计算概率,蚂蚁k通过如下公式计算穿过边缘的概率来决定从当前节点vmi移动到下一个节点vmj,
[0068][0069]
表示蚂蚁k的邻居,从节点i到节点j的概率取决于两个参数,即信息素τ
ij
和从节点i到节点j移动的可能性,用η
ij
表示,α和β用于控制τ
ij
和η
ij
之间的影响;
[0070]
s24更新局部信息素。在蚁群优化算法中,信息素是局部和全局更新的。利用以下公式更新局部信息素,
[0071][0072]
τ
ij
表示节点i到节点j的信息素,当每只蚂蚁穿过一条边缘ij时,ρ是恒定的信息素蒸发系数,τ
ij
是边缘ij上的初始信息素;
[0073]
s25更新全局信息素。发生在每次迭代结束时,这时所有蚂蚁都构建了路径。利用以下公式计算全局信息素,
[0074][0075]
m表示蚂蚁数量,是蚂蚁k在一次迭代中在ij边上沉积的信息素。l
k
是蚂蚁k建立的轨迹t
i
的长度;
[0076]
s26随着时间的推移,值越大,所构建路径的每一条边上的信息素就越高,计算公式如下:
[0077][0078][0079][0080]
s27使用上式计算完成时间,因为任务的开始时间取决于先前分配给相应机器的任务完成时间。当机器可用时,starttime
i
是随机分配任务i的时间,是在机器j上完成任务i的估计时间。
[0081]
进一步的,所述步骤s1包括,
[0082]
本发明将支持向量机(svm)与蚁群优化算法(aco)相结合提出了一种新的混合多目标启发式模型,实现云计算中的高效负载均衡。该模型首先对输入数据进行分类处理,然后进行负载均衡操作。这个过程从收集存储在云环境中的视频、文本、音频和图像形式的数据输入开始。然后利用svm对数据进行分类,得到数据类。然后利用aco对数据进行负载均衡。
[0083]
本发明提出模型首先将各种文件作为输入,例如来自云平台中的音频、视频、图像和文本,并使用分类器执行分类。算法在将数据分配给适当的类之前迭代100次。采用polysvm内核处理高维复杂数据。svm分类器的输出是已分类文件。
[0084]
利用svm对采集到的数据进行分类。svm引入核函数,将原始数据空间转化为包含点积变换函数的高维空间。超函数如下:
[0085][0086]
[0087]
f()是svm函数,表示非线性函数,u
i
表示支持向量,α
i
表示拉格朗日乘子,u
j
表示成员类标签,i,j表示节点的编号,n表示节点总数,c表示截距;
[0088]
由于输入的数据是由各种类型的文件组成,为了使数据线性可分,本发明选择了poly函数,即
[0089]
poly(u,v)=((u
k
v+1))
s
.
[0090]
s是多项式次,多项式核定义为:
[0091]
s(x,y)=((x
t
y+1))
d
[0092]
多项式次数必须根据学习算法进行选择。当d=1时,符合线性核。多项式核适用于输入空间中的曲线。
[0093]
进一步的,所述步骤s2包括,
[0094]
假设vm1,vm2,...,vmn是一组虚拟机,每台虚拟机负责执行一个任务。每个任务执行100次迭代,并使用时间形式的计算成本进行评估。使用aco来计算任务在虚拟机上的映射,该算法根据云环境中的可用资源为每台机器分配一个任务。
[0095]
本发明以无向加权图的形式表示虚拟机网络。虚拟机网络可表示成一个无向图g=(v,e),v代表虚拟机或节点,e表示具有信息素权重的无向边,信息素权重表示两个节点之间的过载和欠载强度,并以信息素的形式更新。
[0096]
(1)初始化信息素
[0097]
在本发明提出的方法中,设定初始信息素为0.1。初始信息素值位于两个节点之间,即vmi和vmj之间。在第一次迭代之后,信息素被全局更新。
[0098]
(2)计算概率
[0099]
蚂蚁k通过如下公式计算穿过边缘的概率来决定从当前节点vmi移动到下一个节点vmj。
[0100][0101]
表示蚂蚁k的邻居,从节点i到节点j的概率取决于两个参数,即信息素τ
ij
和从节点i到节点j移动的可能性,用η
ij
表示,α和β用于控制τ
ij
和η
ij
之间的影响。
[0102]
(3)更新信息素
[0103]
信息素的数量反映了蚂蚁搜索的节点类型。路径上更多的信息素表明目标节点过载,因此蚂蚁将尝试找到另一条信息素较少的路径,即遇到过载节点后,它将找到负载不足的节点并为该节点分配任务。
[0104]
在蚁群优化算法中,信息素是局部和全局更新的。利用以下公式更新局部信息素。
[0105][0106]
τ
ij
表示节点i到节点j的信息素,当每只蚂蚁穿过一条边缘ij时,ρ是恒定的信息素蒸发系数,τ
ij
是边缘ij上的初始信息素。信息素的第二个层次是全局信息素,它发生在每次迭代结束时,这时所有蚂蚁都构建了路径。利用以下公式计算全局信息素,
[0107][0108]
m表示蚂蚁数量,是蚂蚁k在一次迭代中在ij边上沉积的信息素。l
k
是蚂蚁k建立的轨迹t
i
的长度。随着时间的推移,值越大,所构建路径的每一条边上的信息素就越高,计算公式如下:
[0109][0110][0111][0112]
使用上式计算完成时间,因为任务的开始时间取决于先前分配给相应机器的任务完成时间。当机器可用时,starttime
i
是随机分配任务i的时间,是在机器j上完成任务i的估计时间。
[0113]
下面对本发明中英文缩写的含义进行说明。
[0114]
qos表示服务质量。
[0115]
aco表示蚁群优化算法。
[0116]
svm表示支持向量机。
[0117]
vm表示虚拟机。
[0118]
sla表示服务等级协议
[0119]
实施例1:
[0120]
本实施例使用了多种类型文件,包括音频,视频,图像和文本发明件,每种类型数据使用比例相等。总共使用了100000个数据,其中70%的文件用于培训,其余30%用于测试。每种数据类文件大小不一,例如音频数据集为9gb,视频数据集为19gb,图像数据集为14gb,文本数据集为6gb。在整个实验过程中使用的是uci和youtube的公开数据集。实验是在cloudsim 4.0中进行。在cloudsim 4.0中进行大量配置,用于运行模拟,使用数据中心(2

16)、主机(2

32)、虚拟机(5

1000)、任务(1000

14000)和任务大小(1mb

1gb)等资源。表2显示了本实验中使用数据集的具体情况。
[0121]
表2数据样本
[0122]
[0123]
下面对本实施例分类准确性测试进行说明。
[0124]
为了检查本发明提出模型的准确性,使用了表3中给出的性能指标,该指标显示了其从音频、视频、图像和文本中获得的平均性能。性能指标包括准确度、灵敏度、特异性、精确度、召回率、f

测度和g

均值。从表3可以看出本发明提出模型具有最高的分类性能。这表明该模型对文件的分类非常准确,这将对调度产生巨大的影响。
[0125]
表3性能指标的综合结果
[0126] 音频视频图片文本平均准确度0.980.9810.9740.990.984灵敏度0.9280.9360.9720.9980.959特异性0.990.9910.9450.9980.982精确度0.9540.9550.9820.9980.973召回率0.9280.9360.9720.9980.959f

测度0.940.9450.9770.9980.966g

均值0.9590.9630.9580.9990.97auc0.990.9730.9630.9980.981
[0127]
本实施中,为了与其它著名的分类器进行比较,我们选择了随机森林(rf)、朴素贝叶斯(nb)、k近邻(k

nn)和卷积神经网络(cnn)。表4显示了它们的分类性能。与其他分类器相比,本发明提出模型的总体性能更好。同样的效果可以在图3中看到,图3显示了该模型与其它模型的性能比较。数值介于[0,1]之间,0表示零精度,1表示最高精度。从数学上讲,该模型的平均准确率为96.60%,其次是cnn,准确率为95.80%,nb的准确率为94.40%,rf的准确率为93.60%,k

nn的准确率为93.20%。
[0128]
下面对本实施例负载均衡测试进行说明。
[0129]
通过考虑执行时间、迁移次数、优化时间、吞吐量时间和开销时间等参数,对本发明提出模型进行了评估。除此之外,本发明还将该模型与以下其它方法进行比较:
[0130]
acops:一种通用启发式混合算法,结合了aco和粒子群算法(pso)的优点,用于解决虚拟机调度问题。acops算法采用动态调度策略预测云计算中虚拟机的工作负载。
[0131]
cpso:改进多样性,在只关注成本的同时实现了良好的全局收敛性。该算法的缺点是只考虑一个因素,而不是多目标优化。
[0132]
qmpso:一种新的混合启发式算法,它结合了改进的pso和改进的q学习算法,用于云环境中的负载均衡。
[0133]
cso:一种通用启发式算法,属于群体智能家族,基于猫的自然行为。
[0134]
d

acoelb:一种基于aco算法的启发式算法,用于云计算中的负载均衡。
[0135]
图4显示了在随机抽取的14000个任务中,模型违反sla的平均数量。类似地,任务随机选择为1000、2000、3000、4000、5000、6000、7000、8000、9000、1000、11000、12000、13000和14000。据观察,本发明提出模型在不同的任务中很少违反sla。该模型的稳定性可以在图4中很容易地看到,而其它模型在每一次任务运行中都显示出大量的违规行为。通过考虑sla参数,如性能、内存和cpu周期使用率、对虚拟机的谨慎利用可以效地降低了违规行为。同样的效果是消耗更多的能量和更多的时间来优化解,增加了计算复杂度。因此,保持sla尽可能低是实现效率的正确方法之一。
[0136]
图5显示了从100000个数据集中随机抽取的14000个任务的模型平均迁移时间。据观察,本发明提出模型在不同的任务上完成的迁移时间最小。该模型的稳定性在图5中可以很容易地看到,而在其它模型上每一次任务运行都需要较长的迁移时间。每次运行时内存大小的变化都会影响虚拟机的迁移时间。由图6可见,其它算法占用了大量迁移时间,消耗的大量资源,因为在执行过程中,虚拟机的资源需求可能超过获取的资源,从而导致迁移不平衡和不可伸缩。
[0137]
图6显示了从100000个数据集中随机抽取的14000个任务的平均优化时间。据观察,本发明提出模型在不同的任务中尽可能早地优化了自身。在图6中可以很容易地看到该模型的稳定性,在其它算法上的每次任务运行都需要花费更多的时间进行优化。由于aco收敛速度快的优点,可以帮助该模型在尽可能早的时间内找到全局最优解。图8证明了本发明提出模型比其它算法更早优化。此外,快速优化的固有特性有助于aco以较少的计算时间解决复杂的问题。
[0138]
图7显示了从100000个数据集中随机抽取的14000个任务的平均吞吐量。据观察,本发明提出模型在不同任务上显示了最大吞吐量。这是因为该模型的最早响应时间有助于获更快的吞吐量,而其它算法的响应时间更高,从而导致低吞吐量。
[0139]
图8显示了从100000个数据集中随机抽取的14000个任务的平均开销时间。据观察,本发明提出模型在不同任务上的开销时间最少。较大的开销会导致性能下降,并增加系统的计算复杂性。因此,最小化开销是提高效率的更好方法。aco由于其在寻找全局最优解方面的高概率和高效率,可以显著减少开销时间。
[0140]
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1