CN105740249B - 一种大数据作业并行调度过程中的处理方法及其系统 - Google Patents
一种大数据作业并行调度过程中的处理方法及其系统 Download PDFInfo
- Publication number
- CN105740249B CN105740249B CN201410747978.4A CN201410747978A CN105740249B CN 105740249 B CN105740249 B CN 105740249B CN 201410747978 A CN201410747978 A CN 201410747978A CN 105740249 B CN105740249 B CN 105740249B
- Authority
- CN
- China
- Prior art keywords
- cost
- node
- data
- assignment scheme
- acquiring
- 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
Links
Images
Landscapes
- Computer And Data Communications (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种大数据作业并行调度过程中的处理方法及其系统,方法包括:通过大数据作业的数据放置获取任务集合及节点集合,并根据任务集合、节点集合及预设的惩罚代价算法,获取惩罚代价取得最小值对应的指派方案;根据惩罚代价等于最小值对应的指派方案,将任务集合的数据指派至所述节点集合,并在节点结合上进行计算得到中间结果;所述节点集合根据节点流量、节点网络传输代价及预设的流量代价算法,获取流量代价取得最小值的数据传输路径,并将所述中间结果从所述节点集合传输至所述任务集合。本发明通过优化中间数据管理机制,极大降低大数据作业的处理时间,而且有效利用内存资源加快数据块读写速度,减少后继作业读取数据I/O开销。
Description
技术领域
本发明涉及海量数据元管理及处理技术领域,尤其涉及的是一种大数据作业并行调度过程中的处理方法及其系统。
背景技术
随着社交网络、电子商务、在线视频等新一代互联网应用的蓬勃发展,产生和积累了海量业务数据。Facebook、Yahoo、Google以及淘宝等公司每天都需要处理PB级的大数据(Big Data),以分析产品销售记录、Web页面、系统运行日志等信息。云计算技术是对大数据进行分析和处理的主要技术。影响云计算技术处理大数据性能的关键因素是:计算时间、网络传输时间和I/O读取时间。为了减少计算时间,将数据处理作业分成可并行执行的许多子任务,由数据并行作业执行引擎负责调度执行;与之相匹配的是将大数据分割成块,由分布式文件系统负责存储管理和维护,高速并行读取大数据文件,大大较少I/O时间。
在目前的大数据处理框架中,数据并行作业执行引擎把中间结果保存在分布式文件系统中,后继作业执行时,再从分布式文件系统中读取中间数据,该方法易于实现。但是,面对大数据的处理,中间结果数据也是海量的,从磁盘上获取中间结果数据,需要耗费大量的性能开销。当多个后继作业需要同一个中间数据作输入时,Hadoop系统设计了固定副本数量存放中间数据的方法,但该方法不能保证中间数据被后继作业快速有效访问并且由于作业子任务指派的数据本地性策略,会导致存放该中间数据的计算节点负载剧增。为了解决这个问题,有人在Max-Min公平调度算法的基础上设计了延迟调度(Delay Scheduling),通过推迟调度一部分作业并使这些作业等待合适的计算节点,以达到较高的数据本地性。但是在等待开销较大的情况下,延迟策略会影响作业完成时间。也有人提出并发作业的中间结果放置问题。但只是尽量满足中间结果数据本地性的要求,而没有考虑网络带宽的动态性。实际上,在网络带宽足够高的情况下,过分追求数据本地生反而会影响系统的执行性能。
上述方案都在一定程度上解决了大数据作业并行执行问题,但是都有它们不足的地方,(1)随着数据量的增加,中间结果数据计算的时间很长,严重阻碍后续作业的调度;(2)延迟调度虽然能达到数据本地性的需求,但是要等待空闲节点,容易引起死锁问题;(3)中间结果没有充分考虑带宽的动态性问题,容易造成带宽的浪费或拥挤;(4)缺乏高效的内存利用机制。
因此,现有技术还有待于改进和发展。
发明内容
本发明要解决的技术问题在于,针对现有技术的上述缺陷,提供一种大数据作业并行调度过程中的处理方法及其系统,通过优化中间数据管理机制,大大的降低了大数据作业的处理时间,而且有效利用内存资源加快数据块读写速度,减少后继作业读取数据时的I/O开销。
本发明解决技术问题所采用的技术方案如下:
一种大数据作业并行调度过程中的处理方法,其中,所述方法包括步骤:
A、通过大数据作业的数据放置获取任务集合及节点集合,并根据所述任务集合、所述节点集合及预设的惩罚代价算法,获取惩罚代价取得最小值对应的指派方案;
B、根据惩罚代价等于最小值对应的指派方案,将所述任务集合的数据指派至所述节点集合,并在所述节点结合上进行计算得到中间结果;
C、所述节点集合根据节点流量、节点网络传输代价及预设的流量代价算法,获取流量代价取得最小值的数据传输路径,并将所述中间结果从所述节点集合传输至所述任务集合。
所述大数据作业并行调度过程中的处理方法,其中,所述步骤A之前还包括:
S、预先设置用于确定惩罚代价的惩罚代价算法,及用于确定网络传输流量代价的流量代价算法。
所述大数据作业并行调度过程中的处理方法,其中,所述步骤A具体包括:
A 1、通过大数据作业的数据放置获取任务集合及节点集合,并通过将所述任务集合的数据块放置在节点集合中的本地节点,获取初始指派方案;
A2、根据所述惩罚代价算法获取初始指派方案的惩罚代价,并判断初始指派方案的惩罚代价是否等于0,当等于0时则执行步骤A3,当不等于0时则执行步骤A4;
A3、确定所述初始指派方案为惩罚代价等于最小值对应的指派方案;
A4、从最晚空闲的计算节点移动一个任务至所述节点集合中的剩余节点,得到当前指派方案;
A5、根据所述惩罚代价算法获取当前指派方案的惩罚代价,并判断当前指派方案的惩罚代价是否等于最小值,当等于最小值时则执行步骤A6,当不等于最小值时则返回执行步骤A4;
A6、确定所述当前指派方案为惩罚代价等于最小值对应的指派方案。
所述大数据作业并行调度过程中的处理方法,其中,所述步骤C具体包括:
C1、获取所述节点集合至所述任务集合的数据传输路径;
C2、获取每一数据传输路径的节点流量及网络传输代价,并根据节点流量与网络传输代价之积获取每一数据传输路径的流量代价;
C3、获取流量代价取得最小值的数据传输路径,并将所述中间结果从所述节点集合传输至所述任务集合。
所述大数据作业并行调度过程中的处理方法,其中,所述指派方案为所述任务集合到所述节点集合的映射。
一种大数据作业并行调度过程中的处理系统,其中,包括:
方案获取模块,用于通过大数据作业的数据放置获取任务集合及节点集合,并根据所述任务集合、所述节点集合及预设的惩罚代价算法,获取惩罚代价取得最小值对应的指派方案;
传输计算模块,用于根据惩罚代价等于最小值对应的指派方案,将所述任务集合的数据指派至所述节点集合,并在所述节点结合上进行计算得到中间结果;
路径确定模块,用于所述节点集合根据节点流量、节点网络传输代价及预设的流量代价算法,获取流量代价取得最小值的数据传输路径,并将所述中间结果从所述节点集合传输至所述任务集合。
所述大数据作业并行调度过程中的处理系统,其中,还包括:
设置模块,用于预先设置用于确定惩罚代价的惩罚代价算法,及用于确定网络传输流量代价的流量代价算法。
所述大数据作业并行调度过程中的处理系统,其中,所述方案获取模块具体包括初始方案获取单元、第一控制单元、第一指定单元、当前方案获取单元、第二控制单元及第二指定单元,其中:
所述初始方案获取单元,用于通过大数据作业的数据放置获取任务集合及节点集合,并通过将所述任务集合的数据块放置在节点集合中的本地节点,获取初始指派方案;
所述第一控制单元,用于根据所述惩罚代价算法获取初始指派方案的惩罚代价,并判断初始指派方案的惩罚代价是否等于0,当等于0时则启动所述第一指定单元,当不等于0时则启动所述当前方案获取单元;
所述第一指定单元,用于确定所述初始指派方案为惩罚代价等于最小值对应的指派方案;
所述当前方案获取单元、从最晚空闲的计算节点移动一个任务至所述节点集合中的剩余节点,得到当前指派方案;
所述第二控制单元,用于根据所述惩罚代价算法获取当前指派方案的惩罚代价,并判断当前指派方案的惩罚代价是否等于最小值,当等于最小值时则启动所述第二指定单元,当不等于最小值时则启动所述当前方案获取单元;
所述第二指定单元,用于确定所述当前指派方案为惩罚代价等于最小值对应的指派方案。
所述大数据作业并行调度过程中的处理系统,其中,所述路径确定模块具体包括:
数据传输路径获取单元,用于获取所述节点集合至所述任务集合的数据传输路径;
流量代价获取单元,用于获取每一数据传输路径的节点流量及网络传输代价,并根据节点流量与网络传输代价之积获取每一数据传输路径的流量代价;
传输单元,用于获取流量代价取得最小值的数据传输路径,并将所述中间结果从所述节点集合传输至所述任务集合。
所述大数据作业并行调度过程中的处理系统,其中,所述指派方案为所述任务集合到所述节点集合的映射。
本发明所提供的一种大数据作业并行调度过程中的处理方法及其系统,方法包括:通过大数据作业的数据放置获取任务集合及节点集合,并根据任务集合、节点集合及预设的惩罚代价算法,获取惩罚代价取得最小值对应的指派方案;根据惩罚代价等于最小值对应的指派方案,将任务集合的数据指派至所述节点集合,并在节点结合上进行计算得到中间结果;所述节点集合根据节点流量、节点网络传输代价及预设的流量代价算法,获取流量代价取得最小值的数据传输路径,并将所述中间结果从所述节点集合传输至所述任务集合。本发明通过优化中间数据管理机制,极大降低大数据作业的处理时间,而且有效利用内存资源加快数据块读写速度,减少后继作业读取数据I/O开销。
附图说明
图1是本发明所述大数据作业并行调度过程中的处理方法的较佳实施例的流程图。
图2是本发明中数据放置的示例图。
图3是本发明所述大数据作业并行调度过程中的处理方法中获取最佳指派方案的具体流程图。
图4a-4d是本发明中初始指派过程的示例图。
图5是本发明中逐步求精的示例图。
图6是本发明所述大数据作业并行调度过程中的处理方法中获取最佳数据传输路径的具体流程图。
图7是本发明中基于最小代价最大流的工作流中间数据管理模型的示意图
图8是本发明中具有最优代价的中间结果放置模型示例图。
图9是本发明大数据作业并行调度过程中的处理系统的较佳实施例的结构框图。
具体实施方式
为使本发明的目的、技术方案及优点更加清楚、明确,以下参照附图并举实施例对本发明进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
请参见图1,是本发明所述大数据作业并行调度过程中的处理方法的较佳实施例的流程图。如图1所示,所述大数据作业并行调度过程中的处理方法,包括以下步骤:
步骤S100、通过大数据作业的数据放置获取任务集合及节点集合,并根据所述任务集合、所述节点集合及预设的惩罚代价算法,获取惩罚代价取得最小值对应的指派方案。
本发明的较佳实施例中,当在大数据作业的数据放置中获取了任务集合及节点集合后,需获取一最佳的数据映射方案,也即指派方案。本发明中判断映射方案是否最佳,是通过计算该映射方案的惩罚代价来判断。当该映射方案与其他映射方案的惩罚代价相比为最小值,则确定该映射方案为最佳的指派方案。
为了更清楚的理解本发明的技术方案,下面介绍7个有关大数据的基本定义。
设Z={J1,J2,......,Jn}为大数据作业中所有作业集合,计算节点的总个数N。作业(i=1,2,......,n)表示作业Ji由mi个子任务构成,并假定作业Ji的子任务的计算量相同,即它们的计算时间相同,记为由大数据作业调度方案可以得到作业Ji的完成时间End(i)的具体值,在此,我们称End(i)为作业Ji的完成期限,也就是说,大数据作业任务指派策略要保证作业Ji的完成时刻不能晚于End(i)。
定义1(数据放置的定义)、数据放置由二部图G=<T,S,E>表示,如图2所示,其为数
据放置的示例图。其中,顶点集合为大数据
作业Z中n个作业的所有子任务,tij表示第i作业的第j个子任务(i=1,…,n,j=1,…,mi);
顶点集合S={s1,s2,…,sN}表示N个计算节点集合;边集合E={e1,e2,…,eL}表示数据放置
关系,连接顶点集合T和S。若计算节点su上存有子任务tij的输入数据块,则顶点tij和su有边
相连,用二元组<tij,su>表示,否则顶点tij和su间没有边相连。由于数据块会有多个副本,因
而顶点tij的度一般大于1,即子任务的顶点会连接多个计算节点的顶点。
定义2(任务并行指派方案定义)、给定就绪作业集合Z*(Z*为作业集合Z的子集)和其相应的所有子任务集合T*(T*为T的子集)及计算节点集合S,指派方案α为T*到S的映射,记为:T*S(tij)su表示将子任务tij指派到计算节点su上执行。tij开始执行的时间记为Begin(tij,su)。
定义3、给定数据放置G(T,S,E)和指派方案α,若(tij)su,并且顶点tij和su有边相连,即子任务tij被指派到计算节点su上执行,并且su上放有子任务tij要处理的数据块,也就是说子任务tij从计算节点本地读取数据,则称tij为数据本地任务,否则tij为数据远程任务。
就绪作业Ji的子任务tij被指派到计算节点su上执行时,若tij为本地任务,则tij的执行时间就是数据块处理的计算时间,也就是作业Ji的子任务计算量否则tij为数据远程任务,要从其它计算节点上读取子任务tij要处理的数据块,这就增加了数据的网络传输时间。由于处理的是大数据,这部分时间是一个很大的开销,在网络稳定的情况下,与数据的传输量成正比关系。假设tij要处理的数据块大小为Dtij,网络传输速度为V,则传输时间为Dtij/V。
定义4、就绪作业Ji的子任务tij被指派到计算节点su上执行时,tij的执行时间为:
定义5、作业Ji的子任务tij的完成时间是其开始时间与执行时间之和,即为:F(tij,su)=Begin(tij,su)+C(tij,su)。
定义6、当作业Ji的所有子任务都完成时,作业Ji完成,其完成时间记为(i)。
定义7、当作业Ji的完成时间(i)大于期限End(i)时,将产生惩罚代价Cost(i)=(i)-End(i);当(i)≤End(i)时,不产生惩罚代价,Cost(i)=0。
可见,在步骤S100中求解最佳指派方案的问题是一个NP完全问题,采取″先初步指派,再逐步求精″的策略求解。先假设数据远程任务的数目为0,在二部图上执行网络流算法,求出指派方案α0。就数据本性而言,该指派方案是最佳的,因为没有网络传输时间。但是,就绪作业集合Z*中所有作业子任务要处理的数据一般不会均匀分布存放在所有计算节点上,因而,数据远程任务为0的指派方案会导致计算节点负载严重不均衡,没有存放数据的计算节点,就没有子任务执行,而存放数据越多,指派的子任务就越多,从而导致全部作业完成时间大大延长。因而,我们假设数据远程任务的数目为1,在指派方案α0的基础上,从最晚空闲的计算节点移一个任务到其它计算节点上,得到指派方案α1;同理可得α2,α3......。对应每一个α,计算惩罚代价之和惩罚代价之和最小的方案即为最终的指派方案。
步骤S200、根据惩罚代价等于最小值对应的指派方案,将所述任务集合的数据指派至所述节点集合,并在所述节点结合上进行计算得到中间结果。
步骤S300、所述节点集合根据节点流量、节点网络传输代价及预设的流量代价算法,获取流量代价取得最小值的数据传输路径,并将所述中间结果从所述节点集合传输至所述任务集合。
现有HDFS采用全硬盘模式搭建高效的分布式文件系统,可以为上层应用提供可靠的存储服务,但也存在局限性,影响了大数据作业调度的执行性能,主要体现在基于硬盘的读写访问效率无法满足大数据并发任务的高频访问需求。在典型的MapReduce应用程序中,reduce输出结果的大小可能大于作业输入数据,这就给中间数据的存储和访问带来极大的挑战,如何快速的将输出数据写入相应节点的硬盘以及高效的从磁盘中读出都成为制约大数据作业执行性能的瓶颈。本发明的步骤S300中则利用ramfs将计算节点的部分内存映射成硬盘,在HDFS的配置文件中设置数据存放目录为内存映射镜像,并基于该内存映射镜像架设独立于原有HHDFS(Hard-disk HDFS)的MHDFS(Memory HDFS)。通过在计算节点内存中创建中间数据副本实现对大数据并发任务高频访问的有效支持。
进一步地实施例,在所述步骤S100中获取最佳指派方案之前还包括:
步骤S10、预先设置用于确定惩罚代价的惩罚代价算法,及用于确定网络传输流量代价的流量代价算法。
进一步地实施例,如图3所示,所述步骤S100中获取最佳指派方案的具体步骤包括:
步骤S101、通过大数据作业的数据放置获取任务集合及节点集合,并通过将所述任务集合的数据块放置在节点集合中的本地节点,获取初始指派方案。
步骤S102、根据所述惩罚代价算法获取初始指派方案的惩罚代价,并判断初始指派方案的惩罚代价是否等于0,当等于0时则执行步骤S103,当不等于0时则执行步骤S104。
步骤S103、确定所述初始指派方案为惩罚代价等于最小值对应的指派方案。
步骤S104、从最晚空闲的计算节点移动一个任务至所述节点集合中的剩余节点,得到当前指派方案;
步骤S105、根据所述惩罚代价算法获取当前指派方案的惩罚代价,并判断当前指派方案的惩罚代价是否等于最小值,当等于最小值时则执行步骤S106,当不等于最小值时则返回执行步骤S104;
步骤S106、确定所述当前指派方案为惩罚代价等于最小值对应的指派方案。
为了更清楚的了解步骤S100中求解惩罚代价等于最小值对应的指派方案的过程,下面通过一个范例说明上述算法的执行流程。如图4a-4d所示,为本发明中初始指派的示例图。假定有3个子任务t1、t2、t3和3个计算节点s1、s2、s3,初始的调度方案如图4a,t2放置在s2上,t3放置在s3上,t1没有分配节点。此时,远程任务数量为0。所有任务的网络传输流程为0。但是该方案非最优,因为t1没有得到分配,执行时间为无限大。为了使得所有任务都得到分配,需要修改调度方案,这时,根据初始方案构建剩余图,如图4b所示,剩余图构建好以后,从最早空闲的s3出发寻找到汇点的流,如图4c所示,找到的结果为s3,t2,s2,t1,sink,于是将t1放置在s2上,t2放置在s2和s3上,如图4d所示,依次迭代,得到最优解。每轮迭代从最早空闲的计算节点出发,寻找一条到汇点Sink的流,然后构建剩余图,重复迭代,直到网络中总流量等于子任务数目。如图5所示,其为″逐步求精″的示例图。从最晚空闲的计算节点上选择一个任务,指派到其他节点,然后根据任务的数据本地性,计算任务的完成时间,进而可得各个作业的完成时间。
进一步的实施例,如图6所示,所述步骤S300中获取最佳数据传输路径的步骤具体包括:
步骤S301、获取所述节点集合至所述任务集合的数据传输路径;
步骤S302、获取每一数据传输路径的节点流量及网络传输代价,并根据节点流量与网络传输代价之积获取每一数据传输路径的流量代价;
步骤S303、获取取流量代价取得最小值的数据传输路径,并将所述中间结果从所述节点集合传输至所述任务集合。
为了更清楚的了解步骤S301-S303中获取最佳数据传输路径的过程,下面通过一个范例说明上述算法的执行流程。假定一个作业产生了N(N为正整数)个数据块的中间结果,且根据大数据作业调度方案的拓扑关系得知该作业具有k(k为正整数)个后继作业,则该网络流模型的流入总量为kN,表示理想状态下创建、放置的副本总数(即每一个后继作业具有独立的N个数据副本,实际求解中将放置的副本量将小于等于kN)。如图7所示,其为基于最小代价最大流的工作流中间数据管理模型的示意图。图7中的圆形节点表示系统中的计算节点,各节点之间通过网络传输中间数据块,其中Xi、Yi和Zi代表同一个节点的不同阶段,Xi是节点通过计算得到中间数据的阶段,Yi是节点存储中间数据的阶段,Zi是节点为后继作业获取所需中间数据的阶段。X与Y之间的边表示节点将中间数据传输到其它节点的内存中以创建副本,Y与Z之间的边表示后继作业从各节点的内存中获取相应数据作为后继作业的输入数据。经过边e传输的数据量记为流过边e的流量fe,表示创建或获取的中间数据副本数量,每条边设有容量Ce和代价We,容量Ce表示节点的内存容量,代价We表示节点的网络带宽,一条边上流过大小为fe的流量的代价为We·fe,由于不同节点的可用内存容量以及网络带宽不同,所以通过不同的边传输相同的数据所付出的代价不同。最终的优化目标是,如何分配从S到T的流,使得总代价∑We·fe最小,此时各节点负载得到均衡,数据块以最优的副本数量放置在合适的节点,中间数据的写入读取开销得以最小化。通过求解该最小代价最大流问题,可得到流过节点的流量。根据各节点的流量,可以计算出每个节点放置的数据块数目以及数据块的副本数目。在此基础上,利用Round-Robin的方法,将数据块依次放置在各个计算节点的内存中。
如图8所示,其为具有最优代价的中间结果放置模型示例图。如图8所示,有三个节点,每条边上的逗号左边数字代表网络容量,逗号右边数字代表传输代价。假定现在只需要找到一条最优传输路径,则最优传输路径为S,2,5,7,T传输成本为6。也就是说应该在从节点2上获取中间结果,存储在节点5上,然后由节点7来读取,这样的总成本为最小。
可见,本发明通过优化中间数据管理机制,极大降低大数据作业的处理时间,而且有效利用内存资源加快数据块读写速度,减少后继作业读取数据I/O开销。
基于上述实施例,本发明还提供一种大数据作业并行调度过程中的处理系统。如图9所示,其为本发明所述大数据作业并行调度过程中的处理系统的较佳实施例的结构框图。所述大数据作业并行调度过程中的处理系统,包括:
方案获取模块100,用于通过大数据作业的数据放置获取任务集合及节点集合,并根据所述任务集合、所述节点集合及预设的惩罚代价算法,获取惩罚代价取得最小值对应的指派方案;具体如上所述。
传输计算模块200,用于根据惩罚代价等于最小值对应的指派方案,将所述任务集合的数据指派至所述节点集合,并在所述节点结合上进行计算得到中间结果;具体如上所述。
路径确定模块300,用于所述节点集合根据节点流量、节点网络传输代价及预设的流量代价算法,获取流量代价取得最小值的数据传输路径,并将所述中间结果从所述节点集合传输至所述任务集合;具体如上所述。
进一步地实施例,在所述大数据作业并行调度过程中的处理系统中,还包括:
设置模块,用于预先设置用于确定惩罚代价的惩罚代价算法,及用于确定网络传输流量代价的流量代价算法;具体如上所述。
进一步地实施例,在所述大数据作业并行调度过程中的处理系统中,所述方案获取模块100具体包括初始方案获取单元、第一控制单元、第一指定单元、当前方案获取单元、第二控制单元及第二指定单元,其中:
所述初始方案获取单元,用于通过大数据作业的数据放置获取任务集合及节点集合,并通过将所述任务集合的数据块放置在节点集合中的本地节点,获取初始指派方案;具体如上所述。
所述第一控制单元,用于根据所述惩罚代价算法获取初始指派方案的惩罚代价,并判断初始指派方案的惩罚代价是否等于0,当等于0时则启动所述第一指定单元,当不等于0时则启动所述当前方案获取单元;具体如上所述。
所述第一指定单元,用于确定所述初始指派方案为惩罚代价等于最小值对应的指派方案;具体如上所述。
所述当前方案获取单元、从最晚空闲的计算节点移动一个任务至所述节点集合中的剩余节点,得到当前指派方案;具体如上所述。
所述第二控制单元,用于根据所述惩罚代价算法获取当前指派方案的惩罚代价,并判断当前指派方案的惩罚代价是否等于最小值,当等于最小值时则启动所述第二指定单元,当不等于最小值时则启动所述当前方案获取单元;具体如上所述。
所述第二指定单元,用于确定所述当前指派方案为惩罚代价等于最小值对应的指派方案;具体如上所述。
进一步地实施例,在所述大数据作业并行调度过程中的处理系统中,所述路径确定模块300具体包括:
数据传输路径获取单元,用于获取所述节点集合至所述任务集合的数据传输路径;具体如上所述。
流量代价获取单元,用于获取每一数据传输路径的节点流量及网络传输代价,并根据节点流量与网络传输代价之积获取每一数据传输路径的流量代价;具体如上所述。
传输单元,用于获取流量代价取得最小值的数据传输路径,并将所述中间结果从所述节点集合传输至所述任务集合;具体如上所述。
进一步地实施例,在所述大数据作业并行调度过程中的处理系统中,所述指派方案为所述任务集合到所述节点集合的映射;具体如上所述。
综上所述,本发明所提供的一种大数据作业并行调度过程中的处理方法及其系统,方法包括:通过大数据作业的数据放置获取任务集合及节点集合,并根据任务集合、节点集合及预设的惩罚代价算法,获取惩罚代价取得最小值对应的指派方案;根据惩罚代价等于最小值对应的指派方案,将任务集合的数据指派至所述节点集合,并在节点结合上进行计算得到中间结果;所述节点集合根据节点流量、节点网络传输代价及预设的流量代价算法,获取流量代价取得最小值的数据传输路径,并将所述中间结果从所述节点集合传输至所述任务集合。本发明通过优化中间数据管理机制,极大降低大数据作业的处理时间,而且有效利用内存资源加快数据块读写速度,减少后继作业读取数据I/O开销。
应当理解的是,本发明的应用不限于上述的举例,对本领域普通技术人员来说,可以根据上述说明加以改进或变换,所有这些改进和变换都应属于本发明所附权利要求的保护范围。
Claims (6)
1.一种大数据作业并行调度过程中的处理方法,其特征在于,所述方法包括步骤:
S、预先设置用于确定惩罚代价的惩罚代价算法,及用于确定网络传输流量代价的流量代价算法;
A、通过大数据作业的数据放置获取任务集合及节点集合,并根据所述任务集合、所述节点集合及预设的惩罚代价算法,获取惩罚代价取得最小值对应的指派方案;
B、根据惩罚代价等于最小值对应的指派方案,将所述任务集合的数据指派至所述节点集合,并在所述节点结合上进行计算得到中间结果;
C、所述节点集合根据节点流量、节点网络传输代价及预设的流量代价算法,获取流量代价取得最小值的数据传输路径,并将所述中间结果从所述节点集合传输至所述任务集合;
所述步骤C具体包括:
C1、获取所述节点集合至所述任务集合的数据传输路径;
C2、获取每一数据传输路径的节点流量及网络传输代价,并根据节点流量与网络传输代价之积获取每一数据传输路径的流量代价;
C3、获取流量代价取得最小值的数据传输路径,并将所述中间结果从所述节点集合传输至所述任务集合。
2.根据权利要求1所述大数据作业并行调度过程中的处理方法,其特征在于,所述步骤A具体包括:
A1、通过大数据作业的数据放置获取任务集合及节点集合,并通过将所述任务集合的数据块放置在节点集合中的本地节点,获取初始指派方案;
A2、根据所述惩罚代价算法获取初始指派方案的惩罚代价,并判断初始指派方案的惩罚代价是否等于0,当等于0时则执行步骤A3,当不等于0时则执行步骤A4;
A3、确定所述初始指派方案为惩罚代价等于最小值对应的指派方案;
A4、从最晚空闲的计算节点移动一个任务至所述节点集合中的剩余节点,得到当前指派方案;
A5、根据所述惩罚代价算法获取当前指派方案的惩罚代价,并判断当前指派方案的惩罚代价是否等于最小值,当等于最小值时则执行步骤A6,当不等于最小值时则返回执行步骤A4;
A6、确定所述当前指派方案为惩罚代价等于最小值对应的指派方案。
3.根据权利要求1所述大数据作业并行调度过程中的处理方法,其特征在于,所述指派方案为所述任务集合到所述节点集合的映射。
4.一种大数据作业并行调度过程中的处理系统,其特征在于,包括:
设置模块,用于预先设置用于确定惩罚代价的惩罚代价算法,及用于确定网络传输流量代价的流量代价算法;
方案获取模块,用于通过大数据作业的数据放置获取任务集合及节点集合,并根据所述任务集合、所述节点集合及预设的惩罚代价算法,获取惩罚代价取得最小值对应的指派方案;
传输计算模块,用于根据惩罚代价等于最小值对应的指派方案,将所述任务集合的数据指派至所述节点集合,并在所述节点结合上进行计算得到中间结果;
路径确定模块,用于所述节点集合根据节点流量、节点网络传输代价及预设的流量代价算法,获取流量代价取得最小值的数据传输路径,并将所述中间结果从所述节点集合传输至所述任务集合;
所述路径确定模块具体包括:
数据传输路径获取单元,用于获取所述节点集合至所述任务集合的数据传输路径;
流量代价获取单元,用于获取每一数据传输路径的节点流量及网络传输代价,并根据节点流量与网络传输代价之积获取每一数据传输路径的流量代价;
传输单元,用于获取流量代价取得最小值的数据传输路径,并将所述中间结果从所述节点集合传输至所述任务集合。
5.根据权利要求4所述大数据作业并行调度过程中的处理系统,其特征在于,所述方案获取模块具体包括初始方案获取单元、第一控制单元、第一指定单元、当前方案获取单元、第二控制单元及第二指定单元,其中:
所述初始方案获取单元,用于通过大数据作业的数据放置获取任务集合及节点集合,并通过将所述任务集合的数据块放置在节点集合中的本地节点,获取初始指派方案;
所述第一控制单元,用于根据所述惩罚代价算法获取初始指派方案的惩罚代价,并判断初始指派方案的惩罚代价是否等于0,当等于0时则启动所述第一指定单元,当不等于0时则启动所述当前方案获取单元;
所述第一指定单元,用于确定所述初始指派方案为惩罚代价等于最小值对应的指派方案;
所述当前方案获取单元、从最晚空闲的计算节点移动一个任务至所述节点集合中的剩余节点,得到当前指派方案;
所述第二控制单元,用于根据所述惩罚代价算法获取当前指派方案的惩罚代价,并判断当前指派方案的惩罚代价是否等于最小值,当等于最小值时则启动所述第二指定单元,当不等于最小值时则启动所述当前方案获取单元;
所述第二指定单元,用于确定所述当前指派方案为惩罚代价等于最小值对应的指派方案。
6.根据权利要求4所述大数据作业并行调度过程中的处理系统,其特征在于,所述指派方案为所述任务集合到所述节点集合的映射。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410747978.4A CN105740249B (zh) | 2014-12-08 | 2014-12-08 | 一种大数据作业并行调度过程中的处理方法及其系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410747978.4A CN105740249B (zh) | 2014-12-08 | 2014-12-08 | 一种大数据作业并行调度过程中的处理方法及其系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105740249A CN105740249A (zh) | 2016-07-06 |
CN105740249B true CN105740249B (zh) | 2020-05-22 |
Family
ID=56239102
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410747978.4A Active CN105740249B (zh) | 2014-12-08 | 2014-12-08 | 一种大数据作业并行调度过程中的处理方法及其系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105740249B (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106445070B (zh) * | 2016-09-12 | 2019-04-02 | 华侨大学 | 一种硬实时系统资源受限偶发任务能耗优化调度方法 |
CN106533981B (zh) * | 2016-12-19 | 2019-05-03 | 北京邮电大学 | 一种基于多属性的大数据流量调度方法及装置 |
CN108763489B (zh) * | 2018-05-28 | 2022-02-15 | 东南大学 | 一种优化Spark SQL执行工作流的方法 |
CN112527482A (zh) * | 2020-12-14 | 2021-03-19 | 中国联合网络通信集团有限公司 | 基于移动边缘云平台的任务管理方法及系统 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102831012A (zh) * | 2011-06-16 | 2012-12-19 | 日立(中国)研究开发有限公司 | 多节点分布式系统中的任务调度装置和任务调度方法 |
CN102946443A (zh) * | 2012-12-06 | 2013-02-27 | 北京邮电大学 | 一种实现大规模数据传输的多任务调度方法 |
CN103036792A (zh) * | 2013-01-07 | 2013-04-10 | 北京邮电大学 | 一种最大化最小公平多数据流传输调度方法 |
CN104408106A (zh) * | 2014-11-20 | 2015-03-11 | 浙江大学 | 一种用于分布式文件系统中大数据查询的调度方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20060112388A1 (en) * | 2004-11-22 | 2006-05-25 | Masaaki Taniguchi | Method for dynamic scheduling in a distributed environment |
-
2014
- 2014-12-08 CN CN201410747978.4A patent/CN105740249B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102831012A (zh) * | 2011-06-16 | 2012-12-19 | 日立(中国)研究开发有限公司 | 多节点分布式系统中的任务调度装置和任务调度方法 |
CN102946443A (zh) * | 2012-12-06 | 2013-02-27 | 北京邮电大学 | 一种实现大规模数据传输的多任务调度方法 |
CN103036792A (zh) * | 2013-01-07 | 2013-04-10 | 北京邮电大学 | 一种最大化最小公平多数据流传输调度方法 |
CN104408106A (zh) * | 2014-11-20 | 2015-03-11 | 浙江大学 | 一种用于分布式文件系统中大数据查询的调度方法 |
Also Published As
Publication number | Publication date |
---|---|
CN105740249A (zh) | 2016-07-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11656911B2 (en) | Systems, methods, and apparatuses for implementing a scheduler with preemptive termination of existing workloads to free resources for high priority items | |
US10514951B2 (en) | Systems, methods, and apparatuses for implementing a stateless, deterministic scheduler and work discovery system with interruption recovery | |
Hu et al. | Flutter: Scheduling tasks closer to data across geo-distributed datacenters | |
US11294726B2 (en) | Systems, methods, and apparatuses for implementing a scalable scheduler with heterogeneous resource allocation of large competing workloads types using QoS | |
Rao et al. | Survey on improved scheduling in Hadoop MapReduce in cloud environments | |
Zaharia et al. | Job scheduling for multi-user mapreduce clusters | |
Ge et al. | GA-based task scheduler for the cloud computing systems | |
WO2017016421A1 (zh) | 一种集群中的任务执行方法及装置 | |
CN105487930A (zh) | 一种基于Hadoop的任务优化调度方法 | |
CN110308984B (zh) | 一种用于处理地理分布式数据的跨集群计算系统 | |
Ramanathan et al. | Towards optimal resource provisioning for Hadoop-MapReduce jobs using scale-out strategy and its performance analysis in private cloud environment | |
Lin et al. | Online optimization scheduling for scientific workflows with deadline constraint on hybrid clouds | |
Liu et al. | Preemptive hadoop jobs scheduling under a deadline | |
CN112540841B (zh) | 任务调度的方法、装置、处理器与电子设备 | |
CN105740249B (zh) | 一种大数据作业并行调度过程中的处理方法及其系统 | |
Bok et al. | An efficient MapReduce scheduling scheme for processing large multimedia data | |
Petrov et al. | Adaptive performance model for dynamic scaling Apache Spark Streaming | |
Liu et al. | Optimizing shuffle in wide-area data analytics | |
Shabeera et al. | Optimising virtual machine allocation in MapReduce cloud for improved data locality | |
Xu et al. | Fault tolerance and quality of service aware virtual machine scheduling algorithm in cloud data centers | |
Han et al. | An adaptive scheduling algorithm for heterogeneous Hadoop systems | |
Liu et al. | An efficient job scheduling for MapReduce clusters | |
Lin et al. | Joint deadline-constrained and influence-aware design for allocating MapReduce jobs in cloud computing systems | |
JP5983623B2 (ja) | タスク配置装置及びタスク配置方法 | |
CN108228323B (zh) | 基于数据本地性的Hadoop任务调度方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
CB02 | Change of applicant information |
Address after: 516006 TCL technology building, No.17, Huifeng Third Road, Zhongkai high tech Zone, Huizhou City, Guangdong Province Applicant after: TCL Technology Group Co., Ltd Address before: 516006 Guangdong province Huizhou Zhongkai hi tech Development Zone No. nineteen District Applicant before: TCL RESEARCH AMERICA Inc. |
|
CB02 | Change of applicant information | ||
GR01 | Patent grant | ||
GR01 | Patent grant |