【技术实现步骤摘要】
多任务调度方法和装置
本专利技术涉及大数据异步计算领域,具体而言,涉及一种多任务调度方法和装置。
技术介绍
大数据是一种时下已经非常流行的IT应用技术,通过hadoop/spark等常用工具框架,对电商、金融、工业、通信等各个领域提供了海量数据的存储、查询、分析功能。多任务计算是大数据计算中常见的一个场景,针对一个大数据集群,要在一定时间内满足不同来源的计算需求,如何根据业务需求排定任务执行顺序,如何合理分配固定的CPU、内存、网络等资源,直接决定了一个集群的实际输出能力。现有技术之一是通过开源大数据工具hadoop/spark自身的功能或配置,对多任务场景进行管理,在工具自带的策略中,选择一种相对比较适合的策略来进行管理。对于资源管理,采用固定配额或动态配额模式,固定的任务队列方式可能会导致优先级较低的任务长时间占用大量资源,导致高优先级任务无法迅速得到执行,从而导致集群总体输出降低。另一种解决方案是通过流行的docker/k8s技术,动态生成大数据集群节点,弹性分配资源,同时docker/k8s还可以提供 ...
【技术保护点】
1.一种多任务调度方法,其特征在于,包括:/n创建至少两种数据类型的任务队列;每种所述任务队列均包括至少一个待执行任务;每个所述待执行任务匹配有不同的优先级;/n设置每种所述任务队列的连接池的最大阈值和最小阈值;所述连接池用于执行所述待执行任务时连接对应的执行资源;所述最大阈值用于避免所述任务队列占用过多的执行资源;所述最小阈值用于避免所述任务队列没有执行资源;/n基于所述任务队列的连接池的最大阈值和最小阈值,按照所述待执行任务的优先级顺序依次执行所述待执行任务。/n
【技术特征摘要】
1.一种多任务调度方法,其特征在于,包括:
创建至少两种数据类型的任务队列;每种所述任务队列均包括至少一个待执行任务;每个所述待执行任务匹配有不同的优先级;
设置每种所述任务队列的连接池的最大阈值和最小阈值;所述连接池用于执行所述待执行任务时连接对应的执行资源;所述最大阈值用于避免所述任务队列占用过多的执行资源;所述最小阈值用于避免所述任务队列没有执行资源;
基于所述任务队列的连接池的最大阈值和最小阈值,按照所述待执行任务的优先级顺序依次执行所述待执行任务。
2.根据权利要求1所述的方法,其特征在于,基于所述任务队列的连接池的最大阈值和最小阈值,按照所述待执行任务的优先级顺序依次执行所述待执行任务的步骤,包括:
判断所述任务队列是否有所述连接池处于空闲状态;
若是,则通过所述连接池调度执行所述待执行任务。
3.根据权利要求2所述的方法,其特征在于,
若否,则判断所述任务队列的处于空闲状态和运行状态的所述连接池的数量是否大于等于所述最大阈值;
若否,则对所述任务队列创建新的所述连接池,并通过所述连接池调度执行所述待执行任务。
4.根据权利要求2或3所述的方法,其特征在于,通过所述连接池调度执行所述待执行任务的步骤,包括:
获取所述待执行任务的优先级;
根据所述待执行任务的优先级大小调度执行所述待执行任务。
5.根据权利要求4所述的方法,其特征在于,每个所述待执行任务设置有任务过期时间;根据所述待执行任务的优先级大小调度执行所述待执行任务的步骤之后,包括:
若在所述任务过期时间内所述待执行任务未完成,则将所述待执行任务标记为超时错误,并回收执行资源;
若在所述任务过期时间内所述待执行任务完成,则输出所述待执行任务的执行结果。...
【专利技术属性】
技术研发人员:赵云鹏,
申请(专利权)人:北京明略软件系统有限公司,
类型:发明
国别省市:北京;11
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。