一种生物信息分析中的任务调度执行方法与流程

文档序号:34187173发布日期:2023-05-17 13:45阅读:49来源:国知局
一种生物信息分析中的任务调度执行方法与流程

本发明涉及生物信息分析,具体涉及一种生物信息分析中的任务调度执行方法。


背景技术:

1、随着第二代测序仪的兴起,生物信息学分析处理的样本量与数据量指数增长,生物信息学分析引入了分布式集群用于计算分析;生物信息学分析一般都是以项目为单位,每个项目包含几十到几千个甚至上万的生信分析任务,任务之间存在串行,并行关系;每个生物分析人员一般有几十乃至上百个项目,在进行分析时任务之间相互交叉,不同路径相互干扰极大影响了分析人员的操作,影响分析效率,导致分析人员将大量时间投入到任务的分析过程中,我们希望分析人员将大部分时间用于对分析结果的解读节约人力成本,因此对分析任务进行合理的调度规划一个必须且重要的问题。


技术实现思路

1、本发明提供一种生物信息分析中的任务调度执行方法,实现快速识别项目内不同任务之间的串行,并行关系;让其能按照任务之间关系来运行任务,最大程度的在分布式集群中利用好计算资源。

2、本发明解决上述技术问题的技术方案如下:

3、一种生物信息分析中的任务调度执行方法,包括:

4、将分析项目内任务的长链关系,拆分为两两任务间关系并存储,所述两两任务间关系仅包括直接依赖关系和无直接依赖关系;所述直接依赖关系表示下游任务的执行依赖当前任务的执行结果;

5、在分布式集群中,对直接依赖关系的任务进行串行执行,对无直接依赖关系的任务进行并行执行;所述分布式集群使用sge/pbs分布式资源管理和调度,包括控制节点和计算节点,所述控制节点用于执行调度,所述计算节点用于任务的实际计算。

6、进一步的,所述控制节点和计算节点共享磁盘,计算节点完成每一任务的计算后生成标志文件并将标志文件写入所述共享磁盘中,所述标志文件用于判断对应任务是否完成。

7、进一步的,所述分布式集群还包括zodb对象数据库;将分析项目内任务的长链关系拆分为两两任务间关系后,将直接依赖关系的任务以链表结构存入zodb对象数据库中;以固定时间间隔通过检查所述标志文件判断链表结构中起始任务的状态,当所述起始任务完成时,则将所述起始任务更新为其下游任务。

8、进一步的,还包括:在所述zodb对象数据库中存储各个任务在执行时所需的资源信息。

9、进一步的,所述资源信息包括:任务在执行时所需的内存、cpu。

10、进一步的,所述资源信息还包括:指定的执行任务的计算节点和/或计算队列。

11、进一步的,所述控制节点通过sge接口获取各计算节点中各个任务的执行状态,并将所述执行状态写入所述zodb对象数据库中。

12、进一步的,所述分布式集群还包括sqlite关系数据库;所述控制节点通过sge接口获取各计算节点中各个任务的执行过程中实际所需的任务资源信息,以及计算节点的负载、计算节点的cpu和内存使用情况,并存入所述sqlite关系数据库中。

13、进一步的,还包括:根据所述直接依赖关系,当对项目中某一任务进行状态修改时,同时调整下游或者上游任务的状态。

14、进一步的,所述的当对项目中某一任务进行状态修改时,同时调整下游或者上游任务的状态,包括:

15、当对项目中某个任务调整参数重新运行时,将依赖该任务的所有下游任务状态全部设置为未完成,等待该任务完成后再重新执行其下游任务分析;

16、当项目中某个任务已经完成,但是丢失了监控信息,则将该任务定义为完成,并将该任务的上游所有任务状态定义为完成,并以此任务为起始任务进行下游任务分析。

17、本发明的有益效果是:1.识别任务间依赖关系,实现不同任务间的串行,并行;

18、2.对每个任务的资源进行合理的分配,包括内存,cpu,计算节点,计算队列;

19、3.有效识别任务完成;

20、4.快速检测项目内任务完成并开始其下游任务分析;

21、5.能够实时获取到单个任务,单个节点的运行资源以及项目监控过程中的日志;

22、6.能够获取单个项目的运行进度;

23、7.能够调整任意任务状态使受其影响的任务状态也随着发生改变。



技术特征:

1.一种生物信息分析中的任务调度执行方法,其特征在于,包括:

2.根据权利要求1所述的方法,其特征在于,所述控制节点和计算节点共享磁盘,计算节点完成每一任务的计算后生成标志文件并将标志文件写入所述共享磁盘中,所述标志文件用于判断对应任务是否完成。

3.根据权利要求2所述的方法,其特征在于,所述分布式集群还包括zodb对象数据库;将分析项目内任务的长链关系拆分为两两任务间关系后,将直接依赖关系的任务以链表结构存入zodb对象数据库中;以固定时间间隔通过检查所述标志文件判断链表结构中起始任务的状态,当所述起始任务完成时,则将所述起始任务更新为其下游任务。

4.根据权利要求3所述的方法,其特征在于,还包括:在所述zodb对象数据库中存储各个任务在执行时所需的资源信息。

5.根据权利要求4所述的方法,其特征在于,所述资源信息包括:任务在执行时所需的内存、cpu。

6.根据权利要求5所述的方法,其特征在于,所述资源信息还包括:指定的执行任务的计算节点和/或计算队列。

7.根据权利要求3所述的方法,其特征在于,所述控制节点通过sge接口获取各计算节点中各个任务的执行状态,并将所述执行状态写入所述zodb对象数据库中。

8.根据权利要求1所述的方法,其特征在于,所述分布式集群还包括sqlite关系数据库;所述控制节点通过sge接口获取各计算节点中各个任务的执行过程中实际所需的任务资源信息,并存入所述sqlite关系数据库中。

9.根据权利要求3所述的方法,其特征在于,还包括:根据所述直接依赖关系,当对项目中某一任务进行状态修改时,同时调整下游或者上游任务的状态。

10.根据权利要求9所述的方法,其特征在于,所述的当对项目中某一任务进行状态修改时,同时调整下游或者上游任务的状态,包括:


技术总结
本发明涉及一种生物信息分析中的任务调度执行方法,包括:将分析项目内任务的长链关系,拆分为两两任务间关系并存储,所述两两任务间关系仅包括直接依赖关系和无直接依赖关系;所述直接依赖关系表示下游任务的执行依赖当前任务的执行结果;在分布式集群中,对直接依赖关系的任务进行串行执行,对无直接依赖关系的任务进行并行执行。本发明实现了快速识别项目内不同任务之间的串行,并行关系;让其能按照任务之间关系来运行任务,最大程度的在分布式集群中利用好计算资源。

技术研发人员:夏展峰,石明明
受保护的技术使用者:深圳华大基因科技服务有限公司
技术研发日:
技术公布日:2024/1/12
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1