当前位置: 首页 > 专利查询>黄淮学院专利>正文

一种基于自动学习的云容器资源调度方法及系统技术方案

技术编号:33728036 阅读:13 留言:0更新日期:2022-06-08 21:22
本发明专利技术提供了一种基于自动学习的云容器资源调度方法及系统,对多个不同的云容器进行连接使各云容器的资源调度相互连通,在多个不同的日期记录各个云容器在一天内各小时的内存占用分布作为训练数据集,使用训练数据集来训练自动学习模型预测各个云容器在下一时刻的内存占用分布作为内存占用预测分布,在得到内存占用预测分布后计算各个云容器的优选值,根据各个云容器的优选值对各个云容器的资源进行调度,实现了自动根据云容器数据存储的改变自动调度各个云容器的初始资源存储容量并高效节省了资源调度时间成本的有益效果,大幅度提升了云容器集群的资源使用效率。度提升了云容器集群的资源使用效率。度提升了云容器集群的资源使用效率。

【技术实现步骤摘要】
一种基于自动学习的云容器资源调度方法及系统


[0001]本专利技术属于分布式计算领域,具体涉及一种基于自动学习的云容器资源调度方法及系统。

技术介绍

[0002]云容器是一种基于分布式计算的数据存储方式,可以有效地将大规模数据并行地存储于以多个不同的云容器组成的数据存储系统中。以云容器作为节点,可以有效变动每个节点的存储数据量,使各个节点动态根据当前的数据存储的内存增幅波动进行变动。自动学习AutoML可以使用自动化的数据驱动算法对已有的数据进行自动的数学建模并进行快速的预测,使用自动学习算法能够预测出各个云容器在当前时刻的下一时刻的内存占用分布,高效节省了时间成本。

技术实现思路

[0003]本专利技术的目的在于提出一种基于自动学习的云容器资源调度方法及系统,以解决现有技术中所存在的一个或多个技术问题,至少提供一种有益的选择或创造条件。
[0004]本专利技术提供了一种基于自动学习的云容器资源调度方法及系统,将多个不同的云容器进行连接使各云容器的资源调度相互连通,在多个不同的日期记录各个云容器在一天内各小时的内存占用分布作为训练数据集,使用训练数据集来训练自动学习模型预测各个云容器在下一时刻的内存占用分布作为内存占用预测分布,在得到内存占用预测分布后计算各个云容器的优选值,进而根据各个云容器的优选值对各个云容器的资源进行调度。
[0005]为了实现上述目的,根据本专利技术的一方面,提供一种基于自动学习的云容器资源调度方法,所述方法包括以下步骤:
[0006]S100,对多个不同的云容器进行连接,使各云容器的资源调度相互连通;
[0007]S200,在多个不同的日期,记录各个云容器在一天内各小时的内存占用分布作为训练数据集;
[0008]S300,使用训练数据集来训练自动学习模型预测各个云容器在下一时刻的内存占用分布作为内存占用预测分布;
[0009]S400,在得到内存占用预测分布后,计算各个云容器的优选值;
[0010]S500,根据各个云容器的优选值,对各个云容器的资源进行调度。
[0011]进一步地,在S100中,对多个不同的云容器进行连接,使各个云容器的资源调度相互连通的方法为:
[0012]将多个不同的云容器进行连接组成一个云容器集群,其中每个云容器的云容器各不相同,云容器集群中各云容器的资源调度相互连通,即云容器集群中各云容器的内存容量能在云容器集群中互相转移与互相交换;
[0013]记云容器集群为Cluster,记云容器集群中云容器的数量为n,云容器集群中云容器的序号为i,i∈[1,n],云容器集群中序号为i的云容器记作Cluster(i)。
[0014]进一步地,在S200中,在多个不同的日期,记录各个云容器在一天内各小时的内存占用分布作为训练数据集的方法为:
[0015]选取不同日期的T天(T为正整数且T≥30),T天即可为T个日期连续的天,记录各个云容器在T天的每一天内各个小时的在整点时刻的内存占用分布,内存占用分布由一个云容器在一个时刻的被占用的内存容量的字节数量以及剩余的内存容量的字节数量组成(字节数量的单位为Gigabyte,本专利技术中涉及内存容量的计算皆经过去量纲化处理),由此得到T天的24小时每个小时的内存占用分布,每个内存占用分布包含被占用的内存容量的字节数量以及剩余的内存容量的字节数量,记内存占用分布中被占用的内存容量的字节数量为占用量,记内存占用分布中剩余的内存容量的字节数量为剩余量,将T天的24小时每个小时的n个云容器各自的内存占用分布以CSV文件的格式保存作为训练数据集,训练数据集中有T行,T行中每行分为24列,T行中每行分为的24列中的每列为由n个云容器在同一天同一时刻的各自的内存占用分布组成的数组,即T行中每行分为的24列中的每列中的每一个内存占用分布以一个二维数组表示且每一个二维数组由占用量的数值和剩余量的数值组成;
[0016]其中,训练数据集的使用方法为,选定任一时刻任一云容器的内存占用分布作为预测内存占用分布,将该预测内存占用分布中的具体数值设置为空,并进行预测该预测内存占用分布中的具体数值作为内存占用预测分布。
[0017]进一步地,在S300中,使用训练数据集来训练自动学习模型预测各个云容器在下一时刻的内存占用分布作为内存占用预测分布的方法为:
[0018]使用训练数据集对训练自动学习模型进行机器学习的学习训练,使自动学习模型学习预测出一个时刻的内存占用分布作为内存占用预测分布,自动学习模型为基于Python编程语言的开源软件AutoKeras中TimeSeriesForecaster模块的AutoML自动机器学习模型(参见论文:Jin H,Song Q,Hu X.Efficient Neural Architecture Search with Network Morphism[J].2018.),然后,在当前时刻使用训练后的自动学习模型分别预测出各个云容器在当前时刻的下一时刻的内存占用分布作为对应的云容器在当前时刻的下一时刻的内存占用预测分布,其中,内存占用预测分布中的占用量记作预测占用量,内存占用预测分布中的剩余量记作预测剩余量,当前时刻的下一时刻指当前时刻的下一个小时的整点时刻。
[0019]其中,在S400中,在得到内存占用预测分布后,计算各个云容器的优选值的方法为:
[0020]将云容器集群中各个云容器根据每个云容器的内存容量按照内存容量较小则为左节点的规则使用前序遍历算法构建成一个二叉树,以内存容量为云容器集群中各云容器的内存容量的中位数的一个云容器为二叉树的根节点,根节点左边的节点其内存容量需小于等于根节点的内存容量,根节点右边的节点其内存容量需大于等于根节点的内存容量,由此将各个云容器作为各个节点连接成为一个整体的树状的数据结构结构作为一个二叉树记为Ctree,云容器集群中各个云容器作为二叉树Ctree中的各个结点,以二叉树的结点的层次的序号及结点在该层次中从左至右的序号作为Ctree中的各个结点的定位序号,以二叉树Ctree的根结点为Ctree(1,1),以二叉树的根结点所在的层次为第1层次,二叉树Ctree的深度记为常数D,以二叉树的根结点所在的层次为开始向二叉树的深度所在的层次沿每一个层次逐层递增,二叉树Ctree的层次的序号为变量d,d∈[1,D],二叉树Ctree中序号为d的层次中从左至右的结点的数量记为wid(d),二叉树Ctree中序号为d的层次中从左
至右的结点的序号记为t(d),t(d)∈[1,wid(d)],二叉树Ctree中序号为d的层次中从左至右的序号为t(d)的结点记作Ctree(d,t(d));
[0021]优选值为表示一个结点在二叉树中被优先地遍历到的权重值,计算优先值的有益效果为通过测量各个结点在二叉树中被优先地遍历到的权重值从而快速确定需要优先筛选使用的结点,而无需对各个节点进行全面的遍历搜索以此节省了时间成本;
[0022]从Ctree中选取任一结点记作Ctree(d1,t(d1))本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于自动学习的云容器资源调度方法,其特征在于,所述方法包括以下步骤:S100,对多个不同的云容器进行连接,使各云容器的资源调度相互连通;S200,在多个不同的日期,记录各个云容器在一天内各小时的内存占用分布作为训练数据集;S300,使用训练数据集来训练自动学习模型预测各个云容器在下一时刻的内存占用分布作为内存占用预测分布;S400,在得到内存占用预测分布后,计算各个云容器的优选值;S500,根据各个云容器的优选值,对各个云容器的资源进行调度。2.根据权利要求1所述的一种基于自动学习的云容器资源调度方法,其特征在于,在S100中,对多个不同的云容器进行连接,使各个云容器的资源调度相互连通的方法为:将多个不同的云容器进行连接组成一个云容器集群,其中每个云容器的云容器各不相同,云容器集群中各云容器的资源调度相互连通,即云容器集群中各云容器的内存容量能在云容器集群中互相转移与互相交换;记云容器集群为Cluster,记云容器集群中云容器的数量为n,云容器集群中云容器的序号为i,i∈[1,n],云容器集群中序号为i的云容器记作Cluster(i)。3.根据权利要求2所述的一种基于自动学习的云容器资源调度方法,其特征在于,在S200中,在多个不同的日期,记录各个云容器在一天内各小时的内存占用分布作为训练数据集的方法为:选取不同日期的T天,记录各个云容器在T天的每一天内各个小时的在整点时刻的内存占用分布,内存占用分布由一个云容器在一个时刻的被占用的内存容量的字节数量以及剩余的内存容量的字节数量组成,由此得到T天的24小时每个小时的内存占用分布,每个内存占用分布包含被占用的内存容量的字节数量以及剩余的内存容量的字节数量,记内存占用分布中被占用的内存容量的字节数量为占用量,记内存占用分布中剩余的内存容量的字节数量为剩余量,将T天的24小时每个小时的n个云容器各自的内存占用分布以CSV文件的格式保存作为训练数据集,训练数据集中有T行,T行中每行分为24列,T行中每行分为的24列中的每列为由n个云容器在同一天同一时刻的各自的内存占用分布组成的数组,即T行中每行分为的24列中的每列中的每一个内存占用分布以一个二维数组表示且每一个二维数组由占用量的数值和剩余量的数值组成;其中,训练数据集的使用方法为,选定任一时刻任一云容器的内存占用分布作为预测内存占用分布,将该预测内存占用分布中的具体数值设置为空,并进行预测该预测内存占用分布中的具体数值作为内存占用预测分布。4.根据权利要求3所述的一种基于自动学习的云容器资源调度方法,其特征在于,在S300中,使用训练数据集来训练自动学习模型预测各个云容器在下一时刻的内存占用分布作为内存占用预测分布的方法为:使用训练数据集对训练自动学习模型进行机器学习的学习训练,使自动学习模型学习预测出一个时刻的内存占用分布作为内存占用预测分布,自动学习模型为基于Python编程语言的开源软件AutoKeras中TimeSeriesForecaster模块的AutoML自动机器学习模型,然后,在当前时刻使用训练后的自动学习模型分别预测出各个云容器在当前时刻的下一时刻的内存占用分布作为对应的云容器在当前时刻的下一时刻的内存占用预测分布,其中,内存占用预测分布中的占用量记作预测占用量,内存占用预测分布中的剩余量记作预测剩余量,当前时刻的下一时刻指当前时刻的下一个小时的整点时
刻。5.根据权利要求4所述的一种基于自动学习的云容...

【专利技术属性】
技术研发人员:何宇高金锋吴海涛刘芳宋强鲍海洲朱玉祥李刚强张瑜张俊明潘景辉
申请(专利权)人:黄淮学院
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1