一种基于高通量测序数据的计算机集群的作业调度系统的制作方法

文档序号:9708155阅读:520来源:国知局
一种基于高通量测序数据的计算机集群的作业调度系统的制作方法
【技术领域】
[0001]本发明属计算机领域,涉及一种基于高通量测序数据的计算机集群的作业调度系统。具体的说是针对高通量组学数据的数据密集性计算的集群作业调度系统。
【背景技术】
[0002]随着高通量组学技术在生物、健康和医学领域的广泛应用,大量存储在文件系统中的组学数据文件急需数据密集型计算集群进行高效分效,而目前的高性能计算集群,以浮点计算能力为主要指标,其高速网络资源主要分配给消息通迅;此外,组学数据分析涉及大量算法、软件和数据类型,而无法全面实现针对集群的并行化。
[0003]基于此,本申请的发明人拟针对组学数据分析的急需现状提供一个可以兼容不同软件和数据类型的可自动处理大规模组学数据的数据密集型作业调度系统。

【发明内容】

[0004]本发明的技术目的是解决现有技术的不足,针对高通量测序数据分析,为其数据密集型计算提供作业调度方法。具体涉及一种基于高通量测序数据的计算机集群的作业调度系统。
[0005]本发明的作业调度系统中包括如下调度过程:搭建独立的消息与储存网络构架;指定分析软件与输入数据;通过文件系统自动生成指定的分析作业任务;通过消息传递侦听集群计算结点负载状态,向结点布署批量任务;在计算结点里,通过进程通迅侦听任务状态,根据指定负载要求控制任务量,并最终完成批量任务。该作业调度系统与现有技术相t匕,可以实现以大数据文件为主要输入的高通量组学数据分析的任务自动化,减少结点间的消息通迅,并形成对数据密集型任务的多层次负载平衡,充分利用高速网络资源进行数据传输。
[0006]具体的,本发明所述的调度系统由两个部分组成:1)搭建消息与储存网络相互独立的计算机集群;布署管理、存储与计算结点;其中存储访问通过一个或多个高速网络实现;2)作业调度包括任务生成和负载均衡两个部分,其中批量任务由数据分析软件命令模板和数据文件类型自动生成,而负载均衡通过结点间均衡和结点内均衡的两层控制实现。
[0007]本发明中,所述部分1)中通过下述步骤和过程实现:
[0008]㈠,在集群中布署独立的管理结点、计算结点和存储结点,保证计算和存储资源分离;
[0009](二),在集群中布署独立的消息通迅网络和存储传输网络,存储传输网络必须使用一组及或多组高速网络设备,确促消息与存储传输的设备独立。
[0010]本发明中,所述部分2)中通过下述步骤和过程实现:
[0011](-),用户登录作业提交管理结点,建立分析软件的命令模板,指定待分析的文件目录和文件类型,产生批量作业任务;
[0012]㈡,用户通过MPICH2建立所有批量作用任务的任务队列消息;
[0013](Ξ), MPICH2同时侦听计算资源的存储和计算负载,向计算结点分配批量任务;
[0014](Ε),计算结点通过Python threading逐个运行分配的批量任务,侦听负载性情况,并产生并发的任务数;
[0015]?,结点分配的批量任务完成;返回消息(二 )中产生的任务队列,获取新的任务直到所有任务完成。
[0016]更具体的,本发明的基于高通量测序数据的计算机集群的作业调度系统,其特征在于,其包括:
[0017]1)搭建计算机集群构架,包括管理结点、计算结点和存储结点;集群通迅由两个以上独立网络,包括一个消息通迅的以太网络和一个以上存储高速网络;
[0018]2)指定分析任务程序和数据文件形式,自动生成批量分析作业任务;
[0019]3)通过消息传递侦听集群计算结点负载状态,对低负载结点布署批量任务;
[0020]4)在计算结点里,通过进程通迅侦听任务状态,根据指定负载要求控制任务量,并最终完成批量任务。
[0021]本发明提供了一种基于计算机集群作业调度系统调度的方法,其特征在于,其包括,通过下述步骤和过程实现上述1)的任务:
[0022](1)、布署一台管理服务器,管理集群的作业提交,计算和存储资源分配;
[0023](2)、管理服务器同时管理和分离消息通迅和存储服务网络,保证任务负载管理与存储系统独立,资源管理不受数据传输压力影响;
[0024]以及,通过下述步骤和过程实现上述2)的任务;
[0025](3)、指定高通量数据分析的软件与执行方式;
[0026](4)、指定待分析文件形式,自动形成批量作业任务;
[0027](5)、统计计算量和资源比例;
[0028]以及,通过下述步骤和过程实现上述3)的任务;
[0029](6)、基于MPICH2建立基于MPI消息通迅和任务队列,并分析结点负载;
[0030](7)、通过MPI消息对低负载结点布署批量任务;
[0031]以及,通过下述步骤和过程实现上述4)的任务;
[0032](8)、基于Python Threading建立MPI消息任务队列的任务的子线性;
[0033](9)、通过系统管道分析负载情况,通过Threading控制结点内批量任务并发量;
[0034](10)、完成单次批量任务完成报告,返回MPI消息,返回负载情况,等待新任务。
[0035]本发明的优点在于:
[0036]一、通过布署消息通迅和数据传输网络,将有限的高速网络资源集中用于数据传输;
[0037]二、通过对消息通迅和数据传输的硬件分离限制,确保通过基于消息通迅的调度系统不会因大量数据传输而延迟或中断;
[0038]三、通过在集群和计算结点两个层次进行负载控制,减少通迅量,使非高速网络同样可以满足消息通迅要求;
[0039]四、基于节点的负载监听可以产生批量的任务完成报告,有效控制不同任务的数据量和数据复杂性差异;
[0040]五、该系统以模板形式和文件为输入产生批量任务,可用于完成高通量组学数据自动化分析。
【附图说明】
[0041]图1示出本发明设计的简化计算机集群构架。
[0042]图2示出本发明设计的调度系统工作流框架。
[0043]图3示出本发明设计的自动分析作业生成程序。
[0044]图4示出本发明设计的结点内任务调度程序。
[0045]图5示出本发明设计的集群内任务调度程序。
【具体实施方式】
[0046]下面参照附图用本发明的示例性实施例对本发明进行更全面的描述及说明,但并不意味着本发明仅限于此。
[0047]实施例1
[0048]本发明提供的数据密集型计算集群调度系统包括下述步骤:
[0049]如图1所示配置集群:
[0050]一、搭建计算机集群构架,包括管理结点、计算结点和存储结点,保证计算和存储资源分离;
[0051 ] 二、在集群中布署独立的消息通迅网络和存储传输网络,存储传输网络必须使用一组及或多组高速网络设备;确促消息与存储传输的设备独立;
[0052]如图2所示完成调度系统的调度流程:
[0053]三、用户登录作业提交管理结点,建立分析软件的命令模板,指定待分析的文件目录和文件类型,产生所有作业任务;如图3run_analysis.sh中变量cmd所示;
[0054]四、用户通过MPICH2程序,如图4 runscripts,建立作业任务队列,并管理结点间的任务调度runscripts在集群中可通过常用集群作业系统运行,提交作业任务;如天河的 yhrun, slurm 的 srun 或 SGE 的 qsub 等;
[0055]五、计算结点中,应用Python子线程管理,如图5runscripts.py程序,通过runscripts调用并接受任务队列信息,侦听负载性情况,并产生并发的任务数;
[0056]六、计算结点中runscirpts.py将作业完成情况返回任务调度管理程序,并申请新的任务,直至所有作业完成。
[0057]应当说明的是:以上实施例仅用以说明本发明的技术方案而非对其限制,尽管参照上述实施例对本发明进行了详细的说明,所属领域的普通技术人员应当理解:依然可以对本发明的【具体实施方式】进行修改或者等同替换,而未脱离本发明精神和范围的任何修改或者等同替换,其均应涵盖在本发明的权利要求范围当中。
【主权项】
1.一种基于高通量测序数据的计算机集群的作业调度系统,其特征在于,其包括: 1)搭建计算机集群构架,包括管理结点、计算结点和存储结点;集群通迅由两个以上独立网络,包括一个消息通迅的以太网络和一个以上存储高速网络; 2)指定分析任务程序和数据文件形式,自动生成批量分析作业任务; 3)通过消息传递侦听集群计算结点负载状态,对低负载结点布署批量任务; 4)在计算结点里,通过进程通迅侦听任务状态,根据指定负载要求控制任务量,并最终完成批量任务。2.一种基于权利要求1的作业调度系统调度的方法,其特征在于,其包括步骤: (1)、布署一台管理服务器,管理集群的作业提交,计算和存储资源分配; (2)、管理服务器同时管理和分离消息通迅和存储服务网络,保证任务负载管理与存储系统独立,资源管理不受数据传输压力影响。3.一种基于权利要求1或2的作业调度系统调度的方法,其特征在于,其还包括步骤: (3)、指定高通量数据分析的软件与执行方式; (4)、指定待分析文件形式,自动形成批量作业任务; (5)、统计计算量和资源比例。4.一种基于权利要求1或2或3的作业调度系统调度的方法,其特征在于,其还包括步骤: (6)、基于MPICH2建立基于MPI消息通迅和任务队列,并分析结点负载; (7)、通过MPI消息对低负载结点布署批量任务。5.一种基于权利要求1或2或3或4的作业调度系统调度的方法,其特征在于,其还包括步骤: (8)、基于PythonThreading建立MPI消息任务队列的任务的子线性; (9)、通过系统管道分析负载情况,通过Threading控制结点内批量任务并发量; (10)、完成单次批量任务完成报告,返回MPI消息,返回负载情况,等待新任务。
【专利摘要】本发明属计算机领域,涉及一种基于高通量测序数据的计算机集群的作业调度系统。具体涉及针对高通量组学数据的数据密集性计算的集群作业调度系统。本发明中包括:搭建独立的消息与储存网络构架;指定分析软件与输入数据;通过文件系统自动生成指定的分析作业任务;通过消息传递侦听集群计算结点负载状态,向结点布署批量任务;在计算结点里,通过进程通迅侦听任务状态,根据指定负载要求控制任务量,并最终完成批量任务。该作业调度系统与现有技术相比,可以实现以大数据文件为主要输入的高通量组学数据分析的任务自动化,减少结点间的消息通迅,并形成对数据密集型任务的多层次负载平衡,充分利用高速网络资源进行数据传输。
【IPC分类】G06F9/50, G06F9/48
【公开号】CN105468451
【申请号】CN201410409376
【发明人】赵琛, 郁颖, 庆涛, 石乐明
【申请人】复旦大学
【公开日】2016年4月6日
【申请日】2014年8月19日
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1