任务处理方法及任务处理系统与流程

文档序号:35708943发布日期:2023-10-12 09:36阅读:45来源:国知局
任务处理方法及任务处理系统与流程

本技术属于数据处理,尤其涉及一种任务处理方法及任务处理系统。


背景技术:

1、金融机构中广泛存在批量任务(也就是批处理任务)。例如:金融机构在每次切日后的封账期间,需要针对海量的用户执行息费计算、息费结息、生成账单等批量任务。目前,主要采用单机部署的方式处理批量任务,该方式存在处理速度较慢、执行时间较长的问题,也就是说,针对批量任务存在处理效率较低的问题。


技术实现思路

1、有鉴于此,本技术的目的在于提供一种任务处理方法及任务处理系统,以提高针对批量任务的处理效率。

2、为实现上述目的,本技术提供如下技术方案:

3、第一方面,本技术提供一种任务处理方法,任务处理系统包括任务调度主机和多个任务执行机,所述任务处理方法包括:

4、在满足预设条件的情况下,所述任务调度主机启动针对目标批量任务的任务调度服务,其中,所述目标批量任务由多个子任务构成;

5、所述任务调度主机确定出执行所述目标批量任务的多个目标任务执行机;

6、所述任务调度主机向所述多个目标任务执行机发送调度任务;

7、所述多个目标任务执行机响应所述调度任务,并行执行:

8、获取目标子任务对应的第一数据标识集合,基于所述第一数据标识集合生成第二数据标识集合,其中,将所述多个子任务中的各个子任务依次作为目标子任务,所述第二数据标识集合中的数据标识为所述第一数据标识集合中的数据标识的一部分,所述第一数据标识集合中任意一个数据标识仅属于一个所述第二数据标识集合;将所述目标子任务划分为多个任务分片,基于所述第二数据标识集合生成每个任务分片的第三数据标识集合,所述第三数据标识集合中的数据标识为所述第二数据标识集合中的数据标识的一部分,所述第二数据标识集合中任意一个数据标识仅属于一个所述任务分片的第三数据标识集合;基于多线程机制执行所述多个任务分片,其中,在执行任意一个任务分片的过程中,基于所述任务分片的第三数据标识集合获取业务数据,针对每条业务数据进行处理,生成执行结果;在所述多个任务分片完成执行后,对所述执行结果进行合并。

9、可选的,所述任务处理系统中的任务执行机配置有执行组名称,并且所述任务调度主机存储有所述任务执行机的执行组名称;

10、所述任务调度主机确定出执行所述目标批量任务的多个目标任务执行机,包括:所述任务调度主机获得所述目标批量任务的调度配置信息,所述调度配置信息包括目标执行组名称;所述任务调度主机将具有所述目标执行组名称的任务执行机确定为备选任务执行机;所述任务调度主机确定所述备选任务执行机的状态,将处于存活状态的备选任务执行机确定为目标任务执行机。

11、可选的,在上述任务处理方法的基础上,进一步设置:

12、所述任务执行机向所述任务调度主机发送注册请求,所述注册请求包括所述任务执行机的执行组名称和网际互连协议地址;

13、所述任务调度主机保存所述任务执行机的执行组名称和网际互连协议地址。

14、可选的,所述任务调度主机保存所述任务执行机的执行组名称和网际互连协议地址,包括:

15、所述任务调度主机将具有相同执行组名称的任务执行机的网际互连协议地址保存于同一个地址集合中,且以所述执行组名称作为所述地址集合的标识。

16、可选的,所述基于所述第一数据标识集合生成第二数据标识集合,包括:

17、确定出所述第一数据标识集合中每个数据标识的取模序号,其中,所述数据标识的取模序号为:所述数据标识的哈希值与所述目标任务执行机的数量的取模运算的结果;

18、基于所述目标任务执行机的机器序号和所述第一数据标识集合中各个数据标识的取模序号,生成所述目标任务执行机的第二数据标识集合,其中,所述目标任务执行机的第二数据标识集合包含的数据标识的取模序号均为所述目标任务执行机的机器序号;

19、其中,各个目标任务执行机的机器序号依次为0,1,2,…,m-1,m为目标任务执行机的数量。

20、可选的,在上述任务处理方法的基础上,进一步设置:

21、所述目标任务执行机向所述任务调度主机发送子任务的执行状态信息和任务分片的执行状态信息;

22、所述任务调度主机基于接收到的子任务的执行状态信息和任务分片的执行状态信息生成任务处理进度信息。

23、第二方面,本技术提供一种任务处理系统,包括任务调度主机和多个任务执行机;

24、所述任务调度主机包括:

25、调度管理模块,用于在满足预设条件的情况下,启动针对目标批量任务的任务调度服务,其中,所述目标批量任务由多个子任务构成;确定出执行所述目标批量任务的多个目标任务执行机;向所述多个目标任务执行机发送调度任务;

26、所述任务执行机包括:

27、任务执行模块,用于响应所述调度任务,获取目标子任务对应的第一数据标识集合,基于所述第一数据标识集合生成第二数据标识集合,其中,将所述多个子任务中的各个子任务依次作为目标子任务,所述第二数据标识集合中的数据标识为所述第一数据标识集合中的数据标识的一部分,所述第一数据标识集合中任意一个数据标识仅属于一个所述第二数据标识集合;将所述目标子任务划分为多个任务分片,基于所述第二数据标识集合生成每个任务分片的第三数据标识集合,所述第三数据标识集合中的数据标识为所述第二数据标识集合中的数据标识的一部分,所述第二数据标识集合中任意一个数据标识仅属于一个所述任务分片的第三数据标识集合;基于多线程机制执行所述多个任务分片,其中,在执行任意一个任务分片的过程中,基于所述任务分片的第三数据标识集合获取业务数据,针对每条业务数据进行处理,生成执行结果;在所述多个任务分片完成执行后,对所述执行结果进行合并。

28、可选的,所述任务处理系统中的任务执行机配置有执行组名称,并且所述任务调度主机存储有所述任务执行机的执行组名称;所述调度管理模块确定执行所述目标批量任务的多个目标任务执行机,具体为:

29、获得所述目标批量任务的调度配置信息,所述调度配置信息包括目标执行组名称;将具有所述目标执行组名称的任务执行机确定为备选任务执行机;确定所述备选任务执行机的状态,将处于存活状态的备选任务执行机确定为目标任务执行机。

30、可选的,所述任务调度主机还包括注册管理模块,所述任务执行机还包括注册模块;

31、所述注册模块用于:向所述任务调度主机发送注册请求,所述注册请求包括所述任务执行机的执行组名称和网际互连协议地址;

32、所述注册管理模块用于:保存所述任务执行机的执行组名称和网际互连协议地址。

33、可选的,所述任务调度主机还包括进度管理模块,所述任务执行机还包括信息管理模块;

34、所述信息管理模块用于:向所述任务调度主机发送子任务的执行状态信息和任务分片的执行状态信息;

35、所述进度管理模块用于:基于接收到的子任务的执行状态信息和任务分片的执行状态信息生成任务处理进度信息。

36、由此可见,本技术的有益效果为:

37、本技术公开的任务处理方法,在面对批量任务的情况下,任务调度主机确定出执行批量任务的多个任务执行机,向多个任务执行机发送调度任务,由多个任务执行机同时处理批量任务所涉及的业务数据,能够充分利用各个任务执行机的算力;并且,任务执行机将子任务划分为多个任务分片,基于多线程机制执行多个任务分片,能够最大化的使用单个任务执行机的算力。因此,基于本技术公开的任务处理方法,能够极大提高针对批量任务的处理效率。另外,能够很方便地进行横向扩展(设置更多的任务执行机处理批量任务)。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1