一种面向地理大数据的云计算资源调度方法及系统与流程

文档序号:23151961发布日期:2020-12-04 13:47阅读:172来源:国知局
一种面向地理大数据的云计算资源调度方法及系统与流程

本发明涉及地理大数据应用领域,特别是涉及一种面向地理大数据的云计算资源调度方法及系统。



背景技术:

随着技术的快速发展和应用规模的日益增大,当今的地理大数据应用需要进行海量数据处理。一般来说,大数据有“5v”特征:volume(大量)、velocity(更新快)、variety(多样)、value(价值)、veracity(真实性)。地理大数据也具备“5v”特征,但地理大数据与其他大数据之间的差别在于是否具有时空属性。

根据传感器和所记录对象的类型,地理大数据可分为对地观测和人类行为两类大数据。

对地观测数据记录了地表要素特征,其传感器类型包括航空航天以及地表监测传感器,以主动获取为主。对应数据包括卫星、无人机遥感影像及监测台站数据。

人类行为数据记录人类社交、移动、消费等各种行为,其传感器包括:智能卡、手机终端、社交媒体、导航等,以被动获取方式为主,产生的数据包括:手机信令、出租车轨迹、物联网以及社交媒体等数据。

两类数据关注的对象分别为“地”和“人”。地理大数据全面结合了对地观测与人类行为大数据,为地理学中的人地关系提供了新动力、新资源和新视角。两类数据的结构、粒度和表达方式迥异,为地理大数据的分析与处理提出了新命题。另外,地理大数据,尤其是人类行为数据大多无目的性,常常导致有偏性和不确定性。因此,地理大数据可以总结为时空广度、时空粒度、时空偏度、时空密度和时空精度等“5度”的特征。如何从时空和属性维度对不同数据“垂直”或“横向”调度成为地理大数据并行计算的关键。

为了处理这些海量的地理大数据,提供优质服务,需要提出面向地理大数据的云计算技术。通过并行计算、分布式计算、虚拟化和负载均衡等技术提供方便、快捷的地理大数据存储和计算服务。相较于传统的分布式计算和并行计算,云计算的资源池通常是由专门的服务器提前组成好的,且云计算面向众多类型的用户,因此一些传统的管理技术和资源调度对于云计算环境并不适用。而且云计算的资源调度有着资源流动大、按需分配、必须降耗节能、必须对异构环境提供支持等新特性,给云中资源调度问题带来更多新的挑战。如何通过采用更高效的资源调度方法来处理云计算环境中的资源调度,获得更高的资源利用率是当下研究的重点。

根据资源调度的模式,将传统的分布式计算和并行计算的资源调度分为三种:分散式、分级式、集中式。分级式和分散式的资源调度模式一般适合分布式系统与并行系统。目前,在云计算的环境中主要通过虚拟资源池来对云计算资源进行管理,并且通过数据中心来完成任务处理和资源调度。因此集中式的资源管理以及调度模式会更适用于云计算。现阶段,关于云计算资源调度方法的研究已经取得一定的成果。

澳大利亚的rajkumarbuyya等人提出的基于经济模型的资源调度方法是目前主要的资源调度方法之一,该方法通过类比云计算环境下的资源供求关系与市场经济模型,让资源买卖双方通过协商进行交易,并通过价格来动态调节各资源之间的竞争与分配,以此达到资源优化分配的目的。许多资源调度的方法只能在任务到来时根据当前任务的资源需求状态选择最合适的调度策略,实际中任务的状态在任务执行过程中会发生改变,因此资源的动态调度也是一个非常重要的问题。法国的jean-marcmenaud和hiennguyenvan等学者将为任务选择合适的虚拟机与为虚拟机选择合适的物理机的问题转化成约束满足问题,实现了动态重新调度资源。fabienhermenier等人对如何分配和迁移虚拟机到物理机进行研究,提出了一种综合考虑重配置计算时间和虚拟机迁移时间的动态资源管理和调度方法。而魏贵义等人通过综合考虑优化和公平两个方面,提出了一个基于博弈论的资源调度算法。该算法在实现过程中先利用动态规划算法来处理单个参与者的独立优化问题,然后再利用进化算法来处理多个参与者的综合优化问题,尽管该方法较好地解决了资源动态调度的问题,但是这种方法在实现上略复杂,一般适用于处理一些非常动态的问题。

虽然研究者们在云计算的资源调度问题上开展了许多研究工作,但其资源调度方法均面向底层的物理资源,主要通过优化虚拟资源的配置物理资源或者通过虚拟机动态迁移的方案来实现系统负载的均衡以及提高资源利用率,而这些方法的实现都需要停止云应用来完成对资源的动态调度,有一定的局限性。除此之外,还有一些方法将所有用户的待调度任务类型视为一致,而实际云计算中,尤其是地理大数据计算中有着众多的任务类型。如果在同一个框架下对各用户的资源进行调度,通常不能产生最佳的调度结果。如何实现在不停止云应用的情况下完成不同任务类型的云计算资源的动态调度,成为一个亟待解决的技术问题。



技术实现要素:

本发明的目的是提供一种面向地理大数据的云计算资源调度方法及系统,以实现在不停止云应用的情况下完成不同任务类型的云计算资源的动态调度。

为实现上述目的,本发明提供了如下方案:

一种面向地理大数据的云计算资源调度方法,所述调度方法包括如下步骤:

离线地获取地理大数据的云计算调度触发事件及每个触发事件对应的一个或多个资源调度模板,建立云计算资源调度规则库;

对地理大数据的云计算过程进行监测,确定当前触发事件;

根据云计算资源调度规则库确定当前触发事件的一个或多个资源调度模板;

根据当前触发事件的一个或多个资源调度模板和当前负载流量数据信息生成一个或多个资源调度动作;

获取当前触发事件发生时及发生前的j-1个历史时刻的负载流量数据组成负载流量矩阵序列,其中j为包括当前时刻的历史时间片段;

将所述负载流量矩阵序列输入convlstm负载流量预测模型,对每个资源调度动作进行预测,获得每个资源调度动作的负载流量预测值;

选取负载流量预测值最小的资源调度动作作为最优调度方案,进行云资源调度。

可选的,所述选取负载流量预测值最小的资源调度动作作为最优调度方案,进行云资源调度,具体包括:

将预测得到的每个资源调度动作的负载流量预测值,当前触发事件发生时及发生前的j-2个历史时刻的负载流量数据组成下一个时间段的流量转移矩阵,作为预测结果;

根据各个调度动作的目标对象,调度约束条件与地区负载预测结果的一致情况,调度动作的对象与流量转移矩阵中的重点地区尽可能重叠,调度的约束条件尽可能满足各个地区下一阶段的流量转移情况,选取与预测结果最符合的资源调度动作作为最优调度方案,进行云资源调度。

可选的,所述离线的获取地理大数据的云计算调度触发事件及每个触发事件对应的一个或多个资源调度模板,建立云计算资源调度规则库,具体包括:

确定云计算关键性能指标数据,建立云计算关键性能指标数据库;

从云环境中获得地理大数据的云计算动态资源调度目标;

根据云计算关键性能指标数据库和云计算动态资源调度目标离线抽取云计算的所有的触发事件;

从云环境中获得地理大数据的云计算相关分部信息和所有的资源调度数据指令;所述云计算相关分部信息包括物理机的资源信息,虚拟机的运行状态信息和虚拟机部署的组件的运行状态信息;

根据云计算相关分布信息获得每个资源调度数据指令的云计算资源调度模板,建立云计算资源调度模板集。

根据所述资源调度模板集和每个触发事件对应的资源调度数据指令确定每个触发事件对应的一个或多个云计算资源调度模板,形成云计算资源调度规则。

可选的,所述将所述负载流量矩阵序列输入convlstm负载流量预测模型,对每个资源调度动作进行预测,获得每个资源调度动作的负载流量预测值。之前还包括:

叠加多个convlstm层形成编码预测结构,作为负载流量的端到端的训练模型;

获取历史的云计算负载流量数据,形成训练样本集;

基于所述训练样本集采用加权均方误差损失函数对训练模型进行优化,该损失函数通过考虑重点地区结合了手动和自动加权方式,得到convlstm负载流量预测模型。

可选的,所述convlstm负载流量预测模型包括编码网络和预测网络。

一种面向地理大数据的云计算资源调度系统,所述调度系统包括:

云计算资源调度规则库建立模块,用于离线的获取地理大数据的云计算调度触发事件及每个触发事件对应的一个或多个资源调度模板,建立云计算资源调度规则库;

触发事件监测模块,用于对地理大数据的云计算过程进行监测,确定当前触发事件;

资源调度模板确定模块,用于根据云计算资源调度规则库确定当前触发事件的一个或多个资源调度模板;

资源调度动作生成模块,用于根据当前触发事件的一个或多个资源调度模板和当前负载流量数据信息生成一个或多个资源调度动作;

负载流量矩阵序列获取模块,用于获取当前触发事件发生时及发生前的j-1个历史时刻的负载流量数据组成负载流量矩阵序列;

负载流量预测模块,用于将所述负载流量矩阵序列输入convlstm负载流量预测模型,对每个资源调度动作进行预测,获得每个资源调度动作的负载流量预测值;

最优调度方案选取模块,用于选取负载流量预测值最小的资源调度动作作为最优调度方案,进行云资源调度。

可选的,所述最优调度方案选取模块,具体包括:

下一时刻的负载流量转移矩阵建立子模块,用于将预测得到的每个资源调度动作的负载流量预测值,当前触发事件发生时及发生前的j-2个历史时刻的负载流量数据组成下一个时间段的流量转移矩阵,作为预测结果;

最优调度方案选取子模块,根据各个调度动作的目标对象,调度约束条件与地区负载预测结果的一致情况,调度动作的对象与流量转移矩阵中的重点地区尽可能重叠,调度的约束条件尽可能满足各个地区下一阶段的流量转移情况,选取与预测结果最符合的资源调度动作作为最优调度方案,进行云资源调度。

可选的,所述云计算资源调度规则库建立模块,具体包括:

云计算关键性能指标数据库建立子模块,用于确定云计算关键性能指标数据,建立云计算关键性能指标数据库;

云计算动态资源调度目标获取子模块,用于从云环境中获得地理大数据的云计算动态资源调度目标;

触发事件抽取子模块,用于根据云计算关键性能指标数据库和云计算动态资源调度目标离线抽取云计算的所有的触发事件;

云计算相关分部信息和资源调度数据指令获取子模块,用于从云环境中获得地理大数据的云计算相关分部信息和所有的资源调度数据指令;所述云计算相关分部信息包括物理机的资源信息,虚拟机的运行状态信息和虚拟机部署的组件的运行状态信息;

云计算资源调度模板集建立子模块,用于根据云计算相关分布信息获得每个资源调度数据指令的云计算资源调度模板,建立云计算资源调度模板集;

云计算资源调度规则建立子模块,用于根据所述资源调度模板集和每个触发事件对应的资源调度数据指令确定每个触发事件对应的一个或多个云计算资源调度模板,形成云计算资源调度规则。

可选的,所述调度系统还包括:

训练模型建立模块,用于叠加多个convlstm层形成编码预测结构,作为负载流量的端到端的训练模型;

训练样本集建立模块,用于获取历史的云计算负载流量数据,形成训练样本集;

模型优化模块,用于基于所述训练样本集采用加权均方误差损失函数对训练模型进行优化,得到convlstm负载流量预测模型。

可选的,所述convlstm负载流量预测模型包括编码网络和预测网络。

根据本发明提供的具体实施例,本发明公开了以下技术效果:

本发明提供一种面向地理大数据的云计算资源调度方法及系统,所述调度方法首先离线的获取地理大数据的云计算调度触发事件及每个触发事件对应的一个或多个资源调度模板,建立云计算资源调度规则库;然后对地理大数据的云计算过程进行监测,确定当前触发事件;根据云计算资源调度规则库确定当前触发事件的一个或多个资源调度模板;根据当前触发事件的一个或多个资源调度模板和当前负载流量数据信息生成一个或多个资源调度动作;最后,获取当前触发事件发生时及发生前的j-1个历史时刻的负载流量数据组成负载流量矩阵序列;将所述负载流量矩阵序列输入convlstm负载流量预测模型,获得预测的地区负载流量分布情况;根据各个调度动作的目标对象,调度约束条件与地区负载流量预测结果的一致性,调度动作的对象与流量转移矩阵中的重点地区尽可能重叠,调度的约束条件尽可能满足各个地区下一阶段的流量转移情况;提出新的多核均方误差损失函数,提高预测精度。选取与预测结果最符合的资源调度动作作为最优调度方案,进行云资源调度。本发明通过离线建立的云计算资源调度规则库和在线监测的触发事件,确定触发事件的资源调度动作,并采用convlstm负载流量预测模型确定最优调度方案,提出新的多核均方误差损失函数,提高预测精度。实现在不停止云应用的情况下完成不同任务类型(监测的触发事件)的云计算资源的动态调度。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。

图1为本发明提供的一种面向地理大数据的云计算资源调度方法的流程图;

图2为本发明提供的convlstm负载流量预测模型的结构示意图。

图3为本发明提供的单个时间片段的流量转移矩阵的示意图。

图4为训练时loss下降曲线对比图和运行效率对比图;图4(a)为单核损失函数收敛曲线图,图4(b)为单核损失函数运行效率曲线图,图4(c)为多核均方误差损失函数收敛曲线图,图4(d)为多核均方误差损失函数运行效率曲线图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

本发明的目的是提供一种面向地理大数据的云计算资源调度方法及系统,以实现在不停止云应用的情况下完成不同任务类型的云计算资源的动态调度。

为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本发明作进一步详细的说明。

为了实现对类型众多任务的高效调度,要根据待调度任务的类型来选择不同的调度方式。此外,任务的资源消耗类型会随着任务的执行而发生改变,如果采用静态的资源分配和调度方法会导致资源不足或者是浪费,而人工动态资源调整又具有严重的滞后性,因此还需要对任务的执行状态进行实时监控。除此之外,需要在合适的时刻对任务资源进行动态重新调度以实现各任务资源(cpu、内存、磁盘、i/o、网络)的均衡使用,要避免单一资源瓶颈的出现,增加虚拟机密度,并消除热点,提高业务处理的能力,已有的任务资源调度技术没有涉及到这点。

为实现上述目的,本发明提供了如下方案:

如图1所示,本发明提供一种面向地理大数据的云计算资源调度方法,所述调度方法包括如下步骤:

离线的获取地理大数据的云计算调度触发事件及每个触发事件对应的一个或多个资源调度模板,建立云计算资源调度规则库。

如图1所示,所述离线的获取地理大数据的云计算调度触发事件及每个触发事件对应的一个或多个资源调度模板,建立云计算资源调度规则库,具体包括:

确定云计算关键性能指标数据,建立云计算关键性能指标数据库;从云环境中获得地理大数据的云计算动态资源调度目标;根据云计算关键性能指标数据库和云计算动态资源调度目标离线抽取云计算的所有的触发事件;具体的,关键性能指标主要包括cpu利用率,内存利用率,存储空间利用率,网络资源利用率等相关的负载流量数据。云计算资源调度目标指流量资源利用率类自适应动态调整目标。相应分布信息包含物理机分布信息,虚拟机分布信息,组件服务分布信息。

云计算资源调度目标用above,between,lower关键词来确定调整范围,并用关键性能指标数据(kpi)加以描述,具体格式如下:

targettarget_name:kpi_nameabovethr_l;

targettarget_name:kpi_namebelowthr_h;

targettarget_name:kpi_namebetweenthr_lthr_h;

其中,above表示应调整至高于给定的阈值thr_l,below表示应调整至低于给定的阈值thr_h,between表示应调整至给定的阈值thr_l,thr_h之间。

触发事件用于触发云计算动态资源调度,每个触发事件都对应一个动态资源调度目标,并说明在事件触发之后资源调度所达到的目标趋势。依据资源调度目标的关键字(above,between,lower)来建立触发事件的判决条件。

从云环境中获得地理大数据的云计算相关分部信息和所有的资源调度数据指令;所述云计算相关分部信息包括物理机的资源信息,虚拟机的运行状态信息和虚拟机部署的组件的运行状态信息;根据云计算相关分布信息获得每个资源调度数据指令的云计算资源调度模板,建立云计算资源调度模板集;具体的,资源调度数据指令是云计算进行动态资源调度的具体执行指令,每一种资源都对应特定的资源调度动作,具体的指令格式如:

add_cpu(vm,num);

reduce_cpu(vm,num);

以上两个指令用于增加或者减少目标虚拟机cpu数目,其中vm是目标虚拟机名称,num是增加或者减少具体数目。

资源调度模板包含资源调度作用目标,调度方式,调度相关约束条件。模板的形式如下:

resourcescheduletemplate:add_vmi_cpu;

objectname(调度对象):vmi;

operation(调度指令):add_cpu(vm,num);

constraints:vmi.status=running

vmi.cpu.count+num≤vmi.cpu.thr.count

上述例子描述了当vmi处于运行状态时,由于资源需求需要对vmi_cpu进行调度,利用调度指令add_cpu(vm,num)对资源调度作用对象vmi进行合理调度,执行的约束条件为vmi的状态(vmi.status)以及虚拟机vmi的cpu个数上限(vmi.cpu.thr.count)。

根据所述资源调度模板集和每个触发事件对应的资源调度数据指令确定每个触发事件对应的一个或多个云计算资源调度模板,形成云计算资源调度规则。具体的,每个云计算资源调度规则都包含一个对应的触发事件和一个资源调度模板集。在线阶段时,云计算相关kpi超出阈值后会使触发事件被触发,对应的触发事件对资源调度模板集进行过滤,保留与之符合的资源调度模板,与该触发事件一起组成云计算资源调度规则。

资源调度规则用于描述当需要对负载流量进行重新分配时可以执行哪些资源调度动作以达到资源调度目标,每个云计算资源调度规则可以描述为:

condition:triggerevent

resourceschedules:{template1,template1…templatei}

{template1,template1…templatei}为资源调度模板集,triggerevent为相应的触发事件。

对地理大数据的云计算过程进行监测,确定当前触发事件;

根据云计算资源调度规则库确定当前触发事件的一个或多个资源调度模板;具体的,每个规则中包含多个资源调度模板,其中每个模板都可以由调度作用目标,调度方式,资源调度数据指令自动生成。当自动生成模板后,根据触发事件类别对模板集进行筛选,保留符合要求的资源调度模板,与触发事件组成资源调度规则。

根据当前触发事件的一个或多个资源调度模板和当前负载流量数据信息生成一个或多个资源调度动作;具体的,通过确定的资源调度模板和当前负载流量数据信息生成一组资源调度动作,不同的资源调整量对应不同的资源调度动作,生成其中每个资源调度动作的过程即为确定资源调度数据指令参数(资源调度量)。

获取当前触发事件发生时及发生前的j-1个历史时刻的负载流量数据组成负载流量矩阵序列;用m行m列组成的m×m的网格表示的空间区域所观测到的动态系统,m×m表示m个地区之间流量的流入与流出,网格中的每个单元中都有对应的流量转移测量值p。

任意时刻包含空间信息的测量值(负载流量数据)均可以用元素x∈rm×m来表示,r代表所观测到的特征区域。定期记录测量结果,可以获得一组包含的序列。

将所述负载流量矩阵序列输入convlstm负载流量预测模型,对每个资源调度动作进行预测,获得每个资源调度动作的负载流量预测值。

选取负载流量预测值最小的资源调度动作作为最优调度方案,进行云资源调度。根据预测得到的地区间负载流量分布情况对资源调度动作进行筛选;具体的,由于不同的资源调度动作有不同的执行效果,为了对资源进行更合理的调度,均衡地使用计算机资源,需要采用预测模型对地区间负载流量进行提前预测,保留最符合预测负载流量分布的资源调度动作以获得最大执行收益,该方法可以更好地捕捉到地理大数据的时空特性。将负载流量矩阵序列作为预测模型的输入,输入为x∈rm×m的历史流量数据元素,通过预测模型产生o∈rm×m,即下一个时刻负载流量矩阵的预测值。如图2所示,所述convlstm负载流量预测模型包括编码网络和预测网络。预测网络的初始状态及单元输出是通过复制编码网络的最后一个状态得到的。这两个网络均通过叠加多个convlstm层来形成的,由于预测目标与输入具有相同的维数,将预测网络的所有状态连接起来送入1x1卷积层生成预测。

根据各个调度动作的目标对象,调度约束条件与地区负载预测结果的一致情况,调度动作的对象与流量转移矩阵中的重点地区尽可能重叠,调度的约束条件尽可能满足各个地区下一阶段的流量转移情况,选取与预测结果最符合的资源调度动作作为最优调度方案,进行云资源调度。

作为一种优选的实施方式,所述将所述负载流量矩阵序列输入convlstm负载流量预测模型,对每个资源调度动作进行预测,获得每个资源调度动作的负载流量预测值,具体为:将所述负载流量矩阵序列输入convlstm负载流量预测模型通过考虑重点地区,使用结合手动加权和自动加权方式的均方误差损失函数对预测模型进行优化从而获得更准确的负载流量分布预测结果。

所述将所述负载流量矩阵序列输入convlstm负载流量预测模型,对每个资源调度动作进行预测,获得每个资源调度动作的负载流量预测值,之前还包括:

叠加多个convlstm层形成编码预测结构,作为负载流量的端到端的训练模型;获取历史的云计算负载流量数据,形成训练样本集;基于所述训练样本集采用加权均方误差损失函数对训练模型进行优化,该损失函数通过考虑重点地区结合了手动和自动加权方式,得到convlstm负载流量预测模型。为了提高该训练模型性能,获得更好的预测结果,使用加权均方误差损失函数对该预测模型进行优化:

其中s[i][j]表示地区i到地区j流量转移量。图3示意性的展示了各地区间的流量转移矩阵,其中地区内部的负载流量一般远高于地区间的流量。一般地,单个时间片内该地区输出和输入流量反应了地区流量基数问题。输入与输出流量越大,即该地区所在行与列的流量转移越大,表明该地区的流量基数越大,到达一定阈值后被列入重点地区。为了得到更准确的预测值,加权方式包括手动加权与自动加权。

当自动加权时,

其中smax=max{s[1][1],s[1][2],s[1][3],…,s[m][m]}∈s。

当手动加权时对原w[i][j]进行调整,w[i][j]=α[i][j]w[i][j]⑶

考虑重点地区m∈q,若i∈q或j∈q时,α[i][j]∈[5,6];否则,α[i][j]=1。

综上,结合自动加权与手动加权时,

若i∈q或j∈q时,α[i][j]∈[5,6];否则,α[i][j]=1。

具体的,convlstm是一种结合了卷积运算的lstm单元,用卷积操作代替了传统lstm中的矩阵乘向量运算,可以实现在单个时间步接收矩阵或是更高维度的数据。由于卷积运算适用于任意维度的矩阵,因此利用convlstm可以对输入数据在时空两个维度上进行特征学习,非常适合于对未来时间段地区间流量的预测问题。

通过叠加若干个convlstm层,形成编码预测结构,建立负载流量的端到端的训练模型,后通过加权均方误差损失函数对模型优化,形成负载流量预测模型。

单个时间段内,计算的相关信息包含在流量向量中,流动模式会随时间变化,因此随之变化的相关信息包含在连续的流量矩阵序列中。

假设用m行,m列组成的m×m矩阵序列表示在空间区域上观测到的动态系统,网格的每个单元格中包含着与时间相关的测量值p,因此任意时刻的测量值都可以用元素x∈rm×m来表示,r表示观测的特征区域。不同时刻的观测结果可以表示为一组的序列,未来时间段地区间的时空计算负载序列表示为:

其中,k表示预测时间片段个数,j为历史时间片段(包括当前时刻)。

在convlstm中,所有的输入为对应的单元状态为c1,...,ct,隐藏状态为h1,...,ht,以及convlstm的门控信号it,ft,ot均为3d张量,其中后两个维度是空间维度(行与列)。通过在状态到状态和输入到状态转换的过程中使用卷积算子,convlstm可以实现根据局部临近区域的输入和过去的状态来确定网格中的某个单元格的未来状态。convlstm的关键方程如下所示,其中“*”表示卷积运算符,表示hadamard乘积:

提出新的多核均方误差损失函数,提高预测精度。令φ是从原始的rn空间到可再生核希尔伯特空间(reproducingkernelhilbertspace,rkhs)的非线性映射函数φ:rn→h。其内积可以写为:

当核函数取径向基函数核时,rkhs中数据点距离的平方记为:

rkhs中的距离可以设为损失函数每个核函数都面向对应的特征空间,不同的核函数具有的特性不同。多核模型灵活性更强,能获得比单核模型更好的性能。该多核损失函数为:

其中,μ1和μ2是径向基函数核的中心,是尺度参数,l∈[0,1]。

图4展示了训练时loss下降曲线对比图和运行效率对比图。从图中可以看出,相对于单核损失函数,多核损失函数收敛更好。多核损失函数的loss最低值比单核损失函数的最低值低了近0.03。而运行效率的降损在可接受的范围内。global_step/sec是指每秒更新梯度的次数。

本发明还提供一种面向地理大数据的云计算资源调度系统,所述调度系统包括:

云计算资源调度规则库建立模块,用于离线的获取地理大数据的云计算调度触发事件及每个触发事件对应的一个或多个资源调度模板,建立云计算资源调度规则库。

所述云计算资源调度规则库建立模块,具体包括:云计算关键性能指标数据库建立子模块,用于确定云计算关键性能指标数据,建立云计算关键性能指标数据库;云计算动态资源调度目标获取子模块,用于从云环境中获得地理大数据的云计算动态资源调度目标;触发事件抽取子模块,用于根据云计算关键性能指标数据库和云计算动态资源调度目标离线抽取云计算的所有的触发事件;云计算相关分部信息和资源调度数据指令获取子模块,用于从云环境中获得地理大数据的云计算相关分部信息和所有的资源调度数据指令;所述云计算相关分部信息包括物理机的资源信息,虚拟机的运行状态信息和虚拟机部署的组件的运行状态信息;云计算资源调度模板集建立子模块,用于根据云计算相关分布信息获得每个资源调度数据指令的云计算资源调度模板,建立云计算资源调度模板集;云计算资源调度规则建立子模块,用于根据所述资源调度模板集和每个触发事件对应的资源调度数据指令确定每个触发事件对应的一个或多个云计算资源调度模板,形成云计算资源调度规则。

触发事件监测模块,用于对地理大数据的云计算过程进行监测,确定当前触发事件。

资源调度模板确定模块,用于根据云计算资源调度规则库确定当前触发事件的一个或多个资源调度模板;

资源调度动作生成模块,用于根据当前触发事件的一个或多个资源调度模板和当前负载流量数据信息生成一个或多个资源调度动作。

负载流量矩阵序列获取模块,用于获取当前触发事件发生时及发生前的j-1个历史时刻的负载流量数据组成负载流量矩阵序列。

负载流量预测模块,用于将所述负载流量矩阵序列输入convlstm负载流量预测模型,对每个资源调度动作进行预测,获得每个资源调度动作的负载流量预测值;所述convlstm负载流量预测模型包括编码网络和预测网络。

最优调度方案选取模块,用于选取负载流量预测值最小的资源调度动作作为最优调度方案,进行云资源调度。

最优调度方案选取模块具体包括:下一时刻的负载流量转移矩阵建立子模块,用于将预测得到的每个资源调度动作的负载流量预测值,当前触发事件发生时及发生前的j-2个历史时刻的负载流量数据组成下一个时间段的流量转移矩阵,作为预测结果;最优调度方案选取子模块,根据各个调度动作的目标对象,调度约束条件与地区负载预测结果的一致情况,调度动作的对象与流量转移矩阵中的重点地区尽可能重叠,调度的约束条件尽可能满足各个地区下一阶段的流量转移情况,选取与预测结果最符合的资源调度动作作为最优调度方案,进行云资源调度。

作为一种优选的实施方式,所述调度系统还包括:训练模型建立模块,用于叠加多个convlstm层形成编码预测结构,作为负载流量的端到端的训练模型;训练样本集建立模块,用于获取历史的云计算负载流量数据,形成训练样本集;模型优化模块,用于基于所述训练样本集采用加权均方误差损失函数对训练模型进行优化,得到convlstm负载流量预测模型。

面向地理大数据的现有云计算资源分配和调度技术较少,而地理大数据处理又常常需要面对不同地理格局、分布与过程的数据,需要从时空和属性维度对不同数据“垂直”或“横向”调度。

本发明针对所要解决的技术问题是提出一种基于深度学习预测算法的云计算动态资源调度方法,能够面向地理大数据的时空两维的云计算,对不同类型的地理大数据根据其时空特性提前综合计算所需要的计算资源,合理调度并均衡使用计算机资源,以较小的开销减少数据传输的消耗,实现较好的负载均衡,提高计算效率。

地理大数据包括卫星、无人机遥感影像及监测台站等性质迥异的数据。人类行为数据与时间密切相关,需要分时调配计算资源。对地观测与地理位置密切相关,需要分地点调配计算资源。现在常见的是时间序列预测,但地理大数据需要时空序列联合预测。

本发明提供一种对不同类型的地理大数据,根据其时空特性提前综合计算所需要的计算资源的负载流量预测模型,以及基于此模型的云计算动态资源调度方法。

本发明将地理大数据和负载流量数据解构为时间空间两维序列,综合考量地理大数据和负载流量的数据时空属性。

本发明的模型借助给定的两维的地区间时空计算负载流动数据和地理大数据作为输入矩阵序列,计算未来若干个时间片段地区间的负载流动矩阵序列。通过该模型的预测结果来获得最佳负载均衡优化策略,实现对资源的合理调度。

本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。

本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处。综上所述,本说明书内容不应理解为对本发明的限制。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1