CN101340423B - 一种基于元调度环的多集群作业调度方法 - Google Patents

一种基于元调度环的多集群作业调度方法 Download PDF

Info

Publication number
CN101340423B
CN101340423B CN2008101181738A CN200810118173A CN101340423B CN 101340423 B CN101340423 B CN 101340423B CN 2008101181738 A CN2008101181738 A CN 2008101181738A CN 200810118173 A CN200810118173 A CN 200810118173A CN 101340423 B CN101340423 B CN 101340423B
Authority
CN
China
Prior art keywords
job
message
node
clustered node
clustered
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.)
Expired - Fee Related
Application number
CN2008101181738A
Other languages
English (en)
Other versions
CN101340423A (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.)
Beihang University
Original Assignee
Beihang University
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 Beihang University filed Critical Beihang University
Priority to CN2008101181738A priority Critical patent/CN101340423B/zh
Publication of CN101340423A publication Critical patent/CN101340423A/zh
Application granted granted Critical
Publication of CN101340423B publication Critical patent/CN101340423B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Multi Processors (AREA)

Abstract

本发明提出了一种基于元调度环的多集群作业调度方法。该方法基于多集群间建立的元调度环,将用户提交到作业主节点的作业,由作业主节点通过发送添加作业的消息将作业添加到多个集群上、要执行作业的集群节点通过发送取消作业的消息并比较运行作业的权值来决定运行该作业的集群,避免多集群执行作业的冲突,从而完成作业在多集群间的调度。本发明提供的调度方法通过将作业***元调度环上的多个集群本地队列中,增加作业被调度的机会,提高集群资源的利用率,避免单点失效、网络负担过重等问题,并具有良好的可扩展性。

Description

一种基于元调度环的多集群作业调度方法
技术领域
本发明属于数据处理领域,涉及一种作业调度方法,具体涉及一种基于元调度环的多集群作业调度方法。
背景技术
目前许多组织都购买了集群用于科学研究,但各个组织的集群利用率存在较大的差异,存在某些集群资源闲置而某些还不能满足用户的计算需求等情况,有的集群利用率较高,有的集群则利用率较低。如果将多个集群联合起来作为一个整体为用户提供计算服务,则可以提供强大的计算能力来满足更多的用户计算需求。
环形网络通过一个连续的环将各个终端连接在一起,传输媒体从一个端用户到另一个端用户,直到将所有端用户连成环型。这种结构消除了端用户通信时对中心***的依赖性。环行结构使每个端用户与前端点用户和后端点用户相连,因而存在着点到点链路,并以单向方式操作,环上传输的任何信息都必须穿过所有端点。
P2P网络是覆盖在IP网络之上的覆盖网络,根据拓扑结构的关系可以将P2P网络分为3种形式:中心化拓扑、全分布式非结构化拓扑、全分布式结构化拓扑。中心拓扑***采用目录服务器的方式实现,容易造成单点故障,访问的“热点”现象等相关问题;全分布式非结构化拓扑***采用随机图的组织方式,此类***中的路由算法都类似于广播式的搜索算法,因此产生大量的网络信息,给网络带来巨大负担;全分布式结构化拓扑***采用正则图的组织方式,维护一定大小的路由表,此类***的维护机制复杂,维护代价直接依赖于路由表的大小。
集中式作业调度模式下,多集群***中有一个负责调度的主机(元调度器)负责搜集***的负载信息。它维护着一个任务分配表,并根据***负载情况来分配任务。首先,元调度器需要维护所有集群节点的资源信息和作业信息,所以当需要管理的集群节点数逐渐增加时,作业跟资源之间的匹配过程将会变得更加复杂,这样元调度器需要处理的信息量就会变大,调度算法的复杂度也将变高,其负担将变的越繁重,此时元调度器将成为整个***的瓶颈。其次,在元调度器收集所有集群节点信息的时候,集群节点需要等待,浪费了集群节点的处理能力。最后,集中式调度模式中所有的信息都存储在元调度器上,所有的调度决策也都是由元调度器做出的,元调度器是整个***的核心,当元调度器出现故障时,整个***都将处于崩溃状态不能继续进行工作。
元调度是建立在集群本地调度机制之上的调度,元调度器负责在多个集群中调度任务,每个集群都有自己独立的调度解决方案。元调度器可以创建一个网格层次结构,其中每个组件都利用相同的调度解决方案。元调度器也可以用来链接使用不同调度器的组件,从而对***用户屏蔽这些差异。
多个集群通过前、后节点连接建立的环形结构称之为元调度环,当元调度环上只有一个集群节点时,需要建立一个只有单个集群节点的元调度环。该集群节点的前节点和后节点都是该集群节点本身。
多集群节点的元调度环的建立过程是在单集群节点元调度环的基础上完成的。新加入的集群节点通过向元调度环上某个集群节点(连接节点)发送加入环的消息,连接节点将自己的前节点设为新加入的集群节点,同时将自己原有的前节点信息封装到响应消息中返回给新加入的集群节点。新加入的集群节点收到连接节点返回的响应消息后,将自己的后节点设为连接节点,同时解析出响应消息中连接节点的原有前节点信息,然后向连接节点的原有前节点发送加入环的消息。原有前节点收到该消息后,将自己的后节点设为新加入的集群节点,同时发送相应的响应消息给新加入的集群节点。新加入的集群节点收到原有前节点的响应消息后,将自己的前节点设为原有前节点。这样新加入的集群节点就加入到元调度环中,它可以接收从前节点发送过来的消息,同时也可以给它的后节点发送消息。
发明内容
本发明提出了一种基于元调度环的多集群作业调度方法。该方法基于多集群间建立的元调度环,通过发送添加作业的消息将作业添加到多个集群上,并发送取消作业的消息来决定运行该作业的集群,从而完成作业在多集群间的调度。本方法将作业***元调度环上的多个集群本地队列中,增加作业被调度的机会,提高集群资源的利用率,避免单点失效、网络负担过重等问题,并具有良好的可扩展性。
一种基于元调度环的多集群作业调度方法,该方法包括如下步骤:
步骤1:元调度环上的作业主节点接收到用户的作业请求,并根据作业请求生成作业添加消息;
步骤2:作业主节点的本地资源匹配器根据作业添加消息判断作业主节点的资源是否能够满足作业描述信息中的需求,如果能,则由作业主节点的本地调度器判断作业主节点的本地队列中有无其他作业,如果无,则作业主节点开始执行该作业,并将作业调度结果返回给用户,本方法结束;否则将作业添加到作业主节点的本地队列中,将作业添加消息沿元调度环转发至下一集群节点;如果作业主节点的资源不能够满足作业描述信息中的需求,则将作业添加消息沿元调度环转发至下一集群节点;
步骤3:元调度环上的下一集群节点接收到作业添加消息后,集群节点的本地资源匹配器根据作业添加消息判断集群节点的资源是否能够满足作业描述信息中的需求,如果能,则由该集群节点的本地调度器判断该集群节点的本地队列中有无其他作业,如果无,则此集群节点能立即执行该作业,则转到步骤5;否则该集群节点将作业添加到本地作业队列中,将作业添加消息沿元调度环转发至下一集群节点;如果集群节点的本地资源匹配器判断集群节点的资源不能够满足作业描述信息中的需求,则将作业添加消息沿元调度环转发至下一集群节点;
步骤4:元调度环上的集群节点通过本地调度器判断本地作业队列中是否有要执行的作业,如果有,则转到步骤5;否则继续等待直至有作业要执行;
步骤5:此集群节点创建作业取消消息,并沿元调度环转发作业取消消息,通知其他本地队列中含有该作业的集群节点取消该作业的执行;
步骤6:要执行作业的集群节点收到返回的作业取消消息后,解析该消息中的作业运行标识字段,如果元调度环上有运行该作业权限更高的集群节点,则不执行该作业,由作业权限更高的集群节点发送的取消作业消息将该作业取消;否则集群节点开始执行作业,并将作业调度结果返回给用户。
所述的步骤1、2、3中,作业添加消息将作业添加到元调度环上的多个集群节点。作业添加消息结构包括:消息类型、作业ID、用户ID、作业主节点名称、添加作业标识、作业添加节点列表、作业JSDL描述;消息中作业添加节点列表为可变长数组结构,其余各字段为可变长字符串结构且之间用空格来划分。
所述的步骤5中,作业取消消息取消了作业在元调度环上其他集群节点的执行,完成作业的调度,作业取消消息结构包括:消息类型、作业ID、消息源节点、作业运行权值、作业运行标识;消息中各字段为可变长字符串且之间用空格来划分。
所述步骤5中集群节点取消该作业的执行,包括如下步骤:
a)集群节点解析前节点发送的作业取消消息,如果该集群节点的作业ID与解析得到的消息源节点的字段内容相同,则此集群节点判断自己是否能执行该作业,如果能,则该集群节点运行该作业,否则,该作业将由其他权限更高的集群发送的作业取消消息取消;作业取消消息过程结束;如果当前集群节点的ID与解析得到的消息源节点的字段内容不同,转b);
b)根据解析得到的作业ID查找该集群节点的本地队列,如果本地队列中没有此作业,则此集群节点转发该作业取消消息到下一集群节点,转a);否则转c);
c)如果该集群节点运行此作业的权值大于解析出的作业运行权值,则将作业取消消息的作业运行标识字段设为no,反之则把此作业从该集群节点的本地队列中删除;然后转发该作业取消消息到后节点,转a)。
本发明一种基于元调度环的多集群作业调度方法优点在于:
(1)提高作业响应比:本发明采用将作业***到多个集群本地队列,增加作业被调度的机会,减少作业的等待时间,提高作业的响应比。
(2)提高集群利用率:本发明采用多请求的方式使得作业能够在集群之间自动进行调度,提高各集群资源的利用率。
(3)可扩展性好:本方法采用元调度环结构作为方法的实现载体,这样元调度环上的各集群节点间的连接和集群节点的关系变成线性,从而使整个***更加容易扩展。
(4)避免单点失效:本方法由于组成元调度环的各个集群节点都相对独立,各集群节点可以通过本地调度来独立完成调度工作,不会出现某个集群节点失效而导致整个***无法运行的问题。
附图说明
图1为本发明一种基于元调度环的多集群作业调度方法的结构关系图;
图2为本发明一种基于元调度环的多集群作业调度方法的步骤流程图;
图3为本发明一种基于元调度环的多集群作业调度方法的作业添加消息消息格式图;
图4为本发明一种基于元调度环的多集群作业调度方法的作业取消消息消息格式图;
图5为本发明一种基于元调度环的多集群作业调度方法的作业取消流程图。
具体实施方式
下面将结合附图和实施例对本发明作进一步的详细说明。
本发明一种基于元调度环的多集群作业调度方法的运行平台为一个基于元调度环的多集群***,如图1所示:
本实施例中,多集群***由5个集群节点组成,每个集群节点包括1~4个管理主机节点和8~128个计算主机节点,5个集群节点的ID分别为:C0000001~C0000005,集群节点之间通过千兆以太网互联,形成元调度环结构。每个集群节点包括一个长度为256的集群本地队列、一个集群本地资源匹配器和一个集群本地调度器。集群节点接收到作业添加请求消息时,如果该集群节点的本地资源匹配器判定可以由该集群节点处理该作业,则将作业添加到集群节点的本地队列中,由集群节点的本地调度器进行调度执行;否则,该集群节点将不处理该作业。
集群节点在元调度环的建立和维护过程时,需要有如下一些参数来完成元调度环的建立和维护过程。这些信息包括:
●前节点(PreviousNode):该集群节点在环上前一个集群节点的主机名称,例如,集群C0000001是集群C0000002的前节点。
●后节点(NextNode):该集群节点在环上下一个集群节点的主机名称。例如,集群C0000002是集群C0000001的后节点。
本发明提出了一种基于元调度环的多集群间的作业调度方法,如图2所示,该方法包括如下步骤:
步骤1:元调度环上的某集群节点,即作业主节点接收到用户的作业请求时,生成作业添加消息。
多集群形成元调度环后,用户就可以通过该元调度环向这个***中添加作业,用户在添加作业时,可以随机选择元调度环上的任何一个集群节点作为元调度环的入口。元调度环上第一个接收到作业的集群节点将被称为该作业的作业主节点。作业ID为一个随机生成的UUID,作业请求中的作业描述采用GGF组织定义的作业提交描述语言JSDL(JobSubmission Description Language)。
用户special通过集群节点C0000001提交一个作业ID为41e54b37-c01a-431d-97ef-fead95e2c271的作业请求。作业主节点C0000001生成该作业的作业添加消息,并将该消息的JobMasterID设置为自己的名称,同时将AddAction字段置为Yes。格式如图3所示:
●MsgType:消息类型,String类型,添加新作业时,该字段置为AddJob。
●JobID:作业ID,String类型,一个随机生成的36位UUID,它用来唯一标识一个作业。
●UserID:用户ID,String类型,表示提交作业的用户ID。
●JobMasterNode:作业主节点名称,String类型,表示作业进入元调度环的入口集群节点名称。
●AddJob:添加作业标识,String类型,如果AddJob为YES,接收到该消息的集群节点将对该消息进行处理,即将作业添加到该集群节点所在的集群本地***中。如果AddJob为NO,表明之前已经有集群节点要开始运行该作业了,不需要再对该作业进行处理。
●ToRunNode:作业添加节点列表,List类型,当一个集群节点决定接收该作业时,需要修改ToRunNode字段,将自己的节点名称加到该字段中去,这样当该消息绕环一周返回时,***可以知道该作业被添加到环上的哪些集群节点上。
●JSDL:作业JSDL描述信息,String类型,用来跟集群资源进行匹配,判断集群节点是否能运行该作业;以及,当接收该作业的集群节点准备运行该作业时,将从该消息中解析出该字段的内容,然后按照该字段的内容运行该作业。
步骤2:作业主节点的本地资源匹配器根据作业添加消息对作业主节点资源进行判别,并根据作业主节点的资源情况对作业添加消息进行处理。
本实施例中作业根据作业主节点C0000001的情况进行调度。作业主节点C0000001的本地资源匹配器根据作业添加消息判断作业主节点C0000001的资源是否能够满足作业描述信息中的需求,如果作业主节点C0000001的资源能够满足作业描述信息中的需求,则作业主节点C0000001会接收下该作业,并将该作业转交给本地的集群调度器。
由于大部分时刻用户提交作业的集群节点通常是执行该作业的最佳节点,因此作业添加到作业主节点C0000001的本地调度器后,将决定是将该作业立即投入运行,还是需要将作业放入本地队列中进行等待。作业主节点C0000001的本地调度器判断作业主节点C0000001的本地队列中没有其他作业,则运行该ID为41e54b37-c01a-431d-97ef-fead95e2c271的作业,并向用户汇报调度结果;由于该作业添加请求将不在元调度环上传递,提高了作业的响应比以及减少元调度环上的网络通信负担,整个方法结束;如果作业主节点C0000001不能立即执行该作业,则把作业主节点的IDC0000001添加到作业添加消息ToRunNode字段中,并将作业添加到作业主节点C0000001的本地队列中。
如果作业主节点C0000001的集群资源不能够满足作业描述文件JSDL字段中的作业描述信息中的需求,将作业添加消息转发至后节点C0000002。
步骤3:被作业主节点转发的集群节点接到作业添加消息后,本地资源匹配器根据作业添加消息对该集群节点的资源进行判别,并根据该集群节点的资源情况对作业添加消息进行处理。
该集群节点的元调度环上的集群节点接收到作业添加消息后,集群节点的本地资源匹配器根据作业添加消息判断该集群节点的资源是否能够满足作业描述信息中的需求,如果能,则由该集群节点的本地调度器判断该集群节点的本地队列中有无其他作业,如果无,则此集群节点能立即执行该作业,则转到步骤5;否则该集群节点将作业添加到本地作业队列中等待;将作业添加消息沿元调度环转发至下一集群节点,如果该集群节点的资源不能够满足作业描述信息中的需求,则将作业添加消息沿元调度环转发至下一集群节点。
本实施例中,元调度环上的集群节点C0000002接收到作业添加消息(AddJob)后,解析该消息,先通过JobMasterNode字段值C0000001,判断集群节点C0000002是否为作业的作业主节点:如果是,说明添加作业的消息绕环一圈又回到作业的作业主节点,不需要重新添加该作业,接着解析消息中的ToRunNode字段,向用户返回作业被添加到哪些集群的本地队列中;如果不是,本实施例中则由集群节点C0000002的本地资源匹配器根据作业添加消息判断集群节点C0000002的资源是否满足该作业描述信息JSDL中的需求,如果能,则将由集群节点C0000002的集群本地调度器判断该集群节点C0000002的本地队列中有无其他作业,如果无,则说明集群节点C0000002能立即执行该作业,则转到步骤5;否则该集群节点C0000002将作业添加到本地作业队列中,并将作业添加消息沿元调度环转发至后节点集群节点C000003。
本实施例中,集群节点C0000002开始执行该作业时,将AddJob字段设为no,当后续的集群节点C0000003收到该作业添加消息之后,查看消息的AddJob字段的内容,发现该字段为no,说明该作业在集群节点C0000001或C0000002上已经准备开始运行,不需要再接收该作业,并不对该作业添加消息进行任何操作。
如果该作业被放入集群节点C0000002的本地队列中等待,则把该节点的ID追加到作业添加节点列表ToRunNode字段的末端。
如果集群节点C0000002的本地资源匹配器根据作业添加消息判断该集群节点C0000002的资源不能够满足作业描述信息JSDL中的需求将作业添加消息沿元调度环转发至后节点集群节点C0000003,并由集群节点C0000003处理。
步骤4:元调度环上的集群节点通过本地调度器,判断本地作业队列中是否有要执行的作业,如果有,转步骤5;否则继续等待直至有作业要执行。
本实施例中,元调度环上的集群节点C0000003通过本地调度器,判断本地作业队列中是否有要执行的作业,如果有,转步骤5;否则继续等待直至有作业要执行。
步骤5:要执行作业的集群节点创建作业取消消息,并沿元调度环转发作业取消消息,通知其他集群节点取消该作业的执行;
当某个集群节点要运行某作业时,首先向其他节点发送取消该作业的消息,当消息在元调度环上传递一圈返回该集群节点,且元调度环上没有作业运行权值更高的集群节点也要运行此作业时,该节点才真正开始运行此作业。
元调度环上发送取消作业消息主要包括两种情况:
1)作业在添加过程中,集群节点收到作业添加消息时,由集群节点的本地调度器判断该集群节点的本地队列中没有其他作业,集群节点在运行该作业前,该集群节点将发送作业取消消息,取消该作业在其他节点上的排队;
2)集群节点上的某个作业从排队状态变为运行状态,该节点在运行该作业之前将向后节点发送作业取消消息,并由后节点沿元调度环依次转发下去,取消该作业在其他节点上的排队。
本实施例中,在集群节点C0000004的本地作业队列中有作业ID为41e54b37-c01a-431d-97ef-fead95e2c271由排队状态变为运行状态,集群节点C0000004的本地调度器给出运行该作业的权值为200。在运行该作业前,集群节点C0000004生成该作业的作业取消消息,则将该消息的SourceNode设置为自己的名称,Weight值设为200,同时将Result字段置为Yes,说明该集群节点C0000004可以运行作业41e54b37-c01a-431d-97ef-fead95e2c271,这时如果有权限更高的集群节点假设为集群节点C0000002,则权限更高的集群节点C0000002将会把该消息的Result字段设为no。格式如图4所示
●MsgType:消息类型,String类型;本实施例中,取消作业时,字段设为CancelJob。
●JobID:作业ID,String类型,表示要删除作业的ID,为一个随机生成的36位UUID,唯一标识一个作业。
●SourceNode:消息源节点,String类型,表示发出该消息的集群节点名称。
●Weight:作业运行权值,String类型,表示发送取消作业消息的集群节点根据特定计算方法得出的运行此作业的权值,当元调度环上有多个集群节点发出取消其他节点上该作业的消息时,由权值大的集群节点来运行该作业。在集群节点的本地队列中等待的集群节点权值为-∞
●Result:作业运行标识,String类型,如果元调度环上有权值更高的集群节点也要运行此作业时,权值更高的节点将此字段设为no,SourceNode则不运行该作业,且SourceNode上的该作业也会被权限更高的集群节点所发送的取消作业消息而取消。初始值为yes。
集群节点收到其他集群节点发送的取消作业消息后的处理流程如图5所示:
1)集群节点收到前节点发送的作业取消消息(CancelJob)后,先解析该作业取消消息,如果该集群节点的ID与解析得到的SourceNode字段内容相同,则说明发送的作业取消消息沿元调度环环绕一圈又回到发送该取消消息的集群节点,这时此集群节点将根据解析作业取消消息中的Result判断自己是否能执行该作业,如果能,则该集群节点运行该作业,否则,该集群节点上的该作业将由权限更高的集群发送的作业取消消息取消,该作业取消消息转发结束。如果当前集群节点的ID与解析得到的SourceNode字段内容不同,转2)。
2)根据解析作业取消消息得到的JobID查找该集群节点的本地队列,如果本地队列中没有此作业,则此集群节点转发该作业取消消息到下一集群节点,转1);如果本地队列中有此作业,转3)。
3)该集群节点判断运行此作业权值是否大于作业取消消息中解析出的Weight值,如果该集群节点运行此作业的权值大于解析出的Weight值,则将作业取消消息中的Result字段设为no,表示发送该作业取消消息的集群节点将不能运行该作业,然后转发该作业取消消息到后节点,转1);如果该集群节点运行此作业的权值不大于解析出的Weight值,则把此作业从该集群节点的本地队列中删除,然后转发该作业取消消息到后节点,转1)。
步骤6:要执行作业的集群节点收到返回的作业取消消息后,对该作业取消消息进行处理,判断应取消该集群节点中的作业还是应由该集群节点执行该作业,并将作业调度结果返回给用户,本方法结束。
集群节点收到返回的作业取消消息后,解析该作业取消消息,得到运行标识字段Result的值,如果Result字段值为yes,说明该集群节点能够开始运行该作业,即表明元调度环上没有比该集群节点运行此作业权值更高的集群节点,并在整个元调度环的作业取消消息传递过程中,元调度环上其他所有集群节点队列中的此作业已被取消,于是此集群节点开始执行此作业,并将执行结果返回给用户。如果Result字段值为no,说明元调度环上还有权值Weight更高的集群节点将要运行此作业,则流程结束,且此集群节点上的此作业也会被权值Weight更高的集群节点所发送的取消作业消息取消。

Claims (2)

1.一种基于元调度环的多集群作业调度方法,其特征在于,包括如下步骤:
步骤一:元调度环上的作业主节点接收到用户的作业请求,并根据作业请求生成作业添加消息;
所述的作业添加消息,其结构包括:消息类型、作业ID、用户ID、作业主节点名称、添加作业标识、作业添加节点列表、作业JSDL描述;消息中作业添加节点列表为可变长数组结构,其余各字段为可变长字符串结构且之间用空格来划分;
步骤二:作业主节点的本地资源匹配器根据作业添加消息判断作业主节点的资源是否能够满足作业描述信息中的需求,如果能,则由作业主节点的本地调度器判断作业主节点的本地队列中有无其他作业,如果无,则作业主节点开始执行该作业,并将作业调度结果返回给用户,本方法结束;否则将作业添加到作业主节点的本地队列中,将作业添加消息沿元调度环转发至下一集群节点;如果作业主节点的资源不能够满足作业描述信息中的需求,则将作业添加消息沿元调度环转发至下一集群节点;
步骤三:元调度环上的下一集群节点接收到作业添加消息后,集群节点的本地资源匹配器根据作业添加消息判断集群节点的资源是否能够满足作业描述信息中的需求,如果能,则由该集群节点的本地调度器判断该集群节点的本地队列中有无其他作业,如果无,则此集群节点能立即执行该作业,则转到步骤五;否则该集群节点将作业添加到本地作业队列中,将作业添加消息沿元调度环转发至下一集群节点;如果集群节点的本地资源匹配器判断集群节点的资源不能够满足作业描述信息中的需求,则将作业添加消息沿元调度环转发至下一集群节点;
步骤四:元调度环上的集群节点通过本地调度器判断本地作业队列中是否有要执行的作业,如果有,则转到步骤五;否则继续等待直至有作业要执行;
步骤五:此集群节点创建作业取消消息,并沿元调度环转发作业取消消息,通知其他本地队列中含有该作业的集群节点取消该作业的执行;
所述的作业取消消息取消了作业在元调度环上其他集群节点的执行,完成作业的调度;其结构包括:消息类型、作业ID、消息源节点、作业运行权值、作业运行标识;消息中各字段为可变长字符串且之间用空格来划分;
步骤六:要执行作业的集群节点收到返回的作业取消消息后,解析该消息中的作业运行标识字段,如果元调度环上有运行该作业权限更高的集群节点,则不执行该作业,由作业权限更高的集群节点发送的取消作业消息将该作业取消;否则集群节点开始执行作业,并将作业调度结果返回给用户。
2.根据权利要求1所述一种基于元调度环的多集群作业调度方法,其特征在于:所述步骤五的集群节点取消该作业的执行,包括如下步骤:
a)集群节点解析前节点发送的作业取消消息,如果该集群节点的作业ID与解析得到的消息源节点的字段内容相同,则此集群节点判断自己是否能执行该作业,如果能,则该集群节点运行该作业,否则,该作业将由其他权限更高的集群发送的作业取消消息取消;作业取消消息过程结束;如果当前集群节点的ID与解析得到的消息源节点的字段内容不同,转b);
b)根据解析得到的作业ID查找该集群节点的本地队列,如果本地队列中没有此作业,则此集群节点转发该作业取消消息到下一集群节点,转a);否则转c);
c)如果该集群节点运行此作业的权值大于解析出的作业运行权值,则将作业取消消息的作业运行标识字段设为no,反之则把此作业从该集群节点的本地队列中删除;然后转发该作业取消消息到后节点,转a)。
CN2008101181738A 2008-08-13 2008-08-13 一种基于元调度环的多集群作业调度方法 Expired - Fee Related CN101340423B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN2008101181738A CN101340423B (zh) 2008-08-13 2008-08-13 一种基于元调度环的多集群作业调度方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN2008101181738A CN101340423B (zh) 2008-08-13 2008-08-13 一种基于元调度环的多集群作业调度方法

Publications (2)

Publication Number Publication Date
CN101340423A CN101340423A (zh) 2009-01-07
CN101340423B true CN101340423B (zh) 2011-02-02

Family

ID=40214378

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2008101181738A Expired - Fee Related CN101340423B (zh) 2008-08-13 2008-08-13 一种基于元调度环的多集群作业调度方法

Country Status (1)

Country Link
CN (1) CN101340423B (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2012119310A1 (zh) * 2011-03-09 2012-09-13 中国科学院计算机网络信息中心 在计算环境中汇聚队列信息及作业信息的方法

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101702721B (zh) * 2009-10-26 2011-08-31 北京航空航天大学 一种多集群***的可重组方法
CN103218449B (zh) * 2013-04-26 2016-04-13 中国农业银行股份有限公司 报表日间操作异步处理方法与***
CN104503539B (zh) * 2014-12-23 2017-12-08 中国人民解放军国防科学技术大学 低功耗桌面数据中心及其构建方法
CN108289086B (zh) * 2017-01-10 2020-11-24 阿里巴巴集团控股有限公司 请求处理方法及装置、服务器
CN112650582A (zh) * 2020-12-21 2021-04-13 贝壳技术有限公司 分布式任务处理方法及***、处理器

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101169741A (zh) * 2006-10-25 2008-04-30 国际商业机器公司 确定作业的调度优先级的方法和***

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101169741A (zh) * 2006-10-25 2008-04-30 国际商业机器公司 确定作业的调度优先级的方法和***

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2012119310A1 (zh) * 2011-03-09 2012-09-13 中国科学院计算机网络信息中心 在计算环境中汇聚队列信息及作业信息的方法

Also Published As

Publication number Publication date
CN101340423A (zh) 2009-01-07

Similar Documents

Publication Publication Date Title
CN101340423B (zh) 一种基于元调度环的多集群作业调度方法
US7333974B2 (en) Queuing model for a plurality of servers
CN102170396B (zh) 一种基于区分服务的云存储***QoS控制方法
CN102521044B (zh) 一种基于消息中间件的分布式任务调度方法及***
CN100556024C (zh) 用于网络场通信控制的方法和网络场
CN112000448A (zh) 基于微服务架构的应用管理方法
CN109756559B (zh) 面向嵌入式机载***分布式数据分发服务的构建及使用方法
US20130301644A1 (en) System and Method for Message Sequencing in a Broadband Gateway
CN102859961B (zh) 具有自适应的文件处理的分布式视频转码***
US20090319686A1 (en) Communication route selecting method and apparatus
US8024744B2 (en) Method and system for off-loading user queries to a task manager
CN101073226A (zh) 在标签交换的通信网络中创建隧道的方法和设备
CN101441580A (zh) 分布式并行计算平台***及其计算任务分配方法
CN102047226A (zh) 分布式服务框架
CN109787805A (zh) 基于多云协同的家庭智慧能源管理***
CN102523179B (zh) 基于即时通讯的话题群组业务实现方法
US20070005800A1 (en) Methods, apparatus, and computer programs for differentiating between alias instances of a resource
CN104412549A (zh) 通信网络的网络实体
Gomathi et al. An efficient data packet scheduling schemes in wireless sensor networks
CN116032767A (zh) 一种面向智融标识网络的算力服务链管控***架构
CN102104542A (zh) 转发和控制分离网络件架构下实现业务集群路由器的方法
CN112910937A (zh) 容器集群中的对象调度方法、装置、服务器和容器集群
CN101627580B (zh) 网络组件,这种网络组件的操作方法,具有这种网络组件的自动化***,用这种网络组件在自动化***中传输数据的方法
JPWO2012077390A1 (ja) ネットワークシステム、及びそのサービス品質制御方法
CN113364888B (zh) 服务调度方法、***、电子设备及计算机可读存储介质

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
C17 Cessation of patent right
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20110202

Termination date: 20130813