本发明涉及数据处理领域,特别涉及一种基于任务需求预测的算力调度方法及系统。
背景技术:
1、随着互联网进入下半场逐渐由消费型应用向生产型应用转变,各行业数字化发展催生了诸如自动驾驶、ar/vr、超高清视频等新型业务。这些业务不同于传统互联网时代的邮件分发、网页浏览、文件传送等业务,它们具有最核心的特征即属于计算密集型业务且要求网络具备提供超低时延、超大规模连接、超强算力等高质量、差异化服务的能力。由于传统的任务处理方式和能力逐渐难以满足上述业务需求,业界探索了云计算、边缘计算、sd-wan、云网融合等解决方案使得网络与计算融合以满足计算密集型业务的算力需求。由云网融合逐渐向以算力网络为代表的算网融合演进已成为重要发展方向。基于云计算集群的算网平台则是算力网络实现各类计算密集型任务处理的系统,它不仅能够对算力和网络资源、业务和用户状态进行感知,还可以实现任务调度处理和扩缩容等能力。
2、对于云计算集群而言,接收到的集群任务的数量很大,而不同类别的集群任务之间,其所需要的资源之间的差异较大,例如单机的计算密集型任务对网络资源基本不会有很大依赖,而多机分布式机器学习任务对网络资源的需求可能会非常大,不同任务类别之间对资源的使用会有很大差别。现有的云计算集群的作业调度算法都是将云计算集群中的多类资源抽象成单一资源,分配给作业的资源均是节点资源中固定大小的一部分,主要存在三个问题。首先,这类算法并没有考虑到节点的实际运行能力,只是按照运行的任务个数来判断节点能否再接受任务,可能会造成集群的某些节点负载过重。其次,它忽略了不同类型作业对资源的不同需求。作业占用的资源均是节点中固定大小的一部分资源,不管作业对资源需求的不同。这造成了作业已分配资源与需求资源之间的不匹配。
3、因此,需要提供一种基于任务需求预测的算力调度方法及系统,用于提高算力调度的灵活性,提高算力资源分配与任务需求之间的匹配度。
技术实现思路
1、本发明提供一种基于任务需求预测的算力调度方法,包括:获取待调度任务的任务特征参数;基于所述待调度任务的任务特征参数,确定所述待调度任务的预设算力资源需求;基于所述预设算力资源需求,对所述云计算集群进行资源调度,将所述待调度任务部署至所述云计算集群;获取所述待调度任务在对应的多个测试运行时间点的资源占用信息;基于所述待调度任务的任务特征参数、预设算力资源需求和在对应的多个测试运行时间点的资源占用信息及多个已调度任务的任务特征参数、预设算力资源需求和在对应的多个测试运行时间点的资源占用信息,确定所述待调度任务的算力调度周期及在所述算力调度周期的多个算力调度时间段的算力资源需求;根据所述待调度任务的算力调度周期及在所述算力调度周期的多个算力调度时间段的算力资源需求和所述多个已调度任务的算力调度周期及在所述算力调度周期的多个算力调度时间段的算力资源需求,确定所述云计算集群的动态部署策略;基于所述云计算集群的动态部署策略对所述云计算集群进行资源调度。
2、进一步地,所述任务特征参数包括任务类型、任务功能、任务用户数量、响应时间要求和每个应用程序实例所需的cpu核心数及内存大小;所述基于所述待调度任务的任务特征参数,确定所述待调度任务的预设算力资源需求,包括:预先建立并训练多个资源预测模型,其中,一个所述资源预测模型对应一个所述资源预测模型;基于所述待调度任务的任务类型,从所述多个资源预测模型中确定目标资源预测模型;通过所述目标资源预测模型基于所述待调度任务的任务功能、任务用户数量、响应时间要求和每个应用程序实例所需的cpu核心数及内存大小,确定所述待调度任务的预设算力资源需求。
3、进一步地,所述基于所述待调度任务的任务特征参数、预设算力资源需求和在对应的多个测试运行时间点的资源占用信息及多个已调度任务的任务特征参数、预设算力资源需求和在对应的多个测试运行时间点的资源占用信息,确定所述待调度任务的算力调度周期及在所述算力调度周期的多个算力调度时间段的算力资源需求,包括:对于任意一个所述已调度任务,基于所述待调度任务的任务特征参数和预设算力资源需求及所述已调度任务的任务特征参数和预设算力资源需求,计算所述待调度任务与所述已调度任务之间的任务相似度;基于所述待调度任务与每个所述已调度任务之间的任务相似度,从所述多个已调度任务中确定至少一个候选已调度任务;对于每个所述候选已调度任务,基于所述候选已调度任务在对应的多个测试运行时间点的资源占用信息和所述待调度任务在对应的多个测试运行时间点的资源占用信息,计算所述候选已调度任务与所述待调度任务之间的资源占用相似度;基于每个所述候选已调度任务与所述待调度任务之间的资源占用相似度,从所述至少一个候选已调度任务中确定至少一个第一目标已调度任务;基于每个所述第一目标已调度任务在多个目标时间段的算力资源需求,确定所述待调度任务的算力调度周期及在所述算力调度周期的多个算力调度时间段的算力资源需求。
4、进一步地,所述基于所述候选已调度任务在对应的多个测试运行时间点的资源占用信息和所述待调度任务在对应的多个测试运行时间点的资源占用信息,计算所述候选已调度任务与所述待调度任务之间的资源占用相似度,包括:对所述候选已调度任务在对应的多个测试运行时间点的资源占用信息进行经验模态分解,确定所述候选已调度任务对应的多个资源占用信息分量及残差;对所述待调度任务在对应的多个测试运行时间点的资源占用信息进行经验模态分解,确定所述候选已调度任务对应的多个资源占用信息分量及残差;通过相似度确定模型基于所述候选已调度任务对应的多个资源占用信息分量及残差和所述候选已调度任务对应的多个资源占用信息分量及残差,计算所述候选已调度任务与所述待调度任务之间的资源占用相似度。
5、进一步地,所述基于每个所述第一目标已调度任务在多个目标时间段的算力资源需求,确定所述待调度任务的算力调度周期及在所述算力调度周期的多个算力调度时间段的算力资源需求,包括:通过需求预测模型基于每个所述第一目标已调度任务在多个目标时间段的算力资源需求,确定所述待调度任务的算力调度周期及在所述算力调度周期的多个算力调度时间段的初始算力资源需求;基于所述至少一个第一目标已调度任务,确定至少一个第二目标已调度任务,其中,所述第二目标已调度任务为与所述第一目标已调度任务存在关联关系的已调度任务;获取所述至少一个第二目标已调度任务在所述多个目标时间段的算力资源需求;通过需求修正模型基于所述至少一个第二目标已调度任务在所述多个目标时间段的算力资源需求,对所述待调度任务在所述算力调度周期的多个算力调度时间段的初始算力资源需求进行修正,确定所述待调度任务在所述算力调度周期的多个算力调度时间段的算力资源需求。
6、进一步地,所述基于所述至少一个第一目标已调度任务,确定至少一个第二目标已调度任务,包括:获取所述多个已调度任务在多个历史时间段的算力资源需求;基于所述多个已调度任务在多个历史时间段的算力资源需求,确定任意两个所述已调度任务之间的关联关系;基于任意两个所述已调度任务之间的关联关系,建立任务关联图谱;基于所述至少一个第一目标已调度任务及所述任务关联图谱,确定至少一个第二目标已调度任务。
7、进一步地,所述根据所述待调度任务的算力调度周期及在所述算力调度周期的多个算力调度时间段的算力资源需求和所述多个已调度任务的算力调度周期及在所述算力调度周期的多个算力调度时间段的算力资源需求,确定所述云计算集群的动态部署策略,包括:通过方案生成模型根据所述待调度任务的算力调度周期及在所述算力调度周期的多个算力调度时间段的算力资源需求和所述多个已调度任务的算力调度周期及在所述算力调度周期的多个算力调度时间段的算力资源需求,生成多种候选动态部署策略,其中,所述候选动态部署策略包括在多个未来时间段的候选算力资源分配计划;对所述多种候选动态部署策略进行筛选,确定所述云计算集群的动态部署策略。
8、进一步地,所述对所述多种候选动态部署策略进行筛选,确定所述云计算集群的动态部署策略,包括:对于每种所述候选动态部署策略,确定在所述候选动态部署策略下,所述云计算集群在每个所述未来时间段的负载分布参数;对于每种所述候选动态部署策略,确定在所述候选动态部署策略下,所述待调度任务在每个所述未来时间段的分布均衡参数及任务稳定性参数;对于每种所述候选动态部署策略,确定在所述候选动态部署策略下,每个所述已调度任务的在每个所述未来时间段的分布均衡参数及任务稳定性参数;对于每种所述候选动态部署策略,基于在所述候选动态部署策略下,所述云计算集群在每个所述未来时间段的负载分布参数、所述待调度任务在每个所述未来时间段的分布均衡参数及任务稳定性参数和每个所述已调度任务的在每个所述未来时间段的分布均衡参数及任务稳定性参数,确定所述候选动态部署策略的方案匹配参数;基于每个所述候选动态部署策略的方案匹配参数,对所述多种候选动态部署策略进行筛选,确定所述云计算集群的动态部署策略。
9、进一步地,确定在所述候选动态部署策略下,所述待调度任务在每个所述未来时间段的任务稳定性参数,包括:对于每个未来时间段,基于所述候选动态部署策略,获取所述待调度任务在所述未来时间段的算力资源分布信息;对于每个未来时间段,基于所述待调度任务在所述未来时间段的算力资源分布信息,确定所述云计算集群的至少一个目标服务器;对于每个未来时间段,获取每个所述目标服务器在多个目标时间段的状态信息;对于每个未来时间段,基于所述待调度任务在所述未来时间段的算力资源分布信息及每个所述目标服务器在多个目标时间段的状态信息,确定所述待调度任务在每个所述未来时间段的任务稳定性参数。
10、本发明提供一种基于任务需求预测的算力调度系统,包括:参数获取模块,用于获取待调度任务的任务特征参数;资源预设模块,用于基于所述待调度任务的任务特征参数,确定所述待调度任务的预设算力资源需求;资源调度模块,用于基于所述预设算力资源需求,对所述云计算集群进行资源调度,将所述待调度任务部署至所述云计算集群;信息获取模块,用于获取所述待调度任务在对应的多个测试运行时间点的资源占用信息;需求确定模块,用于基于所述待调度任务的任务特征参数、预设算力资源需求和在对应的多个测试运行时间点的资源占用信息及多个已调度任务的任务特征参数、预设算力资源需求和在对应的多个测试运行时间点的资源占用信息,确定所述待调度任务的算力调度周期及在所述算力调度周期的多个算力调度时间段的算力资源需求;策略确定模块,用于根据所述待调度任务的算力调度周期及在所述算力调度周期的多个算力调度时间段的算力资源需求和所述多个已调度任务的算力调度周期及在所述算力调度周期的多个算力调度时间段的算力资源需求,确定所述云计算集群的动态部署策略;所述资源调度模块还用于基于所述云计算集群的动态部署策略对所述云计算集群进行资源调度。
11、相比于现有技术,本发明提供的一种基于任务需求预测的算力调度方法及系统,至少具备以下有益效果:
12、1、通过获取待调度任务的任务特征参数、在对应的多个测试运行时间点的资源占用信息和多个已调度任务的算力调度周期及在所述算力调度周期的多个算力调度时间段的算力资源需求,对待调度任务的算力调度周期及在算力调度周期的多个算力调度时间段的算力资源需求进行预测,并且生成云计算集群的动态部署策略,对云计算集群进行资源调度,提高算力调度的灵活性,提高算力资源分配与任务需求之间的匹配度。
13、2、基于候选已调度任务在对应的多个测试运行时间点的资源占用信息和待调度任务在对应的多个测试运行时间点的资源占用信息,计算候选已调度任务与待调度任务之间的源占用相似度,从至少一个候选已调度任务中确定至少一个第一目标已调度任务,筛选出与待调度任务相似的已调度任务,从而确定较为准确的第一目标已调度任务。
14、3、通过对候选已调度任务在对应的多个测试运行时间点的资源占用信息进行经验模态分解和待调度任务在对应的多个测试运行时间点的资源占用信息进行经验模态分解,获取候选已调度任务和待调度任务的更多维度的信息,能够较为准确地确定候选已调度任务与待调度任务之间的相似情况。
15、4、第二目标已调度任务有较大可能与待调度任务之间存在用户竞争,即会对待调度任务的算力资源需求产生影响,因此,基于至少一个第二目标已调度任务在多个目标时间段的算力资源需求,对待调度任务在算力调度周期的多个算力调度时间段的初始算力资源需求进行修正,提高预测的待调度任务在算力调度周期的多个算力调度时间段的算力资源需求的准确度。
1.一种基于任务需求预测的算力调度方法,应用于云计算集群,其特征在于,包括:
2.根据权利要求1所述的一种基于任务需求预测的算力调度方法,其特征在于,所述任务特征参数包括任务类型、任务功能、任务用户数量、响应时间要求和每个应用程序实例所需的cpu核心数及内存大小;
3.根据权利要求2所述的一种基于任务需求预测的算力调度方法,其特征在于,所述基于所述待调度任务的任务特征参数、预设算力资源需求和在对应的多个测试运行时间点的资源占用信息及多个已调度任务的任务特征参数、预设算力资源需求和在对应的多个测试运行时间点的资源占用信息,确定所述待调度任务的算力调度周期及在所述算力调度周期的多个算力调度时间段的算力资源需求,包括:
4.根据权利要求3所述的一种基于任务需求预测的算力调度方法,其特征在于,所述基于所述候选已调度任务在对应的多个测试运行时间点的资源占用信息和所述待调度任务在对应的多个测试运行时间点的资源占用信息,计算所述候选已调度任务与所述待调度任务之间的资源占用相似度,包括:
5.根据权利要求4所述的一种基于任务需求预测的算力调度方法,其特征在于,所述基于每个所述第一目标已调度任务在多个目标时间段的算力资源需求,确定所述待调度任务的算力调度周期及在所述算力调度周期的多个算力调度时间段的算力资源需求,包括:
6.根据权利要求5所述的一种基于任务需求预测的算力调度方法,其特征在于,所述基于所述至少一个第一目标已调度任务,确定至少一个第二目标已调度任务,包括:
7.根据权利要求1-6中任意一项所述的一种基于任务需求预测的算力调度方法,其特征在于,所述根据所述待调度任务的算力调度周期及在所述算力调度周期的多个算力调度时间段的算力资源需求和所述多个已调度任务的算力调度周期及在所述算力调度周期的多个算力调度时间段的算力资源需求,确定所述云计算集群的动态部署策略,包括:
8.根据权利要求7所述的一种基于任务需求预测的算力调度方法,其特征在于,所述对所述多种候选动态部署策略进行筛选,确定所述云计算集群的动态部署策略,包括:
9.根据权利要求8所述的一种基于任务需求预测的算力调度方法,其特征在于,确定在所述候选动态部署策略下,所述待调度任务在每个所述未来时间段的任务稳定性参数,包括:
10.一种基于任务需求预测的算力调度系统,应用于云计算集群,其特征在于,包括: