一种在多节点网络中执行作业任务的方法技术

技术编号:11384863 阅读:60 留言:0更新日期:2015-05-01 11:26
本申请提出了一种在多节点网络中执行作业任务的方法,包括:所述多节点网络中的当前节点接收作业任务;所述当前节点将所述作业任务分解为多个子作业任务;执行每一个子作业任务;所述当前节点汇总所述多个子作业任务的执行结果并得到总体作业任务结果,并通过用户交互界面进行显示,并通过用户交互界面进行显示。本发明专利技术提出的在多节点网络中执行作业任务的方法,避免单个成员节点上存储元数据的负担;避免因服务节点故障造成的无法读取存储信息表的问题;减少节点冗余备份的负担;并减少单个节点的负载负担。

【技术实现步骤摘要】

本专利技术涉及计算机技术,特别涉及一种在多节点网络中执行作业任务的方法
技术介绍
现有计算机系统中,多节点网络中所有节点彼此相互连接,为了缓解单个节点上存储元数据的负载负担,将各个节点上分别存有一个或多个元数据,因此,当某一节点执行作业任务时,经常需要访问其他节点以获得所需的一个或多个元数据。然而现有技术中当某一节点出现故障时会出现其上存储的元数据不能被继续访问的问题。另一方面,当某一节点需要完成作业时,如果所述作业任务过大会造成某一节点的负载过重,导致不能及时完成。
技术实现思路
为解决上述现有技术所存在的问题,本专利技术引入独创的多级备份技术以及全新的负载均衡技术,提出了一种在多节点网络中执行作业任务的方法,所述多节点网络中包括彼此相互连接的多个网络节点,按照网段将所述多个网络节点划分到多个节点分组,每个节点分组中包括多个服务节点和多个成员节点;其中每一个成员节点中存储有多个元数据,每个元数据冗余存储在同一节点分组中的多个成员节点中;每一个服务节点中存储有所述多个元数据的存储位置的存储信息表,并且所述多个服务节点互为备份并同步更新,所述方法包括:所述多节点网络中的当前节点接收作业任务;所述当前节点将所述作业任务分解为多个子作业任务;对于每一个子作业任务,所述当前节点执行以下步骤:确定所述当前子作业任务所需要访问的一个或多个元数据;请求与所述当前节点属于同一节点分组的具有最小负载的服务节点提供所述一个或多个元数据的存储位置信息,并接收所述具有最小负载的服务节点反馈的所述一个或多个元数据的存储位置信息;如果未能获得所有元数据的存储位置信息,则请求其他节点分组的服务节点提供未能获得的存储位置信息,直至获得所有元数据的存储位置信息;如果所述一个或多个元数据均来自同一存储位置,则将所述当前子作业任务发送至所述同一存储位置所在的节点并由所述同一存储位置所在的节点完成所述当前子作业任务,否则所述当前节点根据所获得的所有元数据的存储位置信息获取所有需要访问的元数据并完成所述当前子作业任务;所述当前节点汇总所述多个子作业任务的执行结果并得到总体作业任务结果,并通过用户交互界面进行显示,并通过用户交互界面进行显示。优选地,所述每个元数据冗余存储在同一节点分组中的多个成员节点中包括:实时记录所述每个元数据的被访问日志,所述访问日志至少包括所述每个元数据的标识符和被访问的时间信息;周期性地计算所述每个元数据的单位时间访问量以及同一节点分组内所有元数据的单位时间平均访问量;将单位时间访问量大于单位时间平均访问量的元数据冗余存储在同一节点分组中的M个成员节点中,将单位时间访问量小于或等于单位时间平均访问量的元数据冗余存储在同一节点分组中的N个成员节点中,其中M>N。优选地,所述请求与所述当前节点属于同一节点分组的具有最小负载的服务节点提供所述一个或多个元数据的存储位置信息包括:将所述一个或多个元数据的标识符打包并发送给与所述当前节点属于同一节点分组的具有最小负载的服务节点;所述与所述当前节点属于同一节点分组的具有最小负载的服务节点查询存储信息表,并将匹配成功的一个或多个存储位置信息打包并发送给所述当前节点。      优选地于,所述请求其他节点分组的服务节点提供未能获得的存储位置信息包括:将未能获得存储位置信息的一个或多个元数据的标识符打包并发送给与所述当前节点所在节点分组网段距离最近的节点分组中具有最小负载的服务节点;所述与所述当前节点所在节点分组网段距离最近的节点分组中具有最小负载的服务节点查询存储信息表,并将匹配成功的一个或多个存储位置信息打包并发送给所述当前节点。      优选地,每个节点分组中的服务节点的数量为3。      优选地,M为3,N为2。      优选地,在步骤所述当前节点汇总所述多个子作业任务的执行结果并得到总体作业任务结果之前还包括:接收其他节点发送的子作业任务的执行结果。      优选地,在执行将所述当前子作业任务发送至所述同一存储位置所在的节点并由所述同一存储位置所在的节点完成所述当前子作业任务期间,如果发现所述同一存储位置所在的节点负载超过预先设置的阈值,则将所有需要访问的元数据以及所述当前子作业任务发送给所述当前节点,并由所述当前节点完成所述当前子作业任务。      优选地,所述当前节点将所有需要所述当前节点完成的子作业任务暂存在队列中,并根据所述当前节点依次执行所述队列中的子作业任务;其中,所述当前节点根据负载情况确定并发执行所述队列中的子作业任务的数量。      优选地,如果所述当前节点中的队列中的子作业任务的数量超过预先设置的数量,则将后续需要加入队列的子作业任务及相关元数据发送给与所述当前节点在同一节点分组中的其他成员节点执行。优选地,所述将后续需要加入队列的子作业任务及相关元数据发送给与所述当前节点在同一节点分组中的其他成员节点执行包括:将所述后续需要加入队列的子作业任务及相关元数据打包成待发送数据,将所述待发送数据发送给所述当前节点在同一节点分组中的负载最小的其他成员节点。本专利技术相比现有技术,具有以下优点:通过在服务节点上保存存储信息表并将多个元数据分别存储在多个成员节点上,使得避免单个成员节点上存储元数据的负担。通过设置多个服务节点,从而实现在多个服务节点上备份保存存储信息表,使得避免因服务节点故障造成的无法读取存储信息表的问题。通过根据元数据被访问的热度分别设置冗余备份的数量,使得尽量减少节点冗余备份的负担。通过将作业任务分解并将子作业任务尽可能分配到其它节点执行,使得减少单个节点的负载负担。附图说明图1是根据本专利技术实施例的动态生成提醒信息的方法的流程图。图2是根据本专利技术实施例的执行每一个子作业任务的流程图。具体实施方式下文与图示本专利技术原理的附图一起提供对本专利技术一个或者多个实施例的详细描述。结合这样的实施例描述本专利技术,但是本专利技术不限于任何实施例。本专利技术的范围仅由权利要求书限定,并且本专利技术涵盖诸多替代、修改和等同物。在下文描述中阐述诸多具体细节以便提供对本专利技术的透彻理解。出于示例的目的而提供这些细节,并且无这些具体细节中的一些或者所有细节也可以根据权利要求书实现本专利技术。根据本专利技术的实施例,所述多节点网络中包括彼此相互连接的多个网络节点,按照网段将所述多个网络节点划分到多个节点分组,每个节点分组中包括多个服务节点和多个成员节点;其中每一个成员节点中存储有多个元数据,每个元数据冗余存储在同一节点分组中的多个成员节点中;每一个服务节点中存储有所述多个元数据的存储位置的存储信息表,并且所述多个服务节点互为备份并同步更新。例如,每个节点分组中的服务节点的数量为3。每个节点分组中的成员节点的数量根据网段容量及网段内实际节点数量确定。图1示出根据本专利技术实施例的在多节点网络中执行作业任务的方法的流程图。在步骤1中,所述多节点网络中的当前节点接收作业任务。所述当前节点是所述多节点网络中的任意一个成员节点。在步骤2中、所述当前节点将所述作业任务分解为多个子本文档来自技高网...
一种在多节点网络中执行作业任务的方法

【技术保护点】
一种在多节点网络中执行作业任务的方法,所述多节点网络中包括彼此相互连接的多个网络节点,按照网段将所述多个网络节点划分到多个节点分组,每个节点分组中包括多个服务节点和多个成员节点;其中每一个成员节点中存储有多个元数据,每个元数据冗余存储在同一节点分组中的多个成员节点中;每一个服务节点中存储有所述多个元数据的存储位置的存储信息表,并且所述多个服务节点互为备份并同步更新,所述方法包括:所述多节点网络中的当前节点接收作业任务;所述当前节点将所述作业任务分解为多个子作业任务;对于每一个子作业任务,所述当前节点执行以下步骤:确定所述当前子作业任务所需要访问的一个或多个元数据;请求与所述当前节点属于同一节点分组的具有最小负载的服务节点提供所述一个或多个元数据的存储位置信息,并接收所述具有最小负载的服务节点反馈的所述一个或多个元数据的存储位置信息;如果未能获得所有元数据的存储位置信息,则请求其他节点分组的服务节点提供未能获得的存储位置信息,直至获得所有元数据的存储位置信息;如果所述一个或多个元数据均来自同一存储位置,则将所述当前子作业任务发送至所述同一存储位置所在的节点并由所述同一存储位置所在的节点完成所述当前子作业任务,否则所述当前节点根据所获得的所有元数据的存储位置信息获取所有需要访问的元数据并完成所述当前子作业任务;       所述当前节点汇总所述多个子作业任务的执行结果并得到总体作业任务结果,并通过用户交互界面进行显示,并通过用户交互界面进行显示。...

【技术特征摘要】
1.一种在多节点网络中执行作业任务的方法,所述多节点网络中包括彼此相互连接的多个网络节点,按照网段将所述多个网络节点划分到多个节点分组,每个节点分组中包括多个服务节点和多个成员节点;其中每一个成员节点中存储有多个元数据,每个元数据冗余存储在同一节点分组中的多个成员节点中;每一个服务节点中存储有所述多个元数据的存储位置的存储信息表,并且所述多个服务节点互为备份并同步更新,所述方法包括:
所述多节点网络中的当前节点接收作业任务;
所述当前节点将所述作业任务分解为多个子作业任务;
对于每一个子作业任务,所述当前节点执行以下步骤:
确定所述当前子作业任务所需要访问的一个或多个元数据;
请求与所述当前节点属于同一节点分组的具有最小负载的服务节点提供所述一个或多个元数据的存储位置信息,并接收所述具有最小负载的服务节点反馈的所述一个或多个元数据的存储位置信息;如果未能获得所有元数据的存储位置信息,则请求其他节点分组的服务节点提供未能获得的存储位置信息,直至获得所有元数据的存储位置信息;
如果所述一个或多个元数据均来自同一存储位置,则将所述当前子作业任务发送至所述同一存储位置所在的节点并由所述同一存储位置所在的节点完成所述当前子作业任务,否则所述当前节点根据所获得的所有元数据的存储位置信息获取所有需要访问的元数据并完成所述当前子作业任务;
       所述当前节点汇总所述多个子作业任务的执行结果并得到总体作业任务结果,并通过用户交互界面进行显示,并通过用户交互界面进行显示。
2.根据权利要求1所述的方法,其特征在于,所述每个元数据冗余存储在同一节点分组中的多个成员节点中包括:
实时记录所述每个元数据的被访问日志,所述访问日志至少包括所述每个元数据的标识符和被访问的时间信息;
周期性地计算所述每个元数据的单位时间访问量以及同一节点分组内所有元数据的单位时间平均访问量;
将单位时间访问量大于单位时间平均访问量的元数据冗余存储在同一节点分组中的M个成员节点中,将单位时间访问量小于或等于单位时间平均访问量的元数据冗余存储在同一节点分组中的N个成员节点中,其中M>N。
3.根据权利要求2所述的方法,其特征在于,所述请求...

【专利技术属性】
技术研发人员:徐礼正
申请(专利权)人:北京可思云海科技有限公司
类型:发明
国别省市:北京;11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1