CN112486687B - 一种基于多任务学习时间序列的云平台工作负载预测方法 - Google Patents

一种基于多任务学习时间序列的云平台工作负载预测方法 Download PDF

Info

Publication number
CN112486687B
CN112486687B CN202011396557.3A CN202011396557A CN112486687B CN 112486687 B CN112486687 B CN 112486687B CN 202011396557 A CN202011396557 A CN 202011396557A CN 112486687 B CN112486687 B CN 112486687B
Authority
CN
China
Prior art keywords
utilization rate
queue
time
data
workload
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.)
Active
Application number
CN202011396557.3A
Other languages
English (en)
Other versions
CN112486687A (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.)
Hubei Central China Technology Development Of Electric Power Co ltd
Original Assignee
Chongqing University of Post and Telecommunications
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 Chongqing University of Post and Telecommunications filed Critical Chongqing University of Post and Telecommunications
Priority to CN202011396557.3A priority Critical patent/CN112486687B/zh
Publication of CN112486687A publication Critical patent/CN112486687A/zh
Application granted granted Critical
Publication of CN112486687B publication Critical patent/CN112486687B/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/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
    • G06F9/505Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals considering the load
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3003Monitoring arrangements specially adapted to the computing system or computing system component being monitored
    • G06F11/3006Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system is distributed, e.g. networked systems, clusters, multiprocessor systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3051Monitoring arrangements for monitoring the configuration of the computing system or of the computing system component, e.g. monitoring the presence of processing resources, peripherals, I/O links, software programs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3065Monitoring arrangements determined by the means or processing involved in reporting the monitored data
    • G06F11/3072Monitoring arrangements determined by the means or processing involved in reporting the monitored data where the reporting involves data filtering, e.g. pattern matching, time or event triggered, adaptive or policy-based reporting
    • 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/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5011Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals
    • G06F9/5016Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals the resource being the memory
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/049Temporal neural networks, e.g. delay elements, oscillating neurons or pulsed inputs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2209/00Indexing scheme relating to G06F9/00
    • G06F2209/50Indexing scheme relating to G06F9/50
    • G06F2209/508Monitor

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Computing Systems (AREA)
  • Mathematical Physics (AREA)
  • Biomedical Technology (AREA)
  • Artificial Intelligence (AREA)
  • General Health & Medical Sciences (AREA)
  • Molecular Biology (AREA)
  • Data Mining & Analysis (AREA)
  • Computational Linguistics (AREA)
  • Biophysics (AREA)
  • Evolutionary Computation (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Quality & Reliability (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Debugging And Monitoring (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

本发明涉及大数据处理技术和云平台资源负载技术领域,特别涉及一种基于多任务学习时间序列的云平台工作负载预测方法,包括获取工作负载数据,采用滑动窗口的方法划分数据,对划分的每个时间间隔的数据构建基础特征、交叉特征、时序趋势特征、用户行为关联特征,并采用二维SHAP进行特征选择;将选择的特征输入传入TCN‑LSTM模型中,采用多任务学习的方式,共有三个任务,分别为:预测T时间段的CPU平均利用率、预测T时间段的正在运行的作业数、预测T时间段的平均内存利用率;本发明通过对工作负载相关的指标的历史趋势进行把控,而不单一只关注当前监控点的工作负载情况,快速的感知业务的波峰波谷,从而对云平台的资源进行动态的调度。

Description

一种基于多任务学习时间序列的云平台工作负载预测方法
技术领域
本发明涉及大数据处理技术和云平台资源负载技术领域,特别涉及一种基于多任务学习时间序列的云平台工作负载预测方法。
背景技术
云计算时代,一些架构可根据业务工作负载进行弹性资源调整,这种方式可以有效减少资源在空闲期的浪费以及在繁忙期的业务过载,同时给用户带来极致的性价比服务。在弹性资源调度的背后,对工作负载的预测是一个重要环节。如何快速感知业务的波峰波谷,是对资源动态调整需要应该考虑的问题。
传统的资源控制系统以阈值作为决策依据,只关注当前监控点的工作负载情况,缺少对历史数据以及工作负载趋势的把控,且一般只关注平台工作负载数据,缺少对用户行为的把控;目前很多云平台用户提交作业需要申请队列资源,那么只关注当前监控点的工作负载情况会造成滞后问题;若在某个时间段的工作负载呈现一个上升的趋势,如果只考虑这个时间段的工作负载这个单一指标进行判断,而不考虑每个任务的任务类型、监控数据、队列类型、队列状态等指标,可能会出现由于预测不准确而造成资源短缺或者资源浪费的情况。
发明内容
为了解决上述问题,本发明提出一种基于多任务学习时间序列的云平台工作负载预测方法,包括以下步骤:
获取工作负载数据,并对获取的数据进行预处理,工作负载数据至少包括队列类型、队列状态、磁盘类型、CPU利用率、内存利用率、作业数;
采用滑动窗口的方法划分数据,将当前时刻前24个小时划分为144个时间间隔,并用其预测当前时刻之后10个时间间隔的平均工作负载;
对划分的每个时间间隔的数据构建基础特征、交叉特征、时序趋势特征、用户行为关联特征,并采用二维SHAP进行特征选择;
将选择的特征输入传入TCN-LSTM模型中,采用多任务学习的方式,共有三个任务,分别为:预测T时间段的CPU平均利用率、预测T时间段的正在运行的作业数、预测T时间段的平均内存利用率。
进一步的,对获取的数据进行预处理包括:
对缺失的CPU利用率和内存利用率采用24小时内的CPU利用率和内存利用率进行线性加权得到的结果进行填充;
剔除数据集中24小时内已完成的作业数与CPU利用率和内存利用率成反比的数据;
对于每24个小时的数据采用三支决策的方法,对正在运行的作业数进行归一化操作。
进一步的,采用三支决策的方法进行归一化操作包括:
将当前24小时的工作负载分为平稳期、抖动期和波动期,对应三支决策中的正域、负域和边界域,对于处于负域的序列采用log平滑操作;
对于处于边界域的一个样本D,找到最近的K个样本,若K中处在正域的数据为N个,则处在负域的数据为K-N个,则可以得到样本D处于正域和负域的条件概率,引入代价最小化的原则直到边界域的所有样本划分完毕。
进一步的,工作负载时序趋势特征的获取包括:
对于每一个样本,每隔一个时间间隔对CPU利用率和内存利用率做一阶差分、二阶差分、三阶差分操作;
对一阶差分CPU利用率给予权重为0.6-0.8和一阶差分内存利用率给予权重0.2-0.4进行线性加权,得到组合一阶差分利用率;
对二阶差分CPU利用率给予权重为0.6-0.8和二阶差分内存利用率给予权重0.2-0.4进行线性加权,得到组合二阶差分利用率;
对三阶差分CPU利用率给予权重为0.6-0.8和一阶差分内存利用率给予权重0.2-0.4进行线性加权,得到组合三阶差分利用率;
将当前样本的CPU利用率和内存利用率作为特征,组合一阶差分利用率、组合二阶差分利用率、组合三阶差分利用率作为标签,传入LightGBM回归模型中,得到每个样本在每个时间间隔的组合工作负载时序趋势特征。
进一步的,用户行为关联特征的获取过程包括:
对于Q个队列,每个队列对应R个用户、每个用户对应N个作业,其中T在{1,2,3,…t}中取值,R在{1,2,3,…r}中取值,N在{1,2,3,…n}中取值;
对于处在不同队列的同一用户,在24小时内计算所有用户在不同队列的提交作业的时间间隔和申请的作业的总资源数量,求的每个用户的平均负载资源利用率作为权重Wj,计算每个队列每个用户的贡献值作为标签,每个队列的属性作为特征,传入LightGBM回归模型中得到用户在每个队列的关联度概率情况,将该关联度概率作为用户行为关联特征。
进一步的,多任务学习过程包括:
将工作负载作为三元组w=<Cd,t,Jd,t,Md,t>,其中Cd,t表示D天T时段的CPU平均利用率,Jd,t表示D天T时段的正在运行的作业数,Md,t表示D天T时段的内存平均利用率;
在TCN-LSTM模型后接入三个全连接网络预测三个任务,分别为Task A:预测D天T时间后的10个时间间隔的平均CPU利用率Cd,t,Cd,t+1,Cd,t+2,……Cd,t+9、Task B:预测D天T时间后的10个时间间隔的运行的作业数Jd,t,Jd,t+1,Jd,t+2,……Jd,t+9、Task C:预测D天T时间后的10个时间间隔的平均内存利用率Md,t,Md,t+1,Md,t+2,……Md,t+9
采用复合函数标签融合的方式依次计算10个时间间隔的工作负载情况,除了t时刻的输出,其他每个时刻的输出的隐藏层都为当前时刻的hidden和前一时刻状态的运算拼接,对于t+1时刻LSTM的hidden,前一时刻的具体运算为:
ht+1=f1(f2(Wht+bi)+bj)+ht
其中,f1为sigmoid函数,f2为傅里叶函数;W为t时刻隐藏层权重;ht为t时刻隐藏层的输出;bi为ht的偏置;bj为f2(Wht+bi)的偏置。
本发明中采用TCN-LSTM组合预测的方法,降低了工作负载预测误差值,提高了工作负载预测的精度;避免传统工作负载预测只使用单一指标进行预测,本发明采用多任务学习充分的了解工作负载的多种指标;通过加入对用户行为指标的把控,将云负载情况与用户行为联系起来,旨在通过对工作负载相关的指标的历史趋势进行把控,而不单一只关注当前监控点的工作负载情况,快速的感知业务的波峰波谷,从而对云平台的资源进行动态的调度。
附图说明
图1是本发明实施例提供的流程图;
图2是本发明实施例提供的复合函数标签融合;
图3是本发明实施例提供的算法流程图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明提出一种基于多任务学习时间序列的云平台工作负载预测方法,如图1,具体包括以下步骤:
获取工作负载数据,并对获取的数据进行预处理,工作负载数据至少包括队列类型、队列状态、磁盘类型、CPU利用率、内存利用率、作业数;
采用滑动窗口的方法划分数据,将当前时刻前24个小时划分为144个时间间隔,并用其预测当前时刻之后10个时间间隔的平均工作负载;
对划分的每个时间间隔的数据构建基础特征、交叉特征、时序趋势特征、用户行为关联特征,并采用二维SHAP进行特征选择;
将选择的特征输入传入TCN-LSTM模型中,采用多任务学习的方式,共有三个任务,分别为:预测T时间段的CPU平均利用率、预测T时间段的正在运行的作业数、预测T时间段的平均内存利用率。
表1
字段 类型 说明
QUEUE_ID INT 队列标识
USER_ID INT 用户标识
STATUS STRING 队列状态
TYPE STRING 类型
CPU_USE FLOAT CPU利用率
MEMORY_USE FLOAT 内存利用率
JOB_ID INT 作业ID
JOB_STATUS STRING 作业状态
JOB_RUNNING_TIME STRING 作业运行时间
LAUNCHING_JOB_NUMS INT 等待执行的作业数
RUNNING_JOB_NUMS INT 正在执行的作业数
SUCCEED_JOB_NUMS INT 成功执行的作业数
CANCELLED_JOB_NUMS INT 取消执行的作业数
FAILED_JOB_NUMS INT 失败执行的作业数
DISK_USE FLOAT 磁盘利用率
DISK_TYPE STRING 磁盘类型
本发明可选的性能监控数据如表1所示,本实施例工作负载数据包括云平台的性能监控数据包括队列信息数据、负载数据;所述队列信息数据至少包括队列类型、状态、磁盘类型等;所述负载数据至少包括CPU利用率、内存利用率、作业数。
本实施例对工作负载数据进行数据预处理操作,具体包括:
(1)工作负载数据来源于云平台的性能监控数据,从中得到多个队列的队列信息数据、负载数据;所述队列信息数据包括队列类型、状态、磁盘类型等;所述负载数据包括CPU利用率、内存利用率,等待执行、已经完成、正在运行、失败、取消的作业数。
(2)以当前时段云平台实际工作负载数据更新历史工作负载;
(3)对缺失的CPU利用率和内存利用率采用24小时内CPU利用率和内存利用率进行线性加权得到的结果进行填充;
(4)剔除数据集中24小时内运行作业数为0,但是CPU利用率,内存利用率很高的数据;剔除数据集中工作负载情况激增或者骤降(相较于前一时间序列,当前时间序列的负载增加或减少了大于等于3倍)的数据;
(5)对于每24个小时的数据采用三支决策的方法,对正在运行的作业数进行归一化操作,将CPU利用率、内存利用率和归一化的正在运行的作业数进行线性加权作为当前24小时的工作负载,将当前24小时的工作负载分为平稳期、抖动期和波动期,对应三支决策中的正域、负域和边界域,对于处于负域的序列采用log平滑操作,对于处于边界域的一个样本D,找到最近的K个样本,若K中处在正域的数据为N个,则处在负域的数据为K-N个,则可以得到样本D处于正域和负域的条件概率,引入代价最小化的原则直到边界域的所有样本划分完毕,重复以上步骤直至处理完所有数据。
在对工作负载数据进行数据划分操作时,采用滑动窗口的方法划分数据,步长为1,训练数据为24个小时144个时间间隔的数据,来预测下面10个时间间隔的每10分钟的平均工作负载,滑窗起到数据增强的作用;最终采用D天T时段前面的144个时间间隔的数据来预测D天T时间段(包括T)后面的10个时间间隔的工作负载。
对划分的每个时间间隔的数据构建基础特征、交叉特征、时序趋势特征、用户行为关联特征,其中基础特征包括每个队列CPU利用率、内存利用率、作业数的均值、最大值、最小值、方差等统计特征;所有队列的CPU利用率、作业数和内存利用率的总和、平均值等统计特征;CPU利用率、作业数、内存利用率最多、最少的时间段;磁盘类型、队列状态等类别特征;对CPU利用率、作业数、内存利用率进行二值化,超过0.5为1,小于等于0.5为0。
交叉特征的获取包括队列标识-队列类型24小时内CPU利用率、作业数、内存利用率的最大值、最小值、均值、总和;队列标识-队列状态24小时内CPU利用率、作业数、内存利用率的最大值、最小值、均值、总和;队列标识-队列状态-队列类型24小时内CPU利用率、作业数、内存利用率的最大值、最小值、均值、总和;队列标识-正在运行的作业数24小时内所占的CPU利用率的均值;队列标识-正在运行的作业数所占的内存利用率的均值;队列类型-磁盘利用率所占CPU利用率、作业数、内存利用率的均值。队列标识-成功执行的作业数24小时内所占的CPU利用率的均值;队列标识-成功执行的作业数所占的内存利用率的均值;队列标识-等待执行的作业数24小时内所占的CPU利用率的均值;队列标识-等待执行的作业所占的内存利用率的均值。
工作负载时序趋势特征的获取包括:
对于每一个样本,每隔一个时间间隔对CPU利用率和内存利用率做一阶差分、二阶差分、三阶差分操作,对一阶差分CPU利用率给予权重为0.6-0.8和一阶差分内存利用率给予权重0.2-0.4进行线性加权,得到组合一阶差分利用率;
同理得到二阶组合差分利用率和三阶组合差分利用率;
将当前样本的CPU利用率和内存利用率作为特征,组合一阶差分利用率、组合二阶差分利用率、组合三阶差分利用率作为标签,传入LightGBM回归模型中,得到每个样本在每个时间间隔的组合工作负载时序趋势特征。
用户行为关联特征的获取包括:对于Q个队列,每个队列对应R个用户、每个用户对应N个作业(其中T在{1,2,3,…t}中取值,R在{1,2,3,…r}中取值,N在{1,2,3,…n}中取值),对于处在不同队列的同一用户,在24小时内计算所有用户在不同队列的提交作业的时间间隔和申请的作业的总资源数量,求的每个用户的平均负载资源利用率作为权重Wj,对于T时间段的队列中每个用户的贡献值为
Figure GDA0003794621980000071
将得到的每个Tt作为标签,每个队列的属性作为特征,传入LightGBM回归模型中得到用户在每个队列的关联度概率情况。
采用二维SHAP进行特征选择,即去除二维SHAP值小于0的队列-用户的特征,第i个队列-用户组合、第j个特征的二维SHAP值表示为:
Figure GDA0003794621980000072
其中,
Figure GDA0003794621980000073
为第i个队列-用户组合,第j个特征的二维SHAP值;C表示所有用户-队列组合的集合;F表示所有特征的集合;M表示C去掉队列-用户组合i之后的所有可能存在的队列-用户子集;S表示F去掉特征j之后的所有可能存在的特征子集;|M|!表示M队列-用户组合集合的数量的阶乘;|S|!表示S特征集合中特征的数量的阶乘;[f(S,M)∪{i,j}(x(S,M)∪{i,j})-f(S,M)(x(S,M))]表示队列-用户组合i、特征j在队列-用户组合集合为M、特征集合为S的情况下的边际贡献。
将提取的特征进行归一化传入TCN-LSTM模型中,采用多任务学习的方式,共有三个任务,分别为:预测T时间段的CPU平均利用率,预测T时间段的作业数、预测T时间段的平均内存利用率;输入模型之前采用max-min标准化的方法对特征进行归一化,即取出特征中的最大最小值,对最大最小值求平均值替代原始特征中的最大最小值,避免最大最小值是由噪声产生的带来的影响,使用对最大最小值平均后的数据进行归一化。
将提取的工作负载特征归一化后,传入TCN-LSTM模型中,TCN采用因果卷积、膨胀卷积和残差模块能够更好的捕获时序信息;其中因果卷积不考虑未来的信息,所以不存在未来信息泄露的问题,而且追朔的信息越久远,隐藏层越多;膨胀卷积在标准的卷积中注入空洞,增加了感受野,让每个卷积输出都包含较大范围的信息;引入权重参数初始化和正则化层来解决梯度消失或者梯度爆炸的问题,使用残差模块来解决网络退化的问题;LSTM网络加入了门控单元,采用遗忘门、输入门和输出门来分别控制从细胞状态中丢弃的信息、在单元格状态下存储哪些信息、输出什么信息,来学习长期依赖关系。
本实施例,在TCN-LSTM模型中进行多任务学习过程包括:
将工作负载作为三元组w=<Cd,t,Jd,t,Md,t>,其中Cd,t表示D天T时段的CPU平均利用率,Jd,t表示D天T时段的正在运行的作业数,Md,t表示D天T时段的内存平均利用率;
在TCN-LSTM模型后接入三个全连接网络预测三个任务,分别为Task A:预测D天T时间后的10个时间间隔的平均CPU利用率Cd,t,Cd,t+1,Cd,t+2,……Cd,t+9、Task B:预测D天T时间后的10个时间间隔的运行的作业数Jd,t,Jd,t+1,Jd,t+2,……Jd,t+9、Task C:预测D天T时间后的10个时间间隔的平均内存利用率Md,t,Md,t+1,Md,t+2,……Md,t+9
采用复合函数标签融合的方式依次计算10个时间间隔的工作负载情况,除了t时刻的输出,其他每个时刻的输出的隐藏层都为当前时刻的hidden和前一时刻状态的运算拼接,对于t+1时刻LSTM的hidden,前一时刻的具体运算为:
ht+1=f1(f2(Wht+bi)+bj)+ht
其中,f1为sigmoid函数,f2为傅里叶函数;W为t时刻隐藏层权重;ht为t时刻隐藏层的输出;bi为ht的偏置;bj为f2(Wht+bi)的偏置。
尽管已经示出和描述了本发明的实施例,对于本领域的普通技术人员而言,可以理解在不脱离本发明的原理和精神的情况下可以对这些实施例进行多种变化、修改、替换和变型,本发明的范围由所附权利要求及其等同物限定。

Claims (5)

1.一种基于多任务学习时间序列的云平台工作负载预测方法,其特征在于,包括以下步骤:
获取工作负载数据,并对获取的数据进行预处理,工作负载数据至少包括队列类型、队列状态、磁盘类型、CPU利用率、内存利用率、作业数;
采用滑动窗口的方法划分数据,将当前时刻前24个小时划分为144个时间间隔,并用其预测当前时刻之后10个时间间隔的平均工作负载;
对划分的每个时间间隔的数据构建基础特征、交叉特征、时序趋势特征、用户行为关联特征,并采用二维SHAP进行特征选择;其中用户行为关联特征的获取过程包括:
对于Q个队列,每个队列对应R个用户、每个用户对应N个作业,其中,R在{1,2,3,…r}中取值,N在{1,2,3,…n}中取值;
对于处在不同队列的同一用户,在24小时内计算所有用户在不同队列的提交作业的时间间隔和申请的作业的总资源数量,求的每个用户的平均负载资源利用率作为权重Wj,计算每个队列每个用户的贡献值作为标签,每个队列的属性作为特征,传入LightGBM回归模型中得到用户在每个队列的关联度概率情况,将该关联度概率作为用户行为关联特征;
每个队列每个用户的贡献值表示为:
Figure FDA0003794621970000011
其中,Rj为第j个时刻的CPU利用率、内存利用率的线性加权;∈j为Rj的偏置;
将选择的特征输入传入TCN-LSTM模型中,采用多任务学习的方式,共有三个任务,分别为:预测T时间段的CPU平均利用率、预测T时间段的正在运行的作业数、预测T时间段的平均内存利用率,T在{1,2,3,…t}中取值;多任务学习过程包括以下步骤:
将工作负载作为三元组w=<Cd,t,Jd,t,Md,t>,其中Cd,t表示d天t时段的CPU平均利用率,Jd,t表示d天t时段的正在运行的作业数,Md,t表示d天t时段的内存平均利用率;
在TCN-LSTM模型后接入三个全连接网络预测三个任务,分别为Task A:预测d天T时间后的10个时间间隔的平均CPU利用率Cd,t,Cd,t+1,Cd,t+2,……Cd,t+9、Task B:预测d天T时间后的10个时间间隔的运行的作业数Jd,t,Jd,t+1,Jd,t+2,……Jd,t+9、Task C:预测d天T时间后的10个时间间隔的平均内存利用率Md,t,Md,t+1,Md,t+2,……Md,t+9
采用复合函数标签融合的方式依次计算10个时间间隔的工作负载情况,除了t时刻的输出,其他每个时刻的输出的隐藏层都为当前时刻的hidden和前一时刻状态的运算拼接,对于t+1时刻LSTM的hidden,前一时刻的具体运算为:
ht+1=f1(f2(Wht+bi)+bj)+ht
其中,f1为sigmoid函数,f2为傅里叶函数;W为t时刻隐藏层权重;ht为t时刻隐藏层的输出;bi为ht的偏置;bj为f2(Wht+bi)的偏置。
2.根据权利要求1所述的一种基于多任务学习时间序列的云平台工作负载预测方法,其特征在于,对获取的数据进行预处理包括:
对缺失的CPU利用率和内存利用率采用24小时内的CPU利用率和内存利用率进行线性加权得到的结果进行填充;
剔除数据集中24小时内已完成的作业数与CPU利用率和内存利用率成反比的数据;
对于每24个小时的数据采用三支决策的方法,对正在运行的作业数进行归一化操作。
3.根据权利要求2所述的一种基于多任务学习时间序列的云平台工作负载预测方法,其特征在于,采用三支决策的方法进行归一化操作包括:
将当前24小时的工作负载分为平稳期、抖动期和波动期,对应三支决策中的正域、负域和边界域,对于处于负域的序列采用log平滑操作;
对于处于边界域的一个样本D,找到最近的K个样本,若K中处在正域的数据为N个,则处在负域的数据为K-N个,则可以得到样本D处于正域和负域的条件概率,引入代价最小化的原则直到边界域的所有样本划分完毕。
4.根据权利要求1所述的一种基于多任务学习时间序列的云平台工作负载预测方法,其特征在于,工作负载时序趋势特征的获取包括:
对于每一个样本,每隔一个时间间隔对CPU利用率和内存利用率做一阶差分、二阶差分、三阶差分操作;
对一阶差分CPU利用率给予权重为0.6-0.8和一阶差分内存利用率给予权重0.2-0.4进行线性加权,得到组合一阶差分利用率;
对二阶差分CPU利用率给予权重为0.6-0.8和二阶差分内存利用率给予权重0.2-0.4进行线性加权,得到组合二阶差分利用率;
对三阶差分CPU利用率给予权重为0.6-0.8和一阶差分内存利用率给予权重0.2-0.4进行线性加权,得到组合三阶差分利用率;
将当前样本的CPU利用率和内存利用率作为特征,组合一阶差分利用率、组合二阶差分利用率、组合三阶差分利用率作为标签,传入LightGBM回归模型中,得到每个样本在每个时间间隔的组合工作负载时序趋势特征。
5.根据权利要求1所述的一种基于多任务学习时间序列的云平台工作负载预测方法,其特征在于,采用二维SHAP进行特征选择,即去除二维SHAP值小于0的队列-用户的特征,第i个队列-用户组合、第j个特征的二维SHAP值表示为:
Figure FDA0003794621970000031
其中,
Figure FDA0003794621970000032
为第i个队列-用户组合,第j个特征的二维SHAP值;C表示所有用户-队列组合的集合;F表示所有特征的集合;M表示C去掉队列-用户组合i之后的所有可能存在的队列-用户子集;S表示F去掉特征j之后的所有可能存在的特征子集;|M|!表示M队列-用户组合集合的数量的阶乘;|S|!表示S特征集合中特征的数量的阶乘;[f(S,M)∪{i,j}(x(S,M)∪{i,j})-f(S,M)(x(S,M))]表示队列-用户组合i、特征j在队列-用户组合集合为M、特征集合为S的情况下的边际贡献,f(S,M)∪{i,j}为集合(S,M)包含特征(i,j)的贡献值的预测,x(S,M)∪{i,j}为特征子集S包含特征i和特征子集M包含特征j的实例的特征值的向量,f(S,M)为集合(S,M)不包含特征(i,j)的贡献值的预测,x(S,M)为特征子集S和M的实例的特征值的向量。
CN202011396557.3A 2020-12-03 2020-12-03 一种基于多任务学习时间序列的云平台工作负载预测方法 Active CN112486687B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011396557.3A CN112486687B (zh) 2020-12-03 2020-12-03 一种基于多任务学习时间序列的云平台工作负载预测方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011396557.3A CN112486687B (zh) 2020-12-03 2020-12-03 一种基于多任务学习时间序列的云平台工作负载预测方法

Publications (2)

Publication Number Publication Date
CN112486687A CN112486687A (zh) 2021-03-12
CN112486687B true CN112486687B (zh) 2022-09-27

Family

ID=74939112

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011396557.3A Active CN112486687B (zh) 2020-12-03 2020-12-03 一种基于多任务学习时间序列的云平台工作负载预测方法

Country Status (1)

Country Link
CN (1) CN112486687B (zh)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113051130B (zh) * 2021-03-19 2023-05-02 南京航空航天大学 结合注意力机制的lstm网络的移动云负载预测方法及系统
CN113470352B (zh) * 2021-06-17 2022-10-21 之江实验室 一种基于多任务学习的交通大数据分析与预测系统及方法
CN115348565A (zh) * 2022-08-17 2022-11-15 西安交通大学 大规模mtc场景中基于负载感知的动态接入与退避方法及系统
CN115827944B (zh) * 2022-12-23 2024-03-01 山东新明辉安全科技有限公司 基于互联网平台系统优化的大数据分析方法及服务器

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103688230A (zh) * 2011-07-07 2014-03-26 高通股份有限公司 以主动负载转向预先取得热负载的方法和系统
CN104781774A (zh) * 2012-09-12 2015-07-15 格林伊登美国控股有限责任公司 利用模板动态配置联络中心的系统和方法

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9965333B2 (en) * 2009-04-13 2018-05-08 International Business Machines Corporation Automated workload selection
US20150341229A1 (en) * 2014-05-20 2015-11-26 Krystallize Technologies, Inc Load generation application and cloud computing benchmarking
CN104516784B (zh) * 2014-07-11 2018-03-30 中国科学院计算技术研究所 一种预测任务资源等待时间的方法及系统
CN110262897B (zh) * 2019-06-13 2023-01-31 东北大学 一种基于负载预测的Hadoop计算任务初始分配方法

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103688230A (zh) * 2011-07-07 2014-03-26 高通股份有限公司 以主动负载转向预先取得热负载的方法和系统
CN104781774A (zh) * 2012-09-12 2015-07-15 格林伊登美国控股有限责任公司 利用模板动态配置联络中心的系统和方法

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
A fuzzy virtual machine workload prediction method for cloud environments;Fahimeh Ramezani等;《2017 IEEE International Conference on Fuzzy Systems (FUZZ-IEEE)》;20170824;第1-6页 *
基于量子优化的云服务器负载均衡算法研究;张建伟等;《计算机应用研究》;20150420;第3128-3130页 *

Also Published As

Publication number Publication date
CN112486687A (zh) 2021-03-12

Similar Documents

Publication Publication Date Title
CN112486687B (zh) 一种基于多任务学习时间序列的云平台工作负载预测方法
CN109324875B (zh) 一种基于强化学习的数据中心服务器功耗管理与优化方法
CN110389820B (zh) 一种基于v-TGRU模型进行资源预测的私有云任务调度方法
US20210064432A1 (en) Resource needs prediction in virtualized systems: generic proactive and self-adaptive solution
Yu et al. Integrating clustering and learning for improved workload prediction in the cloud
CN109960573B (zh) 一种基于智能感知的跨域计算任务调度方法及系统
CN110533112A (zh) 车联网大数据跨域分析融合方法
CN107426026B (zh) 一种基于eemd-arima的云计算服务器负载短期预测方法
CN112052081B (zh) 一种任务调度方法、装置及电子设备
CN111026548A (zh) 一种逆向深度强化学习的电力通信设备测试资源调度方法
CN116225696B (zh) 用于流处理系统的算子并发度调优方法及装置
CN111339157B (zh) 一种配电网日运行效率计算及预测方法、系统及设备
CN116185584A (zh) 一种基于深度强化学习的多租户数据库资源规划与调度方法
CN113505879B (zh) 一种基于多注意力特征记忆模型的预测方法和装置
CN114707348A (zh) 偏最小二乘Kriging模型辅助的航空减速器高效全局优化方法
Li et al. A QoS-based scheduling algorithm for instance-intensive workflows in cloud environment
CN116980316A (zh) 面向时延和资源利用率的微服务弹性伸缩调度方法和系统
CN109271295B (zh) 一种云集群环境下的异常作业预测方法
CN116360921A (zh) 一种面向电力物联网的云平台资源优化调度方法及系统
Gupta et al. Online adaptation models for resource usage prediction in cloud network
Seneviratne et al. Adapting the machine learning grid prediction models for forecasting of resources on the clouds
Okanlawon et al. Feature selection for learning to predict outcomes of compute cluster jobs with application to decision support
Suzuki et al. Power Prediction for Sustainable HPC
Rattanatamrong et al. Real-time scheduling of mixture-of-experts systems with limited resources
Hutchison et al. High performance computing queue time prediction using clustering and regression

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
TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20230510

Address after: Room 801, 85 Kefeng Road, Huangpu District, Guangzhou City, Guangdong Province

Patentee after: Yami Technology (Guangzhou) Co.,Ltd.

Address before: 400065 Chongwen Road, Nanshan Street, Nanan District, Chongqing

Patentee before: CHONGQING University OF POSTS AND TELECOMMUNICATIONS

TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20231214

Address after: No. 546, Luoyu Road, Hongshan District, Wuhan, Hubei Province, 430000

Patentee after: HUBEI CENTRAL CHINA TECHNOLOGY DEVELOPMENT OF ELECTRIC POWER Co.,Ltd.

Address before: Room 801, 85 Kefeng Road, Huangpu District, Guangzhou City, Guangdong Province

Patentee before: Yami Technology (Guangzhou) Co.,Ltd.