CN109684062B - 基于成本的跨云平台任务调度方法和系统 - Google Patents

基于成本的跨云平台任务调度方法和系统 Download PDF

Info

Publication number
CN109684062B
CN109684062B CN201811593363.5A CN201811593363A CN109684062B CN 109684062 B CN109684062 B CN 109684062B CN 201811593363 A CN201811593363 A CN 201811593363A CN 109684062 B CN109684062 B CN 109684062B
Authority
CN
China
Prior art keywords
cost
cloud platform
node
selection scheme
space
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
CN201811593363.5A
Other languages
English (en)
Other versions
CN109684062A (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.)
Genetalks Bio Tech Changsha Co ltd
Original Assignee
Genetalks Bio Tech Changsha 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 Genetalks Bio Tech Changsha Co ltd filed Critical Genetalks Bio Tech Changsha Co ltd
Priority to CN201811593363.5A priority Critical patent/CN109684062B/zh
Publication of CN109684062A publication Critical patent/CN109684062A/zh
Application granted granted Critical
Publication of CN109684062B publication Critical patent/CN109684062B/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/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
    • G06F9/4881Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues
    • 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/5061Partitioning or combining of resources
    • G06F9/5077Logical partitioning of resources; Management or configuration of virtualized resources

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

本发明公开了一种基于成本的跨云平台任务调度方法和系统,实施步骤包括根据待调度的工作流计算任务建立有向无环图,从有向无环图的起始节点出发依次计算各个节点选择不同云平台的数据传输的空间及流量成本得到可选方案及其对应的成本列表,并根据各个节点的可选方案构建所有节点的云平台选择方案,并遍历云平台选择方案获取成本最低的云平台选择方案;根据成本最低的云平台选择方案执行工作流计算任务的调度。本发明能够实现跨云平台任务调度,通过整体遍历任务工作流的有向无环图,把控任务全局调度部署,通过跨区域及跨云平台进行数据传输的空间成本的计算和判断,能更为准确的减少调度成本。

Description

基于成本的跨云平台任务调度方法和系统
技术领域
本发明涉及云计算平台的调度管理技术,具体涉及一种基于成本的跨云平台任务调度方法和系统。
背景技术
在现今云计算生态中,能否控制算法运行的成本已经成为判别系统是否优秀的标准之一,而在算法运行成本控制中占据主要地位的在于算法任务的调度方案。因此,任务能够以最低成本进行调度已经成为了调度算法最为重要的判定指标。
然而当前主流的云计算调度系统使用单一的云平台提供商,无法实现跨平台的任务调度。又或者在跨平台云调度中,没有对资源在不同云平台中进行传输所产生的空间消耗进行计算,无法满足跨平台任务调度的最优解方案,对系统的成本控制造成影响。
发明内容
本发明要解决的技术问题:针对现有技术的上述问题,提供一种基于成本的跨云平台任务调度方法和系统,本发明能够实现跨云平台任务调度,通过整体遍历任务工作流的有向无环图,把控任务全局调度部署,通过跨区域及跨云平台进行数据传输的空间成本的计算和判断,能更为准确的减少调度成本。
为了解决上述技术问题,本发明采用的技术方案为:
一种基于成本的跨云平台任务调度方法,实施步骤包括:
1)根据待调度的工作流计算任务建立有向无环图,所述有向无环图中的节点为工作流计算任务中需要进行调度的工作节点,边为工作节点之间的数据依赖;
2)从有向无环图的起始节点出发依次计算各个节点选择不同云平台的数据传输的空间及流量成本得到可选方案及其对应的成本列表,并根据各个节点的可选方案构建所有节点的云平台选择方案,并遍历云平台选择方案获取成本最低的云平台选择方案;
3)根据成本最低的云平台选择方案执行工作流计算任务的调度。
可选地,步骤2)的详细步骤包括:
2.1)选择有向无环图的起始节点作为当前节点;
2.2)根据当前节点的前置节点选择云平台的不同可选方案分别针对当前节点计算选择不同云平台的数据传输的空间及流量成本,得到当前节点的可选方案及其对应的成本列表;
2.3)判断当前节点是否存在下一个节点,如果存在下一个节点,则将下一个节点作为新的当前节点,跳转执行步骤2.2);否则,跳转执行步骤2.4);
2.4)针对有向无环图中的所有节点,为每一个节点从可选方案中选择一种方案构成初始的云平台选择方案,并将初始的云平台选择方案的所有节点选择对应云平台的数据传输的空间及流量成本求和作为当前最小成本cost-min;
2.5)针对有向无环图中的所有节点,重新为部分或者全部节点从可选方案中选择一种方案,构成新的云平台选择方案,将新的云平台选择方案的所有节点选择对应云平台的数据传输的空间及流量成本求和作为新的云平台选择方案的成本,并判断新的云平台选择方案的成本是否比当前最小成本cost-min小,如果比当前最小成本cost-min小则将新的云平台选择方案的成本作为新的当前最小成本cost-min,跳转执行步骤2.6);
2.6)判断云平台选择方案是否遍历完毕,如果尚未遍历完毕,则跳转执行步骤2.4);否则,将当前最小成本cost-min对应的云平台选择方案作为最终得到成本最低的云平台选择方案输出。
可选地,步骤2.2)针对当前节点计算选择不同云平台的数据传输的空间及流量成本的详细步骤包括:对任一云平台,分别计算当前节点i选择该云平台时的价格成本price-wi、将计算数据下载到选择该云平台机器中所需时间的闲置成本unused-wi、将计算数据下载到选择该云平台机器所需流量的空间成本space-wi,并将计算得到的当前节点选择该云平台时的价格成本price-wi、将计算数据下载到选择该云平台机器中所需时间的闲置成本unused-wi、将计算数据下载到选择该云平台机器所需流量的空间成本space-wi三者相加得到当前节点i选择该云平台的成本。
本发明还提供一种基于成本的跨云平台任务调度系统,包括计算机设备,所述计算机设备被编程以执行本发明前述基于成本的跨云平台任务调度方法的步骤。
本发明还提供一种基于成本的跨云平台任务调度系统,包括计算机设备,所述计算机设备的存储介质中存储有被编程以执行本发明前述基于成本的跨云平台任务调度方法的计算机程序。
本发明还提供一种计算机可读存储介质,所述计算机可读存储介质中存储有被编程以执行本发明前述基于成本的跨云平台任务调度方法的计算机程序。
本发明还提供一种基于成本的跨云平台任务调度系统,包括:
计算任务解析程序单元,用于根据待调度的工作流计算任务建立有向无环图,所述有向无环图中的节点为工作流计算任务中需要进行调度的工作节点,边为工作节点之间的数据依赖;
云平台选择方案计算程序单元,用于从有向无环图的起始节点出发依次计算各个节点选择不同云平台的数据传输的空间及流量成本得到可选方案及其对应的成本列表,并根据各个节点的可选方案构建所有节点的云平台选择方案,并遍历云平台选择方案获取成本最低的云平台选择方案;
云平台选择方案调度处理程序单元,用于根据成本最低的云平台选择方案执行工作流计算任务的调度。
可选地,所述云平台选择方案计算程序单元包括:
当前节点选择程序模块,用于选择有向无环图的起始节点作为当前节点;
节点遍历程序模块,用于根据当前节点的前置节点选择云平台的不同可选方案分别针对当前节点计算选择不同云平台的数据传输的空间及流量成本,得到当前节点的可选方案及其对应的成本列表;
节点遍历判断程序模块,用于判断当前节点是否存在下一个节点,如果存在下一个节点,则将下一个节点作为新的当前节点,跳转执行节点遍历程序模块;否则,跳转执行当前最小成本初始化程序单元;
当前最小成本初始化程序单元,用于针对有向无环图中的所有节点,为每一个节点从可选方案中选择一种方案构成初始的云平台选择方案,并将初始的云平台选择方案的所有节点选择对应云平台的数据传输的空间及流量成本求和作为当前最小成本cost-min;
当前最小成本迭代程序单元,用于针对有向无环图中的所有节点,重新为部分或者全部节点从可选方案中选择一种方案,构成新的云平台选择方案,将新的云平台选择方案的所有节点选择对应云平台的数据传输的空间及流量成本求和作为新的云平台选择方案的成本,并判断新的云平台选择方案的成本是否比当前最小成本cost-min小,如果比当前最小成本cost-min小则将新的云平台选择方案的成本作为新的当前最小成本cost-min;
当前最小成本迭代判断程序单元,用于判断云平台选择方案是否遍历完毕,如果尚未遍历完毕,则跳转执行当前最小成本迭代程序单元;否则,将当前最小成本cost-min对应的云平台选择方案作为最终得到成本最低的云平台选择方案输出。
可选地,当前最小成本迭代程序单元保护针对当前节点计算选择不同云平台的数据传输的空间及流量成本的子程序模块,该子程序模块被编程以执行下述步骤:对任一云平台,分别计算当前节点i选择该云平台时的价格成本price-wi、将计算数据下载到选择该云平台机器中所需时间的闲置成本unused-wi、将计算数据下载到选择该云平台机器所需流量的空间成本space-wi,并将计算得到的当前节点选择该云平台时的价格成本price-wi、将计算数据下载到选择该云平台机器中所需时间的闲置成本unused-wi、将计算数据下载到选择该云平台机器所需流量的空间成本space-wi三者相加得到当前节点i选择该云平台的成本。
和现有技术相比,本发明具有下述优点:
1、本发明根据待调度的工作流计算任务建立有向无环图,实现跨云平台任务调度通过整体遍历任务工作流的有向无环图,把控任务全局调度部署,
2、本发明根据待调度的工作流计算任务建立有向无环图,从有向无环图的起始节点出发依次计算各个节点选择不同云平台的数据传输的空间及流量成本得到可选方案及其对应的成本列表,并根据各个节点的可选方案构建所有节点的云平台选择方案,并遍历云平台选择方案获取成本最低的云平台选择方案,根据成本最低的云平台选择方案执行工作流计算任务的调度,通过跨区域及跨云平台进行数据传输的空间成本的计算和判断,能更为准确的减少调度成本。
附图说明
图1为本发明实施例方法的基本流程示意图。
图2为本发明实施例中得到的有向无环图示意图。
具体实施方式
如图1所示,本实施例基于成本的跨云平台任务调度方法的实施步骤包括:
1)根据待调度的工作流计算任务建立有向无环图(DAG图),所述有向无环图中的节点为工作流计算任务中需要进行调度的工作节点,边为工作节点之间的数据依赖;
2)从有向无环图的起始节点出发依次计算各个节点选择不同云平台的数据传输的空间及流量成本得到可选方案及其对应的成本列表,并根据各个节点的可选方案构建所有节点的云平台选择方案,并遍历云平台选择方案获取成本最低的云平台选择方案;
3)根据成本最低的云平台选择方案执行工作流计算任务的调度。
如图2所示,工作流计算任务中需要进行调度的工作节点包括w0~w6,因此步骤1)中根据待调度的工作流计算任务建立有向无环图包括w0~w6一共六个节点,其中,w0为任务工作流起始节点,w1、w2、w3为并行工作节点,前置节点为w0,w4的前置节点为w1、w2,w5的前置节点为w2、w3,w6作为结束节点,其前置节点为w4、w5。
本实施例中,步骤2)的详细步骤包括:
2.1)选择有向无环图的起始节点作为当前节点;
2.2)根据当前节点的前置节点选择云平台的不同可选方案分别针对当前节点计算选择不同云平台的数据传输的空间及流量成本,得到当前节点的可选方案及其对应的成本列表;
2.3)判断当前节点是否存在下一个节点,如果存在下一个节点,则将下一个节点作为新的当前节点,跳转执行步骤2.2);否则,跳转执行步骤2.4);
2.4)针对有向无环图中的所有节点,为每一个节点从可选方案中选择一种方案构成初始的云平台选择方案,并将初始的云平台选择方案的所有节点选择对应云平台的数据传输的空间及流量成本求和作为当前最小成本cost-min;
2.5)针对有向无环图中的所有节点,重新为部分或者全部节点从可选方案中选择一种方案,构成新的云平台选择方案,将新的云平台选择方案的所有节点选择对应云平台的数据传输的空间及流量成本求和作为新的云平台选择方案的成本,并判断新的云平台选择方案的成本是否比当前最小成本cost-min小,如果比当前最小成本cost-min小则将新的云平台选择方案的成本作为新的当前最小成本cost-min,跳转执行步骤2.6);
2.6)判断云平台选择方案是否遍历完毕,如果尚未遍历完毕,则跳转执行步骤2.4);否则,将当前最小成本cost-min对应的云平台选择方案作为最终得到成本最低的云平台选择方案输出。
本实施例中,步骤2.2)针对当前节点计算选择不同云平台的数据传输的空间及流量成本的详细步骤包括:对任一云平台,分别计算当前节点i选择该云平台时的价格成本price-wi、将计算数据下载到选择该云平台机器中所需时间的闲置成本unused-wi、将计算数据下载到选择该云平台机器所需流量的空间成本space-wi,并将计算得到的当前节点选择该云平台时的价格成本price-wi、将计算数据下载到选择该云平台机器中所需时间的闲置成本unused-wi、将计算数据下载到选择该云平台机器所需流量的空间成本space-wi三者相加得到当前节点i选择该云平台的成本。本实施例中从选择该云平台时的价格成本price-wi、将计算数据下载到选择该云平台机器中所需时间的闲置成本unused-wi、将计算数据下载到选择该云平台机器所需流量的空间成本space-wi三者来计算选择不同云平台的数据传输的空间及流量成本,具有准确度高的优点。
本实施例中,步骤2.2)根据当前节点的前置节点选择云平台的不同可选方案分别针对当前节点计算选择不同云平台的数据传输的空间及流量成本,是因为当前节点选择不同云平台的数据传输的空间及流量成本和当前节点的前置节点选择云平台的不同可选方案直接相关。
设有两个数据中心area1、area2,并且任务有任务节点为w0和w1。有如下情景:在对w0进行判断的时候,两个数据中心都在可选方案之中,则可能的成本有cost-w0_1、cost-w0_2。同时w0生成的文件会存放在相应所选择的数据中心区域中。若w0选择area1,其成本为cost-w0_1。则计算w1时,若可选方案依然为两个数据中心,则因w0的生成文件存放在area1中,在计算w1的成本时,需要获取area1的数据传输的成本,因此有cost-w0_1-w1_1,cost-w0_1-w1_2。若w0选择的是area2,成本是cost-w0_2。需要获取area2的数据传输的成本,在计算w1时,有cost-w0_2-w1_1,cost-w0_2-w1_2。一般情况下,cost-w0_1-w1_1 不等于 cost-w0_2-w1_1; cost-w0_1-w1_2 不等于 cost-w0_2-w1_2。因此对w1来说有4种不同的方案。并且w1需要选择其中某个方案的时候,必须是基于w0的选择进行。既若w0选择cost-w0_1方案时,w1只能选择cost-w0_1-w1_1或者cost-w0_1-w1_2;若w0选择cost-w0_2方案时,w1只能选择cost-w0_2-w1_1或者cost-w0_2-w1_2。由于本实施例中为成本的判断中添加了资源传输的空间成本的计算,而前置节点的方案选择对当前节点的方案所造成的影响正是资源传输成本的表现之一,通过上述方案,使得成本计算更加准确。
设定成本以人民币为单位,若计算任务需要使用4核cpu及16GB内存的机器,以AWS的t2.xlarge机型及阿里云的ecs.g5.xlarge机型作为机器的可选方案,以AWS的ap-southeast-1区域(新加坡)、us-east-1区域(美国东部弗吉利亚北部)区域以及阿里云的cn-qingdao华北(青岛)区域作为区域的可选方案。假设计算数据资源大小为100GB,存储在AWS的ap-southeast-1区域S3桶中。预估计算节点的计算任务需要在相应机器上执行60分钟。根据AWS及阿里云平台相应机器在不同区域内的实时价格进行计算。
其中,价格成本price-wi:由云平台定价方案与计算节点预估时间计算获得,若无预估时间以60分钟计算,即price-wi = cloud_price * expect_run_time,其中cloud_price表示云平台定价,expect_run_time表示计算节点预估时间。例如,AWS的ap-southeast-1区域(新加坡)计算节点的实时竞价成本为每小时0.0701美元,AWS的us-east-1区域(美国东部弗吉利亚北部)计算节点的实时竞价成本为每小时0.0557美元,根据汇率换算,则AWS的ap-southeast-1区域计算节点的具体价格成本为0.48元,AWS的us-east-1区域计算节点的具体价格成本为 0.38元。以阿里云的cn-qingdao华北(青岛)区域计算节点的实时竞价成本为0.34元,则阿里云的cn-qingdao华北区域计算节点具体价格成本为0.34元。
其中,将计算数据下载到选择该云平台机器中所需时间的闲置成本unused-wi:由计算资源大小、云平台定价方案及测试速率计算获得,即unused-wi = cloud_price *(data_size/transmission_speed),cloud_price表示云平台定价,data_size表示计算资源大小,transmission_speed表示测试速率。例如,根据网络传输速率可设定下载至AWS的ap-southeast-1区域的机器(计算节点)所需时间设为60分钟,则数据下载到选择该云平台机器中所需时间的闲置成本为0.48元。下载至AWS的us-east-1区域所需时间设为180分钟,数据下载到选择该云平台机器中所需时间的闲置成本为1.14元。下载至阿里云的华北(青岛)区域所需时间为240分钟,数据下载到选择该云平台机器中所需时间的闲置成本为1.36元。
其中,将计算数据下载到选择该云平台机器所需流量的空间成本space-wi:由计算资源大小及云平台数据传输定价方案计算获得,即space-wi = data_size * cloud_transmission_price。其中data_size表示计算资源大小,cloud_transmission_price表示云平台数据传输定价。例如,由于AWS在同一数据中心区域数据传输免费,因此下载至AWS的ap-southeast-1区域的机器中空间成本为0,所需空间成本为0元。下载至AWS的us-east-1区域每GB需要0.62元,则所需空间成本为62元。下载至阿里云的华北(青岛)区域每GB需要0.83元,则所需空间成本为83元。
本实施例中,针对起始节点w0节点选择相应云平台资源时的价格成本数据price-w0、输入文件下载至相应机器所需时间的闲置成本unused-w0和下载所需流量的空间成本space-w0,三个数据相加并列出成本列表cost-w0-list。针对起始节点w0的每一种可选方案,可确定其下一个节点(w1、w2、w3)的选择不同云平台的数据传输的空间及流量成本,且w1、w2、w3可以并行处理。在计算节点w1~w3节点成本时,需要获取起始节点w0节点生成文件所在的云平台区域以及大小,并计算节点w1~w3选择相应云平台资源时的价格成本数据price-w1、price-w2、price-w3,根据起始节点w0输出文件作为输入文件下载至相遇机器所需时间的闲置成本unused-w1、unused-w2、unused-w3,下载所需流量的空间成本space-w1、space-w2、space-w3。并相加列出成本列表cost-w1-list、cost-w2-list、cost-w3-list。依次类推,可以分别计算出节点w1~w6的成本列表。在此基础上,可以通过迭代遍历的方式生成不同的云平台选择方案,并计算不同云平台选择方案下各个节点选择平台方式对应的成本,从而获得云平台选择方案的成本,并通过迭代遍历获取成本最低的云平台选择方案输出。
本实施例还提供一种基于成本的跨云平台任务调度系统,包括计算机设备,所述计算机设备被编程以执行本实施例前述基于成本的跨云平台任务调度方法的步骤。
本实施例还提供一种基于成本的跨云平台任务调度系统,包括计算机设备,所述计算机设备的存储介质中存储有被编程以执行本实施例前述基于成本的跨云平台任务调度方法的计算机程序。
本实施例还提供一种计算机可读存储介质,该计算机可读存储介质中存储有被编程以执行本实施例前述基于成本的跨云平台任务调度方法的计算机程序。
对应地,本实施例还提供一种基于成本的跨云平台任务调度系统,包括:
计算任务解析程序单元,用于根据待调度的工作流计算任务建立有向无环图,所述有向无环图中的节点为工作流计算任务中需要进行调度的工作节点,边为工作节点之间的数据依赖;
云平台选择方案计算程序单元,用于从有向无环图的起始节点出发依次计算各个节点选择不同云平台的数据传输的空间及流量成本得到可选方案及其对应的成本列表,并根据各个节点的可选方案构建所有节点的云平台选择方案,并遍历云平台选择方案获取成本最低的云平台选择方案;
云平台选择方案调度处理程序单元,用于根据成本最低的云平台选择方案执行工作流计算任务的调度。
本实施例中,所述云平台选择方案计算程序单元包括:
当前节点选择程序模块,用于选择有向无环图的起始节点作为当前节点;
节点遍历程序模块,用于根据当前节点的前置节点选择云平台的不同可选方案分别针对当前节点计算选择不同云平台的数据传输的空间及流量成本,得到当前节点的可选方案及其对应的成本列表;
节点遍历判断程序模块,用于判断当前节点是否存在下一个节点,如果存在下一个节点,则将下一个节点作为新的当前节点,跳转执行节点遍历程序模块;否则,跳转执行当前最小成本初始化程序单元;
当前最小成本初始化程序单元,用于针对有向无环图中的所有节点,为每一个节点从可选方案中选择一种方案构成初始的云平台选择方案,并将初始的云平台选择方案的所有节点选择对应云平台的数据传输的空间及流量成本求和作为当前最小成本cost-min;
当前最小成本迭代程序单元,用于针对有向无环图中的所有节点,重新为部分或者全部节点从可选方案中选择一种方案,构成新的云平台选择方案,将新的云平台选择方案的所有节点选择对应云平台的数据传输的空间及流量成本求和作为新的云平台选择方案的成本,并判断新的云平台选择方案的成本是否比当前最小成本cost-min小,如果比当前最小成本cost-min小则将新的云平台选择方案的成本作为新的当前最小成本cost-min;
当前最小成本迭代判断程序单元,用于判断云平台选择方案是否遍历完毕,如果尚未遍历完毕,则跳转执行当前最小成本迭代程序单元;否则,将当前最小成本cost-min对应的云平台选择方案作为最终得到成本最低的云平台选择方案输出。
本实施例中,当前最小成本迭代程序单元保护针对当前节点计算选择不同云平台的数据传输的空间及流量成本的子程序模块,该子程序模块被编程以执行下述步骤:对任一云平台,分别计算当前节点i选择该云平台时的价格成本price-wi、将计算数据下载到选择该云平台机器中所需时间的闲置成本unused-wi、将计算数据下载到选择该云平台机器所需流量的空间成本space-wi,并将计算得到的当前节点选择该云平台时的价格成本price-wi、将计算数据下载到选择该云平台机器中所需时间的闲置成本unused-wi、将计算数据下载到选择该云平台机器所需流量的空间成本space-wi三者相加得到当前节点i选择该云平台的成本。
以上所述仅是本发明的优选实施方式,本发明的保护范围并不仅局限于上述实施例,凡属于本发明思路下的技术方案均属于本发明的保护范围。应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理前提下的若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。

Claims (5)

1.一种基于成本的跨云平台任务调度方法,其特征在于实施步骤包括:
1)根据待调度的工作流计算任务建立有向无环图,所述有向无环图中的节点为工作流计算任务中需要进行调度的工作节点,边为工作节点之间的数据依赖;
2)从有向无环图的起始节点出发依次计算各个节点选择不同云平台的数据传输的空间及流量成本得到可选方案及其对应的成本列表,并根据各个节点的可选方案构建所有节点的云平台选择方案,并遍历云平台选择方案获取成本最低的云平台选择方案;
3)根据成本最低的云平台选择方案执行工作流计算任务的调度;
步骤2)的详细步骤包括:
2.1)选择有向无环图的起始节点作为当前节点;
2.2)根据当前节点的前置节点选择云平台的不同可选方案分别针对当前节点计算选择不同云平台的数据传输的空间及流量成本,得到当前节点的可选方案及其对应的成本列表;
2.3)判断当前节点是否存在下一个节点,如果存在下一个节点,则将下一个节点作为新的当前节点,跳转执行步骤2.2);否则,跳转执行步骤2.4);
2.4)针对有向无环图中的所有节点,为每一个节点从可选方案中选择一种方案构成初始的云平台选择方案,并将初始的云平台选择方案的所有节点选择对应云平台的数据传输的空间及流量成本求和作为当前最小成本cost-min;
2.5)针对有向无环图中的所有节点,重新为部分或者全部节点从可选方案中选择一种方案,构成新的云平台选择方案,将新的云平台选择方案的所有节点选择对应云平台的数据传输的空间及流量成本求和作为新的云平台选择方案的成本,并判断新的云平台选择方案的成本是否比当前最小成本cost-min小,如果比当前最小成本cost-min小则将新的云平台选择方案的成本作为新的当前最小成本cost-min,跳转执行步骤2.6);
2.6)判断云平台选择方案是否遍历完毕,如果尚未遍历完毕,则跳转执行步骤2.4);否则,将当前最小成本cost-min对应的云平台选择方案作为最终得到成本最低的云平台选择方案输出;
步骤2.2)针对当前节点计算选择不同云平台的数据传输的空间及流量成本的详细步骤包括:对任一云平台,分别计算当前节点i选择该云平台时的价格成本price-wi、将计算数据下载到选择该云平台机器中所需时间的闲置成本unused-wi、将计算数据下载到选择该云平台机器所需流量的空间成本space-wi,并将计算得到的当前节点选择该云平台时的价格成本price-wi、将计算数据下载到选择该云平台机器中所需时间的闲置成本unused-wi、将计算数据下载到选择该云平台机器所需流量的空间成本space-wi三者相加得到当前节点i选择该云平台的成本。
2.一种基于成本的跨云平台任务调度系统,包括计算机设备,其特征在于:所述计算机设备被编程以执行权利要求1所述基于成本的跨云平台任务调度方法的步骤。
3.一种基于成本的跨云平台任务调度系统,包括计算机设备,其特征在于:所述计算机设备的存储介质中存储有被编程以执行权利要求1所述基于成本的跨云平台任务调度方法的计算机程序。
4.一种计算机可读存储介质,其特征在于:所述计算机可读存储介质中存储有被编程以执行权利要求1所述基于成本的跨云平台任务调度方法的计算机程序。
5.一种基于成本的跨云平台任务调度系统,其特征在于包括:
计算任务解析程序单元,用于根据待调度的工作流计算任务建立有向无环图,所述有向无环图中的节点为工作流计算任务中需要进行调度的工作节点,边为工作节点之间的数据依赖;
云平台选择方案计算程序单元,用于从有向无环图的起始节点出发依次计算各个节点选择不同云平台的数据传输的空间及流量成本得到可选方案及其对应的成本列表,并根据各个节点的可选方案构建所有节点的云平台选择方案,并遍历云平台选择方案获取成本最低的云平台选择方案;
云平台选择方案调度处理程序单元,用于根据成本最低的云平台选择方案执行工作流计算任务的调度;
所述云平台选择方案计算程序单元包括:
当前节点选择程序模块,用于选择有向无环图的起始节点作为当前节点;
节点遍历程序模块,用于根据当前节点的前置节点选择云平台的不同可选方案分别针对当前节点计算选择不同云平台的数据传输的空间及流量成本,得到当前节点的可选方案及其对应的成本列表;
节点遍历判断程序模块,用于判断当前节点是否存在下一个节点,如果存在下一个节点,则将下一个节点作为新的当前节点,跳转执行节点遍历程序模块;否则,跳转执行当前最小成本初始化程序单元;
当前最小成本初始化程序单元,用于针对有向无环图中的所有节点,为每一个节点从可选方案中选择一种方案构成初始的云平台选择方案,并将初始的云平台选择方案的所有节点选择对应云平台的数据传输的空间及流量成本求和作为当前最小成本cost-min;
当前最小成本迭代程序单元,用于针对有向无环图中的所有节点,重新为部分或者全部节点从可选方案中选择一种方案,构成新的云平台选择方案,将新的云平台选择方案的所有节点选择对应云平台的数据传输的空间及流量成本求和作为新的云平台选择方案的成本,并判断新的云平台选择方案的成本是否比当前最小成本cost-min小,如果比当前最小成本cost-min小则将新的云平台选择方案的成本作为新的当前最小成本cost-min;
当前最小成本迭代判断程序单元,用于判断云平台选择方案是否遍历完毕,如果尚未遍历完毕,则跳转执行当前最小成本迭代程序单元;否则,将当前最小成本cost-min对应的云平台选择方案作为最终得到成本最低的云平台选择方案输出;
当前最小成本迭代程序单元保护针对当前节点计算选择不同云平台的数据传输的空间及流量成本的子程序模块,该子程序模块被编程以执行下述步骤:对任一云平台,分别计算当前节点i选择该云平台时的价格成本price-wi、将计算数据下载到选择该云平台机器中所需时间的闲置成本unused-wi、将计算数据下载到选择该云平台机器所需流量的空间成本space-wi,并将计算得到的当前节点选择该云平台时的价格成本price-wi、将计算数据下载到选择该云平台机器中所需时间的闲置成本unused-wi、将计算数据下载到选择该云平台机器所需流量的空间成本space-wi三者相加得到当前节点i选择该云平台的成本。
CN201811593363.5A 2018-12-25 2018-12-25 基于成本的跨云平台任务调度方法和系统 Active CN109684062B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201811593363.5A CN109684062B (zh) 2018-12-25 2018-12-25 基于成本的跨云平台任务调度方法和系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201811593363.5A CN109684062B (zh) 2018-12-25 2018-12-25 基于成本的跨云平台任务调度方法和系统

Publications (2)

Publication Number Publication Date
CN109684062A CN109684062A (zh) 2019-04-26
CN109684062B true CN109684062B (zh) 2020-10-20

Family

ID=66188312

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811593363.5A Active CN109684062B (zh) 2018-12-25 2018-12-25 基于成本的跨云平台任务调度方法和系统

Country Status (1)

Country Link
CN (1) CN109684062B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111861793B (zh) * 2020-07-29 2021-10-08 广东电网有限责任公司电力调度控制中心 基于云边协同计算架构的配用电业务分配方法及装置
CN113220480B (zh) * 2021-04-29 2023-03-10 西安易联趣网络科技有限责任公司 分布式的数据任务跨云调度系统及方法

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104965755B (zh) * 2015-05-04 2018-08-21 东南大学 基于预算约束的云服务工作流调度方法
US10877816B2 (en) * 2016-04-20 2020-12-29 Samsung Electronics Co., Ltd. Optimal task scheduler
CN107038070B (zh) * 2017-04-10 2021-04-16 郑州轻工业学院 一种云环境下执行可靠性感知的并行任务调度方法
CN108182109B (zh) * 2017-12-28 2021-08-31 福州大学 一种云环境下的工作流调度与数据分配方法
CN108768703A (zh) * 2018-05-15 2018-11-06 长沙理工大学 一种云工作流调度的能耗优化方法、云计算系统
CN108628665A (zh) * 2018-05-16 2018-10-09 天津科技大学 基于数据密集型科学工作流的任务调度与虚拟机整合方法

Also Published As

Publication number Publication date
CN109684062A (zh) 2019-04-26

Similar Documents

Publication Publication Date Title
CN113703775B (zh) 一种编译方法、装置、设备及存储介质
EP2447838A1 (en) Technique for efficient parallelization of software analysis in a distributed computing environment through intelligent dynamic load balancing
CN114745317B (zh) 面向算力网络的计算任务调度方法及相关设备
EP2447841B1 (en) Scheduling policy for efficient parallelization of software analysis in a distributed computing environment
CN104778079A (zh) 用于调度、执行的装置和方法以及分布式系统
CN104038540A (zh) 一种应用代理服务器自动选择方法及系统
US20170012848A1 (en) Parallelized network traffic flow availability simulation using stochastic process and traffic engineering algorithms
CN109684062B (zh) 基于成本的跨云平台任务调度方法和系统
Schlinker et al. Condor: Better topologies through declarative design
US20120110550A1 (en) Node computation initialization technique for efficient parallelization of software analysis in a distributed computing environment
US8914775B2 (en) Dynamic and intelligent partial computation management for efficient parallelization of software analysis in a distributed computing environment
CN115062784A (zh) 针对神经网络算子融合的端云协同推理方法及装置
WO2016018352A1 (en) Platform configuration selection based on a degraded makespan
Barrameda et al. A novel statistical cost model and an algorithm for efficient application offloading to clouds
Duong et al. Distributed machine learning on IAAS clouds
US8539500B2 (en) Efficient partial execution for the parallelization of software analysis in a distributed computing environment
CN102004947A (zh) 变换面向服务的体系结构模型为面向服务的基础设施模型
US20220253334A1 (en) Scheduling control apparatus, scheduling control method and program
Mariano et al. A generic and highly efficient parallel variant of boruvka's algorithm
CN106155822A (zh) 一种处理能力评估方法及装置
Ni et al. Priced timed petri nets based resource allocation strategy for fog computing
EP3053034A1 (en) Processing an action based on an attribute
US20120221304A1 (en) Integration of workflows from various systems
US20170061054A1 (en) Automated timing analysis
Kletzander et al. Branch and price for bus driver scheduling with complex break constraints

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
CB02 Change of applicant information
CB02 Change of applicant information

Address after: 410000 No. 1101, C2 Building, Yuyuan, Lugu, 27 Wenxuan Road, Changsha High-tech Development Zone, Changsha City, Hunan Province

Applicant after: Human and Future Biotechnology (Changsha) Co., Ltd.

Address before: 410000 Building 1101, C2 Yuyuan, Lugu, No. 27 Wenxuan Road, Changsha High-tech Development Zone, Kaifu District, Changsha City, Hunan Province

Applicant before: Human and Future Biotechnology (Changsha) Co., Ltd.

GR01 Patent grant
GR01 Patent grant