CN112925608A - 基于机器学习的智能扩缩容方法、装置、设备及存储介质 - Google Patents

基于机器学习的智能扩缩容方法、装置、设备及存储介质 Download PDF

Info

Publication number
CN112925608A
CN112925608A CN202110219620.4A CN202110219620A CN112925608A CN 112925608 A CN112925608 A CN 112925608A CN 202110219620 A CN202110219620 A CN 202110219620A CN 112925608 A CN112925608 A CN 112925608A
Authority
CN
China
Prior art keywords
prediction
historical data
training set
model
time period
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN202110219620.4A
Other languages
English (en)
Other versions
CN112925608B (zh
Inventor
李子佳
牛珍珠
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Pingan Payment Technology Service Co Ltd
Original Assignee
Pingan Payment Technology Service Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Pingan Payment Technology Service Co Ltd filed Critical Pingan Payment Technology Service Co Ltd
Priority to CN202110219620.4A priority Critical patent/CN112925608B/zh
Publication of CN112925608A publication Critical patent/CN112925608A/zh
Application granted granted Critical
Publication of CN112925608B publication Critical patent/CN112925608B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5083Techniques for rebalancing the load in a distributed system
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/45562Creating, deleting, cloning virtual machine instances
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Artificial Intelligence (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Data Mining & Analysis (AREA)
  • Evolutionary Computation (AREA)
  • Medical Informatics (AREA)
  • Computing Systems (AREA)
  • Mathematical Physics (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Feedback Control In General (AREA)

Abstract

本发明公开了基于机器学习的智能扩缩容方法、装置、设备及存储介质,涉及人工智能,包括若检测到需求信息中所包括的预测时间段,获取对应的先验信息并通过将预测时间段输入至第一预测模型运算得到第一预测信息;将第一预测信息根据先验信息进行修正得到修正结果;获取与训练集中每一历史数据对应的负载资源参数以组成与训练集对应的调整后训练集,通过调整后训练集进行模型训练得到第二预测模型;将修正结果输入至第二预测模型进行运算得到第二预测结果以判断是否扩容或缩容。实现了通过预测业务需求量,并引入人为因素作为先验知识,可提前对未来一段时间内的计算资源调度规划,避免滞后性问题,为扩缩容的执行争取更多时间。

Description

基于机器学习的智能扩缩容方法、装置、设备及存储介质
技术领域
本发明涉及人工智能的智能决策技术领域,尤其涉及一种基于机器学习的智能扩缩容方法、装置、设备及存储介质。
背景技术
对于分布式计算集群,通过引入自动扩缩容功能,可有效地节省机器资源成本。当业务进入低谷期后,可以适当降低集群中的虚拟机总量,即实现缩容,以降低成本;当业务即将进入高峰期前,可适当增加虚拟机数量,即实现扩容,以满足业务需求。
当前阶段,现有自动扩缩容方案主要存在以下问题:
1、扩缩容的触发需要依据一定的监控数据,但现有方案中,监控项大多为计算资源的负载数据,如CPU占用率、内存使用率等,仅在资源负载相对较高后才会触发自动扩缩容功能,存在一定的滞后性;
2、由于没有在计算资源的负载情况与业务需求之间建立相应的对应关系,当存在已知的人为因素时,如业务部门对业务需求有一定的预判,该信息不能作为先验信息相对客观地对扩缩容策略进行指导修正;
3、扩缩容策略的制定,即扩缩容的数量,大多通过人工设定规则实现,存在较多的主观性;同时,由于人工选择扩缩容数量时,对扩缩容后的系统负载情况没有相对准确的预估与判断,为了保证系统稳定运行,一般情况下会选取偏大的扩容数量与较小的缩容数量,导致集群数量高于最佳容量,可能存在明显的资源浪费。
发明内容
本发明实施例提供了一种基于机器学习的智能扩缩容方法、装置、设备及存储介质,旨在解决现有技术中分布式计算集群在资源负载相对较高后才会触发自动扩缩容功能,存在一定的滞后性的问题。
第一方面,本发明实施例提供了一种基于机器学习的智能扩缩容方法,其包括:
获取监控指标对应的历史数据,将所述历史数据作为训练集进行模型训练,得到对应的第一预测模型;
若检测到运维平台中上传的需求信息中所包括的预测时间段,获取与所述预测时间段对应的先验信息,并通过将所述预测时间段输入至所述第一预测模型进行运算得到对应的第一预测信息;
将所述第一预测信息根据所述先验信息进行修正,得到与所述预测时间段对应的修正结果;
获取与所述训练集中每一历史数据对应的负载资源参数以组成与所述训练集对应的调整后训练集,通过调整后训练集进行模型训练,得到对应的第二预测模型;
将所述修正结果输入至所述第二预测模型进行运算,得到对应的第二预测结果;
判断所述第二预测结果是否满足预设的服务器扩容条件,或者是否满足预设的服务器缩容条件;
若所述第二预测结果满足所述服务器扩容条件,对应进行虚拟机扩容;以及
若所述第二预测结果满足所述服务器缩容条件,对应进行虚拟机缩容。
第二方面,本发明实施例提供了一种基于机器学习的智能扩缩容装置,其包括:
第一模型训练单元,用于获取监控指标对应的历史数据,将所述历史数据作为训练集进行模型训练,得到对应的第一预测模型;
第一预测单元,用于若检测到运维平台中上传的需求信息中所包括的预测时间段,获取与所述预测时间段对应的先验信息,并通过将所述预测时间段输入至所述第一预测模型进行运算得到对应的第一预测信息;
结果修正单元,用于将所述第一预测信息根据所述先验信息进行修正,得到与所述预测时间段对应的修正结果;
第二模型训练单元,用于获取与所述训练集中每一历史数据对应的负载资源参数以组成与所述训练集对应的调整后训练集,通过调整后训练集进行模型训练,得到对应的第二预测模型;
第二预测单元,用于将所述修正结果输入至所述第二预测模型进行运算,得到对应的第二预测结果;
条件判断单元,用于判断所述第二预测结果是否满足预设的服务器扩容条件,或者是否满足预设的服务器缩容条件;
扩容单元,用于若所述第二预测结果满足所述服务器扩容条件,对应进行虚拟机扩容;以及
缩容单元,用于若所述第二预测结果满足所述服务器缩容条件,对应进行虚拟机缩容。
第三方面,本发明实施例又提供了一种设备,其包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述第一方面所述的基于机器学习的智能扩缩容方法。
第四方面,本发明实施例还提供了一种计算机可读存储介质,其中所述计算机可读存储介质存储有计算机程序,所述计算机程序当被处理器执行时使所述处理器执行上述第一方面所述的基于机器学习的智能扩缩容方法。
本发明实施例提供了一种基于机器学习的智能扩缩容方法、装置、设备及存储介质,包括若检测到运维平台中上传的需求信息中所包括的预测时间段,获取与所述预测时间段对应的先验信息,并通过将所述预测时间段输入至所述第一预测模型进行运算得到对应的第一预测信息;将所述第一预测信息根据所述先验信息进行修正,得到与所述预测时间段对应的修正结果;获取与所述训练集中每一历史数据对应的负载资源参数以组成与所述训练集对应的调整后训练集,通过调整后训练集进行模型训练,得到对应的第二预测模型;将所述修正结果输入至所述第二预测模型进行运算,得到对应的第二预测结果。实现了通过预测业务需求量,并引入了人为因素作为先验知识,充分利用了有用信息,可提前对未来一段时间内的计算资源调度规划,避免了滞后性的问题,为扩缩容的执行过程争取了更多的时间。
附图说明
为了更清楚地说明本发明实施例技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的基于机器学习的智能扩缩容方法的应用场景示意图;
图2为本发明实施例提供的基于机器学习的智能扩缩容方法的流程示意图;
图3为本发明实施例提供的基于机器学习的智能扩缩容装置的示意性框图;
图4为本发明实施例提供的设备的示意性框图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
应当理解,当在本说明书和所附权利要求书中使用时,术语“包括”和“包含”指示所描述特征、整体、步骤、操作、元素和/或组件的存在,但并不排除一个或多个其它特征、整体、步骤、操作、元素、组件和/或其集合的存在或添加。
还应当理解,在此本发明说明书中所使用的术语仅仅是出于描述特定实施例的目的而并不意在限制本发明。如在本发明说明书和所附权利要求书中所使用的那样,除非上下文清楚地指明其它情况,否则单数形式的“一”、“一个”及“该”意在包括复数形式。
还应当进一步理解,在本发明说明书和所附权利要求书中使用的术语“和/或”是指相关联列出的项中的一个或多个的任何组合以及所有可能组合,并且包括这些组合。
请参阅图1和图2,图1为本发明实施例提供的基于机器学习的智能扩缩容方法的应用场景示意图;图2为本发明实施例提供的基于机器学习的智能扩缩容方法的流程示意图,该基于机器学习的智能扩缩容方法应用于服务器中,该方法通过安装于服务器中的应用软件进行执行。
如图2所示,该方法包括步骤S110~S180。
S110、获取监控指标对应的历史数据,将所述历史数据作为训练集进行模型训练,得到对应的第一预测模型。
在本实施例中,是在服务器的角度描述技术方案。服务器可以作为一个业务网站的服务器(如公司官网),用户端可以发起访问请求以访问该业务网站。如果有大量的用户端在短时间内同时访问服务器,可能导致其宕机,此时就需要及时的对服务器进行扩容。或者是长时间内只有少量用户端访问服务器,则可以进行服务器缩容。
在一实施例中,所述监控指标为被监测网址的每小时点击量,步骤S110包括:
由多个每小时点击量组成训练集,将训练集对待训练SARIMA模型进行模型训练得到SARIMA模型超参数,并得到对应的第一预测模型。
例如,以公司官网的每小时点击量作为监控指标,则在服务器中每小时结束后会统计这一小时内的累计点击量从而作为这一时间段对应的历史数据,当获取了大量的历史数据后则可以组成训练集以训练模型,从而得到第一预测模型。更具体的,训练集中将公司官网的每小时点击量用Qt (history)表示,第一预测模型采用SARIMA模型(SARIMA模型与ARIMA模型相比增加了周期性,ARIMA模型是差分整合移动平均自回归模型),训练SARIMA模型的过程可表示为:
Figure BDA0002954155880000051
其中,(p,d,q),(P,D,Q,S)为SARIMA模型超参数,与SARIMA模型参数数量成正比,用于对模型拟合能力进行调节。其中,p、d、q为非周期性超参数,p为自回归模型阶数,d为差分阶数,q为移动平均模型阶数;P、D、Q为相应的周期性参数;S表示周期时长。利用训练集训练SARIMA模型的过程就是得到模型参数的过程。
当完成了上述SARIMA模型的训练后,可以预测未来一段时间(如7天)内的点击量Qt (predict)
Qt (predict)=modelSARIMA.predict(duration=7days)
其中,modelSARIMA.predict()是SARIMA模型中的predict预测功能,其输入是待预测时间段。
S120、若检测到运维平台中上传的需求信息中所包括的预测时间段,获取与所述预测时间段对应的先验信息,并通过将所述预测时间段输入至所述第一预测模型进行运算得到对应的第一预测信息。
在本实施例中,例如服务器的运维人员通知公司的其他人员上传需求信息,之后其他人员使用在运维平台向服务器上传需求信息(例如计划在t1~t2时间段开展促销活动将导致网站每小时点击量上升至
Figure BDA0002954155880000061
)。当服务器接收到该需求信息后,解析出该需求信息中所包括的预测时间段(例如上述的t1~t2时间段)。
在一实施例中,步骤S120包括:
通过OCR识别获取所述需求信息中的目标关键词及目标关键词取值,将目标关键词取值作为与所述预测时间段对应的先验信息。
在本实施例中,当服务器接收到该需求信息后,可以通过OCR识别获取需求信息中的核心信息,例如获取预测时间段及其对应的具体取值,还可以获取每小时点击量上升这一关键词及其对应的取值
Figure BDA0002954155880000062
在获取了与所述预测时间段对应的先验信息
Figure BDA0002954155880000063
后,将所述预测时间段输入至所述第一预测模型进行运算,即可得到对应的第一预测信息,具体如下:
Figure BDA0002954155880000064
S130、将所述第一预测信息根据所述先验信息进行修正,得到与所述预测时间段对应的修正结果。
在本实施例中,当获取了第一预测信息和先验信息后,可以通过加权平均对第一预测信息进行修正,从而得到修正结果。
在一实施例中,步骤S130包括:
获取与所述第一预测信息对应的第一权重值,并获取与所述先验信息对应的第二权重值;
计算获取所述第一预测信息与所述第一权重值相乘对应的第一运算结果,计算获取所述先验信息与所述第二权重值相乘对应的第二运算结果;
将所述第一运算结果与所述第一运算结果求和,得到与所述预测时间段对应的修正结果。
在本实施例中,若将得到的第一权重值记为λ,且将得到的第二权重值记为1-λ,将修正结果记为
Figure BDA0002954155880000065
Figure BDA0002954155880000066
Figure BDA0002954155880000067
由于结合了先验知识,充分利用了有用信息,可提前对未来一段时间内的计算资源调度规划。通过所得到的修正结果,可以有效获知未来某一时间段(如t1~t2时间段)内的每小时点击量,也能知道这一时间段内的总点击量。
S140、获取与所述训练集中每一历史数据对应的负载资源参数以组成与所述训练集对应的调整后训练集,通过调整后训练集进行模型训练,得到对应的第二预测模型。
在本实施例中,在步骤S110中,服务器可以采集到每一历史数据以组成训练集,在每一条历史数据中至少包括了时间段(一般以1个小时为1个时间段)和该时间段对应的点击量,此时还对应获取与每一条历史数据分别对应的负载资源参数(如虚拟机数量,CPU使用量、内存使用量),此时即可将每一历史数据对应转换为调整历史数据,从而由调整历史数据组成调整后训练集。
在一实施例中,作为步骤S140的第一实施例,步骤S140包括:
获取所述训练集中每一历史数据对应的负载资源参数;其中,所述负载资源参数包括虚拟机数量,CPU使用量、内存使用量;
由每一历史数据对应的时间段、点击量、虚拟机数量、CPU使用量、内存使用量组成与各历史数据对应的调整历史数据,由各历史数据对应的调整历史数据组成调整后训练集;
由每一调整历史数据中的时间段、点击量、虚拟机数量组成各调整历史数据对应的输入特征,由每一调整历史数据中的CPU使用量、内存使用量组成各调整历史数据对应的输出特征;
获取待训练第二预测模型,将调整后训练集中各调整历史数据对应的输入特征和输出特征输入至待训练第二预测模型进行模型训练,得到对应的第二预测模型。
在本实施例中,为了基于训练集快速的得到调整后训练集,此时可以在服务器本地的数据库中查询每一条历史数据对应的负载资源参数,然后由每一调整历史数据中的时间段、点击量、虚拟机数量组成各调整历史数据对应的输入特征,由每一调整历史数据中的CPU使用量、内存使用量组成各调整历史数据对应的输出特征。即由每一条历史数据对应的时间段t、点击量xQPH、虚拟机数量nVM组成每一条历史数据对应的输入特征x=[xQPH nVM t]T(输入特征是一个一维列向量),由每一条历史数据对应的CPU使用量ycpu、内存使用量yMEN组成每一条历史数据对应的输出特征y=[ycpu yMEN]T(输出特征也是一个一维列向量),待训练第二预测模型modelNN的各层结构如下:
输入层:x=[xQPH nVM t]T
隐含层:h=σ(W(0)x+b(0));
输出层:y=σ(W(1)x+b(1));
真实值:y,=[ycpu yMEN]T
损失函数:
Figure BDA0002954155880000081
其中,W和b分别是待训练第二预测模型modelNN中需要训练得到的权重和偏置参数,σ是Relu激活函数,λ1是正则项损失权重。通过各调整历史数据对应的输入特征和输出特征对待训练第二预测模型modelNN进行模型训练后,即可得到模型中的权重和偏置参数,从而得到第二预测模型。
在一实施例中,作为步骤S140的第二实施例,步骤S140包括:
获取所述训练集中每一历史数据对应的负载资源参数;其中,所述负载资源参数包括虚拟机数量,CPU使用量、内存使用量;
由每一历史数据对应的时间段对应的one-hot编码值、点击量、虚拟机数量、CPU使用量、内存使用量组成与各历史数据对应的调整历史数据,由各历史数据对应的调整历史数据组成调整后训练集;
由每一调整历史数据中的时间段对应的one-hot编码值、点击量、虚拟机数量组成各调整历史数据对应的输入特征,由每一调整历史数据中的CPU使用量、内存使用量组成各调整历史数据对应的输出特征;
获取待训练第二预测模型,将调整后训练集中各调整历史数据对应的输入特征和输出特征输入至待训练第二预测模型进行模型训练,得到对应的第二预测模型。
即在步骤S140的另一实施例中,可以由每一调整历史数据中的时间段的one-hot编码值、点击量、虚拟机数量组成各调整历史数据对应的输入特征,即由每一条历史数据对应的时间段的one-hot编码值tone-hot、点击量xQPH、虚拟机数量nVM组成每一条历史数据对应的输入特征x=[xQPH nVM tone-hot]T,由每一条历史数据对应的CPU使用量ycpu、内存使用量yMEN组成每一条历史数据对应的输出特征y=[ycpu yMEN]T,待训练第二预测模型modelNN的各层结构如下:
输入层:x=[xQPH nVM tone-hot]T
隐含层:h=σ(W(0)x+b(0));
输出层:y=σ(W(1)x+b(1));
真实值:y,=[ycpu yMEN]T
损失函数:
Figure BDA0002954155880000082
其中,W和b分别是待训练第二预测模型modelNN中需要训练得到的权重和偏置参数,σ是Relu激活函数,λ1是正则项损失权重。通过各调整历史数据对应的输入特征和输出特征对待训练第二预测模型modelNN进行模型训练后,即可得到模型中的权重和偏置参数,从而得到第二预测模型。
S150、将所述修正结果输入至所述第二预测模型进行运算,得到对应的第二预测结果。
在本实施例中,为了根据修正结果获取在预测时间段对应的CPU使用量、内存使用量,此时可以将所述修正结果作为第二预测模型的输入值之一进行运算,得到对应的第二预测结果。
在一实施例中,与步骤S140的第二实施例相对应,步骤S150包括:
获取当前虚拟机数量和预测时间段对应的one-hot编码值,由所述修正结果、当前虚拟机数量和预测时间段对应的one-hot编码值组成当前输入特征;
将所述当前输入特征输入至所述第二预测模型进行运算,得到对应的第二预测结果。
在本实施例中,由于预测时间段对应的虚拟机数量当前是无法预测的,此时就以当前系统时间对应的当前虚拟机数量结合所述修正结果和预测时间段对应的one-hot编码值组成当前输入特征,此时得到的第二预测结果如下:
Figure BDA0002954155880000091
其中ycpu,predict表示CPU使用量在t1~t2时间段的预测值,yMEN,predict表示内存使用量在t1~t2时间段的预测值。
S160、判断所述第二预测结果是否满足预设的服务器扩容条件,或者是否满足预设的服务器缩容条件。
在本实施例中,为了根据第二预测结果判断是否需要对服务器的虚拟机扩容或是缩容,此时需要将所述第二预测结果带入预设的服务器扩容条件进行判断,或者是将所述第二预测结果带入预设的服务器缩容条件进行判断,一旦其满足其中一个条件则进行对应的操作。
S170、若所述第二预测结果满足预设的服务器扩容条件,对应进行虚拟机扩容。
在本实施例中,若预设的服务器扩容条件为第二预测结果中的任意一个参数值(例如ycpu,predict及yMEN,predict中的任意一个)超出对应的第一参数阈值(例如ycpu,predict对应的第一参数阈值为ycpu,max,yMEN,predict对应的第一参数阈值为yMEN,max,若ycpu,predict>ycpu,max或者是yMEN,predict>yMEN,max),则判定所述第二预测结果满足预设的服务器扩容条件,此时可以对服务器进虚拟机扩容。
具体实施时,对服务器的虚拟机扩容的第一实现方式是增加固定的虚拟机数量,例如预先设置一个虚拟机数量增加值ΔVM1,一旦某一预测结果满足服务器扩容条件,则在当前虚拟机数量nVM上增加虚拟机数量增加值ΔVM1即可完成虚拟机扩容。
具体实施时,对服务器的虚拟机扩容的第二实现方式是尝试不同的虚拟机增加数量,然后组成新的输入特征输入至第二预测模型进行预测,例如所述第二预测结果对应的输入特征是
Figure BDA0002954155880000101
此案时可以增加尝试用步进的方式来尝试出最佳的虚拟机增加数量。例如所设置的虚拟机增加步进数量为ΔVM2,此时可以将所述第二预测结果对应的输入特征是
Figure BDA0002954155880000102
Figure BDA0002954155880000103
的nVM上分别增加ΔVM2,2ΔVM2,3ΔVM2,……,NΔVM2,然后将
Figure BDA0002954155880000104
Figure BDA0002954155880000105
Figure BDA0002954155880000106
分别输入至第二预测模型进行预测,得到上述输入特征分别对应的预测结果,此时选取上述预测结果中满足预设的负载资源较佳运行条件(例如ycpu,min<ycpu,predict<ycpu,max)的目标预测结果,及该目标预测结果对应的目标虚拟机增加数量,此时在当前虚拟机数量nVM上增加目标虚拟机增加数量即可完成虚拟机扩容。
S180、若所述第二预测结果满足预设的服务器缩容条件,对应进行虚拟机缩容。
在本实施例中,对服务器进行缩容的过程与扩容过程原理类似,只是减少虚拟机数量,故进行虚拟机缩容的过程可以参考步骤S170中的扩容方式。
该方法实现了通过预测业务需求量,并引入了人为因素作为先验知识,充分利用了有用信息,可提前对未来一段时间内的计算资源调度规划,避免了滞后性的问题,为扩缩容的执行过程争取了更多的时间。
本发明实施例还提供一种基于机器学习的智能扩缩容装置,该基于机器学习的智能扩缩容装置用于执行前述基于机器学习的智能扩缩容方法的任一实施例。具体地,请参阅图3,图3是本发明实施例提供的基于机器学习的智能扩缩容装置的示意性框图。该基于机器学习的智能扩缩容装置100可以配置于服务器中。
如图3所示,基于机器学习的智能扩缩容装置100包括:第一模型训练单元110、第一预测单元120、结果修正单元130、第二模型训练单元140、第二预测单元150、条件判断单元160、扩容单元170、缩容单元180。
第一模型训练单元110,用于获取监控指标对应的历史数据,将所述历史数据作为训练集进行模型训练,得到对应的第一预测模型。
在本实施例中,是在服务器的角度描述技术方案。服务器可以作为一个业务网站的服务器(如公司官网),用户端可以发起访问请求以访问该业务网站。如果有大量的用户端在短时间内同时访问服务器,可能导致其宕机,此时就需要及时的对服务器进行扩容。或者是长时间内只有少量用户端访问服务器,则可以进行服务器缩容。
在一实施例中,所述监控指标为被监测网址的每小时点击量,第一模型训练单元110还用于:
由多个每小时点击量组成训练集,将训练集对待训练SARIMA模型进行模型训练得到SARIMA模型超参数,并得到对应的第一预测模型。
例如,以公司官网的每小时点击量作为监控指标,则在服务器中每小时结束后会统计这一小时内的累计点击量从而作为这一时间段对应的历史数据,当获取了大量的历史数据后则可以组成训练集以训练模型,从而得到第一预测模型。更具体的,训练集中将公司官网的每小时点击量用Qt (history)表示,第一预测模型采用SARIMA模型(SARIMA模型与ARIMA模型相比增加了周期性,ARIMA模型是差分整合移动平均自回归模型),训练SARIMA模型的过程可表示为:
Figure BDA0002954155880000111
其中,(p,d,q),(P,D,Q,S)为SARIMA模型超参数,与SARIMA模型参数数量成正比,用于对模型拟合能力进行调节。其中,p、d、q为非周期性超参数,p为自回归模型阶数,d为差分阶数,q为移动平均模型阶数;P、D、Q为相应的周期性参数;S表示周期时长。利用训练集训练SARIMA模型的过程就是得到模型参数的过程。
当完成了上述SARIMA模型的训练后,可以预测未来一段时间(如7天)内的点击量Qt (predict)
Qt (predict)=modelSARIMA.predict(duration=7days)
第一预测单元120,用于若检测到运维平台中上传的需求信息中所包括的预测时间段,获取与所述预测时间段对应的先验信息,并通过将所述预测时间段输入至所述第一预测模型进行运算得到对应的第一预测信息。
在本实施例中,例如服务器的运维人员通知公司的其他人员上传需求信息,之后其他人员使用在运维平台向服务器上传需求信息(例如计划在t1~t2时间段开展促销活动将导致网站每小时点击量上升至
Figure BDA0002954155880000112
)。当服务器接收到该需求信息后,解析出该需求信息中所包括的预测时间段(例如上述的t1~t2时间段)。
在一实施例中,第一预测单元120还用于:
通过OCR识别获取所述需求信息中的目标关键词及目标关键词取值,将目标关键词取值作为与所述预测时间段对应的先验信息。
在本实施例中,当服务器接收到该需求信息后,可以通过OCR识别获取需求信息中的核心信息,例如获取预测时间段及其对应的具体取值,还可以获取每小时点击量上升这一关键词及其对应的取值
Figure BDA0002954155880000121
在获取了与所述预测时间段对应的先验信息
Figure BDA0002954155880000122
后,将所述预测时间段输入至所述第一预测模型进行运算,即可得到对应的第一预测信息,具体如下:
Figure BDA0002954155880000123
结果修正单元130,用于将所述第一预测信息根据所述先验信息进行修正,得到与所述预测时间段对应的修正结果。
在本实施例中,当获取了第一预测信息和先验信息后,可以通过加权平均对第一预测信息进行修正,从而得到修正结果。
在一实施例中,结果修正单元130包括:
权重值获取单元,用于获取与所述第一预测信息对应的第一权重值,并获取与所述先验信息对应的第二权重值;
权重结果计算单元,用于计算获取所述第一预测信息与所述第一权重值相乘对应的第一运算结果,计算获取所述先验信息与所述第二权重值相乘对应的第二运算结果;
运算结果求和单元,用于将所述第一运算结果与所述第一运算结果求和,得到与所述预测时间段对应的修正结果。
在本实施例中,若将得到的第一权重值记为λ,且将得到的第二权重值记为1-λ,将修正结果记为
Figure BDA0002954155880000124
Figure BDA0002954155880000125
Figure BDA0002954155880000126
由于结合了先验知识,充分利用了有用信息,可提前对未来一段时间内的计算资源调度规划。通过所得到的修正结果,可以有效获知未来某一时间段(如t1~t2时间段)内的每小时点击量,也能知道这一时间段内的总点击量。
第二模型训练单元140,用于获取与所述训练集中每一历史数据对应的负载资源参数以组成与所述训练集对应的调整后训练集,通过调整后训练集进行模型训练,得到对应的第二预测模型。
在本实施例中,在第一模型训练单元110中,服务器可以采集到每一历史数据以组成训练集,在每一条历史数据中至少包括了时间段(一般以1个小时为1个时间段)和该时间段对应的点击量,此时还对应获取与每一条历史数据分别对应的负载资源参数(如虚拟机数量,CPU使用量、内存使用量),此时即可将每一历史数据对应转换为调整历史数据,从而由调整历史数据组成调整后训练集。
在一实施例中,作为第二模型训练单元140的第一实施例,第二模型训练单元140包括:
第一负载资源参数获取单元,用于获取所述训练集中每一历史数据对应的负载资源参数;其中,所述负载资源参数包括虚拟机数量,CPU使用量、内存使用量;
第一调整后训练集获取单元,用于由每一历史数据对应的时间段、点击量、虚拟机数量、CPU使用量、内存使用量组成与各历史数据对应的调整历史数据,由各历史数据对应的调整历史数据组成调整后训练集;
第一输出特征获取单元,用于由每一调整历史数据中的时间段、点击量、虚拟机数量组成各调整历史数据对应的输入特征,由每一调整历史数据中的CPU使用量、内存使用量组成各调整历史数据对应的输出特征;
第一训练单元,用于获取待训练第二预测模型,将调整后训练集中各调整历史数据对应的输入特征和输出特征输入至待训练第二预测模型进行模型训练,得到对应的第二预测模型。
在本实施例中,为了基于训练集快速的得到调整后训练集,此时可以在服务器本地的数据库中查询每一条历史数据对应的负载资源参数,然后由每一调整历史数据中的时间段、点击量、虚拟机数量组成各调整历史数据对应的输入特征,由每一调整历史数据中的CPU使用量、内存使用量组成各调整历史数据对应的输出特征。即由每一条历史数据对应的时间段t、点击量xQPH、虚拟机数量nVM组成每一条历史数据对应的输入特征x=[xQPH nVM t]T,由每一条历史数据对应的CPU使用量ycpu、内存使用量yMEN组成每一条历史数据对应的输出特征y,=[ycpu yMEN]T,待训练第二预测模型modelNN的各层结构如下:
输入层:x=[xQPH nVM t]T
隐含层:h=σ(W(0)x+b(0));
输出层:y=σ(W(1)x+b(1));
真实值:y,=[ycpu yMEN]T
损失函数:
Figure BDA0002954155880000131
其中,W和b分别是待训练第二预测模型modelNN中需要训练得到的权重和偏置参数,σ是Relu激活函数,λ1是正则项损失权重。通过各调整历史数据对应的输入特征和输出特征对待训练第二预测模型modelNN进行模型训练后,即可得到模型中的权重和偏置参数,从而得到第二预测模型。
在一实施例中,作为第二模型训练单元140的第二实施例,第二模型训练单元140包括:
第二负载资源参数获取单元,用于获取所述训练集中每一历史数据对应的负载资源参数;其中,所述负载资源参数包括虚拟机数量,CPU使用量、内存使用量;
第二调整后训练集获取单元,用于由每一历史数据对应的时间段对应的one-hot编码值、点击量、虚拟机数量、CPU使用量、内存使用量组成与各历史数据对应的调整历史数据,由各历史数据对应的调整历史数据组成调整后训练集;
第二输出特征获取单元,用于由每一调整历史数据中的时间段对应的one-hot编码值、点击量、虚拟机数量组成各调整历史数据对应的输入特征,由每一调整历史数据中的CPU使用量、内存使用量组成各调整历史数据对应的输出特征;
第二训练单元,用于获取待训练第二预测模型,将调整后训练集中各调整历史数据对应的输入特征和输出特征输入至待训练第二预测模型进行模型训练,得到对应的第二预测模型。
即在第二模型训练单元140的另一实施例中,可以由每一调整历史数据中的时间段的one-hot编码值、点击量、虚拟机数量组成各调整历史数据对应的输入特征,即由每一条历史数据对应的时间段的one-hot编码值tone-hot、点击量xQPH、虚拟机数量nVM组成每一条历史数据对应的输入特征x=[xQPH nVM tone-hot]T,由每一条历史数据对应的CPU使用量ycpu、内存使用量yMEN组成每一条历史数据对应的输出特征y,=[ycpu yMEN]T,待训练第二预测模型modelNN的各层结构如下:
输入层:x=[xQPH nVM tone-hot]T
隐含层:h=σ(W(0)x+b(0));
输出层:y=σ(W(1)x+b(1));
真实值:y,=[ycpu yMEN]T
损失函数:
Figure BDA0002954155880000141
其中,W和b分别是待训练第二预测模型modelNN中需要训练得到的权重和偏置参数,σ是Relu激活函数,λ1是正则项损失权重。通过各调整历史数据对应的输入特征和输出特征对待训练第二预测模型modelNN进行模型训练后,即可得到模型中的权重和偏置参数,从而得到第二预测模型。
第二预测单元150,用于将所述修正结果输入至所述第二预测模型进行运算,得到对应的第二预测结果。
在本实施例中,为了根据修正结果获取在预测时间段对应的CPU使用量、内存使用量,此时可以将所述修正结果作为第二预测模型的输入值之一进行运算,得到对应的第二预测结果。
在一实施例中,与第二模型训练单元140的第二实施例相对应,第二预测单元150包括:
当前输入特征获取单元,用于获取当前虚拟机数量和预测时间段对应的one-hot编码值,由所述修正结果、当前虚拟机数量和预测时间段对应的one-hot编码值组成当前输入特征;
第二预算结果运算单元,用于将所述当前输入特征输入至所述第二预测模型进行运算,得到对应的第二预测结果。
在本实施例中,由于预测时间段对应的虚拟机数量当前是无法预测的,此时就以当前系统时间对应的当前虚拟机数量结合所述修正结果和预测时间段对应的one-hot编码值组成当前输入特征,此时得到的第二预测结果如下:
Figure BDA0002954155880000151
条件判断单元160,用于判断所述第二预测结果是否满足预设的服务器扩容条件,或者是否满足预设的服务器缩容条件。
在本实施例中,为了根据第二预测结果判断是否需要对服务器的虚拟机扩容或是缩容,此时需要将所述第二预测结果带入预设的服务器扩容条件进行判断,或者是将所述第二预测结果带入预设的服务器缩容条件进行判断,一旦其满足其中一个条件则进行对应的操作。
扩容单元170,用于若所述第二预测结果满足预设的服务器扩容条件,对应进行虚拟机扩容。
在本实施例中,若预设的服务器扩容条件为第二预测结果中的任意一个参数值(例如ycpu,predict及yMEN,predict中的任意一个)超出对应的第一参数阈值(例如ycpu,predict对应的第一参数阈值为ycpu,max,yMEN,predict对应的第一参数阈值为yMEN,max,若ycpu,predict>ycpu,max或者是yMEN,predict>yMEN,max),则判定所述第二预测结果满足预设的服务器扩容条件,此时可以对服务器进虚拟机扩容。
具体实施时,对服务器的虚拟机扩容的第一实现方式是增加固定的虚拟机数量,例如预先设置一个虚拟机数量增加值ΔVM1,一旦某一预测结果满足服务器扩容条件,则在当前虚拟机数量nVM上增加虚拟机数量增加值ΔVM1即可完成虚拟机扩容。
具体实施时,对服务器的虚拟机扩容的第二实现方式是尝试不同的虚拟机增加数量,然后组成新的输入特征输入至第二预测模型进行预测,例如所述第二预测结果对应的输入特征是
Figure BDA0002954155880000161
此案时可以增加尝试用步进的方式来尝试出最佳的虚拟机增加数量。例如所设置的虚拟机增加步进数量为ΔVM2,此时可以将所述第二预测结果对应的输入特征是
Figure BDA0002954155880000162
Figure BDA0002954155880000163
的nVM上分别增加ΔVM2,2ΔVM2,3ΔVM2,……,NΔVM2,然后将
Figure BDA0002954155880000164
Figure BDA0002954155880000165
Figure BDA0002954155880000166
分别输入至第二预测模型进行预测,得到上述输入特征分别对应的预测结果,此时选取上述预测结果中满足预设的负载资源较佳运行条件(例如ycpu,min<ycpu,predict<ycpu,max)的目标预测结果,及该目标预测结果对应的目标虚拟机增加数量,此时在当前虚拟机数量nVM上增加目标虚拟机增加数量即可完成虚拟机扩容。
缩容单元180,用于若所述第二预测结果满足预设的服务器缩容条件,对应进行虚拟机缩容。
在本实施例中,对服务器进行缩容的过程与扩容过程原理类似,只是减少虚拟机数量,故进行虚拟机缩容的过程可以参考步骤S170中的扩容方式。
该装置实现了通过预测业务需求量,并引入了人为因素作为先验知识,充分利用了有用信息,可提前对未来一段时间内的计算资源调度规划,避免了滞后性的问题,为扩缩容的执行过程争取了更多的时间。
上述基于机器学习的智能扩缩容装置可以实现为计算机程序的形式,该计算机程序可以在如图4所示的设备上运行。
请参阅图4,图4是本发明实施例提供的设备的示意性框图。该设备500是服务器,服务器可以是独立的服务器,也可以是多个服务器组成的服务器集群。
参阅图4,该设备500包括通过系统总线501连接的处理器502、存储器和网络接口505,其中,存储器可以包括非易失性存储介质503和内存储器504。
该非易失性存储介质503可存储操作系统5031和计算机程序5032。该计算机程序5032被执行时,可使得处理器502执行基于机器学习的智能扩缩容方法。
该处理器502用于提供计算和控制能力,支撑整个设备500的运行。
该内存储器504为非易失性存储介质503中的计算机程序5032的运行提供环境,该计算机程序5032被处理器502执行时,可使得处理器502执行基于机器学习的智能扩缩容方法。
该网络接口505用于进行网络通信,如提供数据信息的传输等。本领域技术人员可以理解,图4中示出的结构,仅仅是与本发明方案相关的部分结构的框图,并不构成对本发明方案所应用于其上的设备500的限定,具体的设备500可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
其中,所述处理器502用于运行存储在存储器中的计算机程序5032,以实现本发明实施例公开的基于机器学习的智能扩缩容方法。
本领域技术人员可以理解,图4中示出的设备的实施例并不构成对设备具体构成的限定,在其他实施例中,设备可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。例如,在一些实施例中,设备可以仅包括存储器及处理器,在这样的实施例中,存储器及处理器的结构及功能与图4所示实施例一致,在此不再赘述。
应当理解,在本发明实施例中,处理器502可以是中央处理单元(CentralProcessing Unit,CPU),该处理器502还可以是其他通用处理器、数字信号处理器(DigitalSignal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现成可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。其中,通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
在本发明的另一实施例中提供计算机可读存储介质。该计算机可读存储介质可以为非易失性的计算机可读存储介质。该计算机可读存储介质存储有计算机程序,其中计算机程序被处理器执行时实现本发明实施例公开的基于机器学习的智能扩缩容方法。
所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,上述描述的设备、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
在本发明所提供的几个实施例中,应该理解到,所揭露的设备、装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为逻辑功能划分,实际实现时可以有另外的划分方式,也可以将具有相同功能的单元集合成一个单元,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另外,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口、装置或单元的间接耦合或通信连接,也可以是电的,机械的或其它的形式连接。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本发明实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以是两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分,或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到各种等效的修改或替换,这些修改或替换都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以权利要求的保护范围为准。

Claims (10)

1.一种基于机器学习的智能扩缩容方法,其特征在于,包括:
获取监控指标对应的历史数据,将所述历史数据作为训练集进行模型训练,得到对应的第一预测模型;
若检测到运维平台中上传的需求信息中所包括的预测时间段,获取与所述预测时间段对应的先验信息,并通过将所述预测时间段输入至所述第一预测模型进行运算得到对应的第一预测信息;
将所述第一预测信息根据所述先验信息进行修正,得到与所述预测时间段对应的修正结果;
获取与所述训练集中每一历史数据对应的负载资源参数以组成与所述训练集对应的调整后训练集,通过调整后训练集进行模型训练,得到对应的第二预测模型;
将所述修正结果输入至所述第二预测模型进行运算,得到对应的第二预测结果;
判断所述第二预测结果是否满足预设的服务器扩容条件,或者是否满足预设的服务器缩容条件;
若所述第二预测结果满足所述服务器扩容条件,对应进行虚拟机扩容;以及
若所述第二预测结果满足所述服务器缩容条件,对应进行虚拟机缩容。
2.根据权利要求1所述的基于机器学习的智能扩缩容方法,其特征在于,所述监控指标为被监测网址的每小时点击量;
所述将所述历史数据作为训练集进行模型训练,得到对应的第一预测模型,包括:
由多个每小时点击量组成训练集,将训练集对待训练SARIMA模型进行模型训练得到SARIMA模型超参数,并得到对应的第一预测模型。
3.根据权利要求1所述的基于机器学习的智能扩缩容方法,其特征在于,所述获取与所述预测时间段对应的先验信息,包括:
通过OCR识别获取所述需求信息中的目标关键词及目标关键词取值,将目标关键词取值作为与所述预测时间段对应的先验信息。
4.根据权利要求1所述的基于机器学习的智能扩缩容方法,其特征在于,所述将所述第一预测信息根据所述先验信息进行修正,得到与所述预测时间段对应的修正结果,包括:
获取与所述第一预测信息对应的第一权重值,并获取与所述先验信息对应的第二权重值;
计算获取所述第一预测信息与所述第一权重值相乘对应的第一运算结果,计算获取所述先验信息与所述第二权重值相乘对应的第二运算结果;
将所述第一运算结果与所述第一运算结果求和,得到与所述预测时间段对应的修正结果。
5.根据权利要求1所述的基于机器学习的智能扩缩容方法,其特征在于,所述获取与所述训练集中每一历史数据对应的负载资源参数以组成与所述训练集对应的调整后训练集,通过调整后训练集进行模型训练,得到对应的第二预测模型,包括:
获取所述训练集中每一历史数据对应的负载资源参数;其中,所述负载资源参数包括虚拟机数量,CPU使用量、内存使用量;
由每一历史数据对应的时间段、点击量、虚拟机数量、CPU使用量、内存使用量组成与各历史数据对应的调整历史数据,由各历史数据对应的调整历史数据组成调整后训练集;
由每一调整历史数据中的时间段、点击量、虚拟机数量组成各调整历史数据对应的输入特征,由每一调整历史数据中的CPU使用量、内存使用量组成各调整历史数据对应的输出特征;
获取待训练第二预测模型,将调整后训练集中各调整历史数据对应的输入特征和输出特征输入至待训练第二预测模型进行模型训练,得到对应的第二预测模型。
6.根据权利要求1所述的基于机器学习的智能扩缩容方法,其特征在于,所述获取与所述训练集中每一历史数据对应的负载资源参数以组成与所述训练集对应的调整后训练集,通过调整后训练集进行模型训练,得到对应的第二预测模型,包括:
获取所述训练集中每一历史数据对应的负载资源参数;其中,所述负载资源参数包括虚拟机数量,CPU使用量、内存使用量;
由每一历史数据对应的时间段对应的one-hot编码值、点击量、虚拟机数量、CPU使用量、内存使用量组成与各历史数据对应的调整历史数据,由各历史数据对应的调整历史数据组成调整后训练集;
由每一调整历史数据中的时间段对应的one-hot编码值、点击量、虚拟机数量组成各调整历史数据对应的输入特征,由每一调整历史数据中的CPU使用量、内存使用量组成各调整历史数据对应的输出特征;
获取待训练第二预测模型,将调整后训练集中各调整历史数据对应的输入特征和输出特征输入至待训练第二预测模型进行模型训练,得到对应的第二预测模型。
7.根据权利要求6所述的基于机器学习的智能扩缩容方法,其特征在于,所述将所述修正结果输入至所述第二预测模型进行运算,得到对应的第二预测结果,包括:
获取当前虚拟机数量和预测时间段对应的one-hot编码值,由所述修正结果、当前虚拟机数量和预测时间段对应的one-hot编码值组成当前输入特征;
将所述当前输入特征输入至所述第二预测模型进行运算,得到对应的第二预测结果。
8.一种基于机器学习的智能扩缩容装置,其特征在于,包括:
第一模型训练单元,用于获取监控指标对应的历史数据,将所述历史数据作为训练集进行模型训练,得到对应的第一预测模型;
第一预测单元,用于若检测到运维平台中上传的需求信息中所包括的预测时间段,获取与所述预测时间段对应的先验信息,并通过将所述预测时间段输入至所述第一预测模型进行运算得到对应的第一预测信息;
结果修正单元,用于将所述第一预测信息根据所述先验信息进行修正,得到与所述预测时间段对应的修正结果;
第二模型训练单元,用于获取与所述训练集中每一历史数据对应的负载资源参数以组成与所述训练集对应的调整后训练集,通过调整后训练集进行模型训练,得到对应的第二预测模型;
第二预测单元,用于将所述修正结果输入至所述第二预测模型进行运算,得到对应的第二预测结果;
条件判断单元,用于判断所述第二预测结果是否满足预设的服务器扩容条件,或者是否满足预设的服务器缩容条件;
扩容单元,用于若所述第二预测结果满足所述服务器扩容条件,对应进行虚拟机扩容;以及
缩容单元,用于若所述第二预测结果满足所述服务器缩容条件,对应进行虚拟机缩容。
9.一种设备,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如权利要求1至7中任一项所述的基于机器学习的智能扩缩容方法。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机程序,所述计算机程序当被处理器执行时使所述处理器执行如权利要求1至7任一项所述的基于机器学习的智能扩缩容方法。
CN202110219620.4A 2021-02-26 2021-02-26 基于机器学习的智能扩缩容方法、装置、设备及存储介质 Active CN112925608B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110219620.4A CN112925608B (zh) 2021-02-26 2021-02-26 基于机器学习的智能扩缩容方法、装置、设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110219620.4A CN112925608B (zh) 2021-02-26 2021-02-26 基于机器学习的智能扩缩容方法、装置、设备及存储介质

Publications (2)

Publication Number Publication Date
CN112925608A true CN112925608A (zh) 2021-06-08
CN112925608B CN112925608B (zh) 2023-05-30

Family

ID=76172330

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110219620.4A Active CN112925608B (zh) 2021-02-26 2021-02-26 基于机器学习的智能扩缩容方法、装置、设备及存储介质

Country Status (1)

Country Link
CN (1) CN112925608B (zh)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113537809A (zh) * 2021-07-28 2021-10-22 深圳供电局有限公司 一种用于深度学习中资源扩容的主动决策方法及系统
CN113642638A (zh) * 2021-08-12 2021-11-12 云知声智能科技股份有限公司 容量调整方法、模型的训练方法、装置、设备、存储介质
CN113672335A (zh) * 2021-07-08 2021-11-19 浙江一山智慧医疗研究有限公司 容器调度方法、装置、电子装置和存储介质
CN114968603A (zh) * 2022-08-03 2022-08-30 沐曦集成电路(上海)有限公司 一种支持多档负载平衡的容量检测方法及装置
CN115643180A (zh) * 2022-12-26 2023-01-24 北京数原数字化城市研究中心 一种弹性扩容方法及装置
CN115827253A (zh) * 2023-02-06 2023-03-21 青软创新科技集团股份有限公司 一种芯片资源算力分配方法、装置、设备及存储介质
CN116414662A (zh) * 2023-04-24 2023-07-11 山东溯源安全科技有限公司 一种存储空间扩容提示方法、装置、电子设备及存储介质

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104182801A (zh) * 2013-05-22 2014-12-03 阿里巴巴集团控股有限公司 一种预测网站访问量的方法及设备
CN104574160A (zh) * 2015-01-29 2015-04-29 深圳市英威诺科技有限公司 一种广告流量平滑控制的方法
CN108304355A (zh) * 2018-02-08 2018-07-20 北京工业大学 一种基于sarima-wnn模型预测弹性云计算资源的方法
CN108984304A (zh) * 2018-07-11 2018-12-11 广东亿迅科技有限公司 基于回归方程的服务器扩容计算方法及装置
CN111638959A (zh) * 2020-06-02 2020-09-08 山东汇贸电子口岸有限公司 云环境下基于负载回归预测的弹性伸缩方法及可读存储介质
WO2020206705A1 (zh) * 2019-04-10 2020-10-15 山东科技大学 一种基于集群节点负载状态预测的作业调度方法

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104182801A (zh) * 2013-05-22 2014-12-03 阿里巴巴集团控股有限公司 一种预测网站访问量的方法及设备
CN104574160A (zh) * 2015-01-29 2015-04-29 深圳市英威诺科技有限公司 一种广告流量平滑控制的方法
CN108304355A (zh) * 2018-02-08 2018-07-20 北京工业大学 一种基于sarima-wnn模型预测弹性云计算资源的方法
CN108984304A (zh) * 2018-07-11 2018-12-11 广东亿迅科技有限公司 基于回归方程的服务器扩容计算方法及装置
WO2020206705A1 (zh) * 2019-04-10 2020-10-15 山东科技大学 一种基于集群节点负载状态预测的作业调度方法
CN111638959A (zh) * 2020-06-02 2020-09-08 山东汇贸电子口岸有限公司 云环境下基于负载回归预测的弹性伸缩方法及可读存储介质

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113672335A (zh) * 2021-07-08 2021-11-19 浙江一山智慧医疗研究有限公司 容器调度方法、装置、电子装置和存储介质
CN113537809A (zh) * 2021-07-28 2021-10-22 深圳供电局有限公司 一种用于深度学习中资源扩容的主动决策方法及系统
CN113642638A (zh) * 2021-08-12 2021-11-12 云知声智能科技股份有限公司 容量调整方法、模型的训练方法、装置、设备、存储介质
CN114968603A (zh) * 2022-08-03 2022-08-30 沐曦集成电路(上海)有限公司 一种支持多档负载平衡的容量检测方法及装置
CN114968603B (zh) * 2022-08-03 2022-11-18 沐曦集成电路(上海)有限公司 一种支持多档负载平衡的容量检测方法及装置
CN115643180A (zh) * 2022-12-26 2023-01-24 北京数原数字化城市研究中心 一种弹性扩容方法及装置
CN115643180B (zh) * 2022-12-26 2023-03-28 北京数原数字化城市研究中心 一种弹性扩容方法及装置
CN115827253A (zh) * 2023-02-06 2023-03-21 青软创新科技集团股份有限公司 一种芯片资源算力分配方法、装置、设备及存储介质
CN116414662A (zh) * 2023-04-24 2023-07-11 山东溯源安全科技有限公司 一种存储空间扩容提示方法、装置、电子设备及存储介质
CN116414662B (zh) * 2023-04-24 2023-10-10 山东溯源安全科技有限公司 一种存储空间扩容提示方法、装置、电子设备及存储介质

Also Published As

Publication number Publication date
CN112925608B (zh) 2023-05-30

Similar Documents

Publication Publication Date Title
CN112925608A (zh) 基于机器学习的智能扩缩容方法、装置、设备及存储介质
CN112633316B (zh) 一种基于边界估值理论的负荷预测方法和装置
CN113434253B (zh) 集群资源调度方法、装置、设备及存储介质
CN114296867A (zh) 一种云平台的容器运行方法、系统及相关装置
CN111160617A (zh) 一种电力日负荷预测方法及装置
CN111105265A (zh) 基于客户信息的预测方法、装置、计算机设备及存储介质
CN115689069B (zh) 基于人工智能的电网调度控制方法及系统
CN110333991A (zh) 云平台任务最大资源使用率预测方法
CN116974768A (zh) 一种基于深度学习的算力调度方法
CN116185584A (zh) 一种基于深度强化学习的多租户数据库资源规划与调度方法
CN103646670A (zh) 一种评估存储系统性能的方法和设备
CN113918826B (zh) 投放信息处理方法、资源预测模型训练方法及装置
CN114924203A (zh) 一种电池soh预测分析方法及电动汽车
CN116643844B (zh) 面向电力超算云资源自动扩展的智能化管理系统及方法
CN116610416A (zh) 基于Kubernetes的负载预测型弹性伸缩系统及方法
CN115328953A (zh) 信息处理方法、装置、电子设备及存储介质
CN110222879B (zh) 一种考虑置信区间的系统-母线负荷预测协调方法及装置
CN110942195A (zh) 一种用电负荷预测方法及装置
CN112667394A (zh) 一种计算机资源利用率优化方法
CN112685390A (zh) 数据库实例管理方法及装置、计算设备
CN112669091A (zh) 数据处理方法、装置及存储介质
CN113837782A (zh) 时间序列模型的周期项参数优化方法、装置、计算机设备
CN115412567B (zh) 一种基于时间序列预测的云平台存储容量规划系统及方法
CN117873701A (zh) 一种基于Autoformer的云计算平台弹性伸缩智能伸缩方法
CN113010917B (zh) 面向同期线损管理系统具有隐私保护的降损分析处理方法

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant