本发明专利技术公开了一种数据处理任务的调度方法、装置和系统,涉及计算机技术领域。该方法的一种具体实施方式包括:获取一个或多个数据处理任务的执行顺序,每一个所述数据处理任务具有对应的消息监听器;根据所述执行顺序,确定每一个所述数据处理任务对应的执行时间;将所述数据处理任务的标识及所述数据处理任务的标识对应的所述执行时间存储至消息队列,以供所述消息监听器根据从所述消息队列中获取的与所述数据处理任务的标识相对应的所述执行时间触发所述数据处理任务。该实施方式避免了执行周期对任务调度的限制,提高了任务的执行效率。效率。效率。
【技术实现步骤摘要】
一种数据处理任务的调度方法、装置和系统
[0001]本专利技术涉及计算机
,尤其涉及一种数据处理任务的调度方法、装置和系统。
技术介绍
[0002]大数据系统一般都具有数据存储量大、数据存储结构复杂等特点,相应地数据处理任务量大,执行周期各异,且部分数据处理任务之间具有依赖关系即下游数据处理任务以来上游数据处理任务的执行结果,因而为提高数据处任务的执行效率,需要对数据处理任务进行合理的调度及分配。目前,数据处理任务调度多是通过简单的串行、定时技术来实现,如Buffalo任务调度系统。
[0003]但现有的数据处理任务调度方法无法配置不同执行周期的数据处理任务之间的依赖关系,导致不同执行周期的任务与其他具有依赖关系的任务脱离,且无法实时并行运行多个不同执行周期的任务。为实现不同执行周期的依赖关系,则需要重新开发一套新的任务,增加了开发成本,降低了任务的执行效率。除此之外,在通过串行方式配置任务之间的依赖关系的情况下,上游任务未开始执行或未执行结束,下游任务无法开始执行,进而延长了任务的总执行时间,降低了数据处理任务的执行效率。
技术实现思路
[0004]有鉴于此,本专利技术提供一种数据处理任务的调度方法、装置和系统,该任务调度方法,不仅能够实现并行执行多种不同执行周期的任务,还可以根据实际需求触发具有依赖关系的不同执行周期的任务,降低了具有依赖关系的任务等待执行的时间,减少了数据处理任务的总执行时间,提高了任务的执行效率。
[0005]为实现上述目的,根据本专利技术的第一方面,提供了一种数据处理任务的调度方法,包括:
[0006]获取一个或多个数据处理任务的执行顺序,每一个所述数据处理任务具有对应的消息监听器;
[0007]根据所述执行顺序,确定每一个所述数据处理任务对应的执行时间;
[0008]将所述数据处理任务的标识及所述数据处理任务的标识对应的所述执行时间存储至消息队列,以供所述消息监听器根据从所述消息队列中获取的与所述数据处理任务的标识相对应的所述执行时间触发所述数据处理任务。
[0009]可选地,还包括:接收所述消息监听器返回的所述数据处理任务的执行结果。
[0010]可选地,在所述数据处理任务执行失败的情况下,
[0011]发送所述数据处理任务执行失败警报;和/或
[0012]尝试执行所述数据处理任务,或将所述数据处理任务对应的降级数据作为所述数据处理任务的执行结果。
[0013]可选地,使用时间表达式表示所述执行时间。
[0014]为实现上述目的,根据本专利技术的第二方面,提供了一种数据处理任务的调度装置,包括:任务调度模块、消息发送模块;其中,
[0015]所述任务调度模块,用于获取一个或多个数据处理任务的执行顺序,每一个所述数据处理任务具有对应的消息监听器;根据所述执行顺序确定每一个所述数据处理任务对应的执行时间;
[0016]所述消息发送模块,用于将所述数据处理任务的标识及所述数据处理任务的标识对应的所述执行时间存储至消息队列,以供所述消息监听器根据从所述消息队列中获取的与所述数据处理任务的标识相对应的所述执行时间触发所述数据处理任务。
[0017]可选地,所述任务调度模块,还用于接收所述消息监听器返回的所述数据处理任务的执行结果。
[0018]可选地,在所述数据处理任务执行失败的情况下,所述任务调度模块,还用于
[0019]发送所述数据处理任务执行失败警报;和或
[0020]尝试执行所述数据处理任务,或将所述数据处理任务对应的降级数据作为所述数据处理任务的执行结果。
[0021]可选地,所述任务调度模块,还用于使用时间表达式表示所述执行时间。
[0022]为实现上述目的,根据本专利技术的第三方面,提供了一种数据处理任务的调度系统,包括如上所述的数据处理任务的调度装置、消息队列、数据处理任务对应消息监听器;其中,
[0023]所述数据处理任务的调度装置,用于获取一个或多个数据处理任务的执行顺序,根据所述执行顺序生成每一个所述数据处理任务对应的执行时间,将所述数据处理任务的标识及所述数据处理任务的标识对应的所述执行时间存储至消息队列;
[0024]所述消息队列,用于相对应地存储所述数据处理任务的标识、所述执行时间;
[0025]所述消息监听器,用于根据从所述消息队列中获取的与所述数据处理任务的标识相对应的所述执行时间触发所述数据处理任务。
[0026]为实现上述目的,根据本专利技术的第四方面,提供了一种用于数据处理任务调度的服务器,包括:一个或多个处理器;存储装置,用于存储一个或多个程序,当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如上所述的数据处理任务调度方法中任一所述方法。
[0027]为实现上述目的,根据本专利技术的第五方面,提供了一种计算机可读介质,其上存储有计算机程序,所述程序被处理器执行时实现如上所述的数据处理任务调度方法中任一所述方法。
[0028]上述专利技术中具有如下优点或有益效果:通过消息队列实现了对数据处理任务的调度,避免了执行周期的对数据处理任务调度的限制,且实现了不同执行周期任务的并发执行或者依赖关系,提高了数据处理任务的执行效率;通过时间表达式,灵活多样地表达了不同数据处理任务的执行周期、执行时间点以及执行方式等,对不同执行周期的任务具有较高的适用性,实现了任务的灵活编排机制。
[0029]上述的非惯用的可选方式所具有的进一步效果将在下文中结合具体实施方式加以说明。
附图说明
[0030]附图用于更好地理解本专利技术,不构成对本专利技术的不当限定。其中:
[0031]图1是根据本专利技术实施例的数据处理任务的调度方法的主要流程的示意图;
[0032]图2是根据本专利技术实施例的数据处理任务的执行顺序示意图;
[0033]图3是根据本专利技术实施例的数据处理任务的调度装置的主要模块的示意图;
[0034]图4是根据本专利技术实施例的数据处理任务的调度系统的主要模块的示意图
[0035]图5是根据本专利技术实施例的另一数据处理任务的调度系统的主要结构的示意图
[0036]图6是根据本专利技术实施例的另一数据处理任务的调度方法的主要结构的示意图
[0037]图7是本专利技术实施例可以应用于其中的示例性系统架构图;
[0038]图8是适于用来实现本专利技术实施例的终端设备或服务器的计算机系统的结构示意图。
具体实施方式
[0039]以下结合附图对本专利技术的示范性实施例做出说明,其中包括本专利技术实施例的各种细节以助于理解,应当将它们认为仅仅是示范性的。因此,本领域普通技术人员应当认识到,可以对这里描述的实施例做出各种改变和修改,而不会背离本专利技术的范围和精神。同样,为了清楚和简明,以下的描述中省略了对公知功能和结构的描述。
[0040]图1是根据本专利技术实施例的数据处理任务的调度方法的主要流程的示意图,如图1所示,该数据处理任务的调度本文档来自技高网...
【技术保护点】
【技术特征摘要】
1.一种数据处理任务的调度方法,其特征在于,包括:获取一个或多个数据处理任务的执行顺序,每一个所述数据处理任务具有对应的消息监听器;根据所述执行顺序,确定每一个所述数据处理任务对应的执行时间;将所述数据处理任务的标识及所述数据处理任务的标识对应的所述执行时间存储至消息队列,以供所述消息监听器根据从所述消息队列中获取的与所述数据处理任务的标识相对应的所述执行时间触发所述数据处理任务。2.根据权利要求1所述的数据处理任务的调度方法,其特征在于,还包括:接收所述消息监听器返回的所述数据处理任务的执行结果。3.根据权利要求2所述的大数据任务调度方法,其特征在于,在所述数据处理任务执行失败的情况下,发送所述数据处理任务执行失败警报;和/或尝试执行所述数据处理任务,或将所述数据处理任务对应的降级数据作为所述数据处理任务的执行结果。4.根据权利要求1所述的大数据任务调度方法,其特征在于,使用时间表达式表示所述执行时间。5.一种数据处理任务的调度装置,其特征在于,包括:任务调度模块、消息发送模块;其中,所述任务调度模块,用于获取一个或多个数据处理任务的执行顺序,每一个所述数据处理任务具有对应的消息监听器;根据所述执行顺序确定每一个所述数据处理任务对应的执行时间;所述消息发送模块,用于将所述数据处理任务的标识及所述数据处理任务的标识对应的所述执行时间存储至消息队列,以供所述消息监听器根据从所述消息队列中获取的与所述数据处理任务的标识相对应的所述执行时间触发所述数据处理任务。6.根据权利要求5所述的数据处理任务的调度装置,其特征...
【专利技术属性】
技术研发人员:朱时涛,
申请(专利权)人:北京沃东天骏信息技术有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。