[发明专利]一种任务调度服务器及任务调度方法在审
申请号: | 201710287419.3 | 申请日: | 2017-04-27 |
公开(公告)号: | CN107133089A | 公开(公告)日: | 2017-09-05 |
发明(设计)人: | 郭思勇 | 申请(专利权)人: | 努比亚技术有限公司 |
主分类号: | G06F9/48 | 分类号: | G06F9/48 |
代理公司: | 深圳市凯达知识产权事务所44256 | 代理人: | 刘大弯,沈荣彬 |
地址: | 518057 广东省深圳市南山区高新区北环大道9018*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 任务 调度 服务器 方法 | ||
技术领域
本发明涉及通信领域,更具体地说,涉及一种任务调度服务器及任务调度方法。
背景技术
大数据平台任务调度系统中的有向无环图(DAG,Directed Acyclic Graph)任务调度流程由单独的系统进行维护,基于DAG图的任务调度流程使用工作流调度工具转换为能被工具流调度器识别的脚本,举例来说,基于DAG图的任务调度流程使用Airflow工具转换为能被Airflow识别的dag.py脚本,其中,Airflow是一个工作流开源项目,dag.py是指用Python写的编码脚本。Airflow本身是可以直接执行任务,如Hive SQL任务,任务之间的阻塞执行是根据子任务执行结果来确定是否执行下一个子任务,保证子任务能有序执行,但是目前一些大数据的任务,如Hive SQL任务由单独的子系统来完成,所以,在Airflow中子任务变为超文本传输协议请求子系统执行、子系统执行子任务两步,超文本协议请求成功不能判断子系统是否执行了子任务,超文本协议请求成功不能作为子任务真正的执行成功状态,现有技术不能确定子任务是否执行成功。
发明内容
鉴于此,本发明提供了一种任务调度服务器及任务调度方法,所述任务调度服务器及任务调度方法能确定子任务是否执行成功,提高任务调度的效率。
本发明提供一种任务调度服务器,所述任务调度服务器包括:
判断模块,用于判断当前子任务是否由对应的子系统单独执行;
获取模块,用于当当前子任务是由对应的子系统单独执行时,获取所述子任务对应的任务脚本;
处理模块,用于执行所述任务脚本,将所述子任务的执行请求发送给所述对应的子系统,并监测所述子任务的执行结果,根据所述执行结果确定所述子任务是否执行完成。
可选地,所述任务脚本包括第一任务节点、第二任务节点,其中,所述第一任务节点定义执行请求,所述执行请求用于请求所述子任务系统执行所述当前子任务,所述第二任务节点定义监测请求,所述监测请求用于监测所述子任务系统执行所述当前子任务的执行结果。
可选地,所述执行请求包括超文本传输协议请求,所述监测请求包括轮询请求,所述执行结果包括执行完成、或者执行终止、或者执行取消、或者执行异常。
可选地,所述处理模块包括:
执行模块,用于根据所述第一任务节点向所述子任务系统发送所述执行请求,请求所述子任务系统执行所述当前子任务;
监测模块,用于根据所述第二任务节点向所述子任务系统发送所述监测请求,监测所述子任务系统执行所述当前子任务的执行结果,若所述执行结果为执行成功,则确定所述子任务执行成功,若所述执行结果为执行终止、或者执行取消、或者执行异常,则确定所述子任务执行失败。
可选地,
所述执行模块,还用于执行所述任务脚本的所述第一任务节点,根据所述第一任务节点向所述子任务系统发送超文本传输协议请求;
所述监测模块,还用于执行所述任务脚本的所述第二任务节点根据所述第二任务节点向所述子任务系统发送轮询请求,定时监测所述子任务系统执行所述当前子任务的执行结果,若所述执行结果为执行成功,则确定所述子任务执行成功,若所述执行结果为执行终止、或者执行取消、或者执行异常,则确定所述子任务执行失败,若所述执行结果为执行成功、执行终止、或者执行取消、或者执行异常时,则停止发送所述轮询请求,若所述执行结果为空时,则间隔预设时间发送所述轮询请求。
本发明还提供了一种任务调度方法,所述任务调度方法应用于任务调度服务器,所述任务调度方法包括:
判断当前子任务是否由对应的子系统单独执行;
当当前子任务是由对应的子系统单独执行时,获取所述子任务对应的任务脚本;
执行所述任务脚本,将所述子任务的执行请求发送给所述对应的子系统,并监测所述子任务的执行结果,根据所述执行结果确定所述子任务是否执行完成。
可选地,所述任务脚本包括第一任务节点、第二任务节点,其中,所述第一任务节点定义执行请求,所述执行请求用于请求所述子任务系统执行所述当前子任务,所述第二任务节点定义监测请求,所述监测请求用于监测所述子任务系统执行所述当前子任务的执行结果。
可选地,所述执行请求包括超文本传输协议请求,所述监测请求包括轮询请求,所述执行结果包括执行完成、或者执行终止、或者执行取消、或者执行异常。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于努比亚技术有限公司,未经努比亚技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201710287419.3/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种基于粒子群算法的多核系统任务调度方法
- 下一篇:一种业务处理方法及装置