亚洲狠狠干,亚洲国产福利精品一区二区,国产八区,激情文学亚洲色图

一種基于高通量測序數(shù)據(jù)的計算機(jī)集群的作業(yè)調(diào)度系統(tǒng)的制作方法

文檔序號:9708155閱讀:516來源:國知局
一種基于高通量測序數(shù)據(jù)的計算機(jī)集群的作業(yè)調(diào)度系統(tǒng)的制作方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明屬計算機(jī)領(lǐng)域,涉及一種基于高通量測序數(shù)據(jù)的計算機(jī)集群的作業(yè)調(diào)度系統(tǒng)。具體的說是針對高通量組學(xué)數(shù)據(jù)的數(shù)據(jù)密集性計算的集群作業(yè)調(diào)度系統(tǒng)。
【背景技術(shù)】
[0002]隨著高通量組學(xué)技術(shù)在生物、健康和醫(yī)學(xué)領(lǐng)域的廣泛應(yīng)用,大量存儲在文件系統(tǒng)中的組學(xué)數(shù)據(jù)文件急需數(shù)據(jù)密集型計算集群進(jìn)行高效分效,而目前的高性能計算集群,以浮點計算能力為主要指標(biāo),其高速網(wǎng)絡(luò)資源主要分配給消息通迅;此外,組學(xué)數(shù)據(jù)分析涉及大量算法、軟件和數(shù)據(jù)類型,而無法全面實現(xiàn)針對集群的并行化。
[0003]基于此,本申請的發(fā)明人擬針對組學(xué)數(shù)據(jù)分析的急需現(xiàn)狀提供一個可以兼容不同軟件和數(shù)據(jù)類型的可自動處理大規(guī)模組學(xué)數(shù)據(jù)的數(shù)據(jù)密集型作業(yè)調(diào)度系統(tǒng)。

【發(fā)明內(nèi)容】

[0004]本發(fā)明的技術(shù)目的是解決現(xiàn)有技術(shù)的不足,針對高通量測序數(shù)據(jù)分析,為其數(shù)據(jù)密集型計算提供作業(yè)調(diào)度方法。具體涉及一種基于高通量測序數(shù)據(jù)的計算機(jī)集群的作業(yè)調(diào)度系統(tǒng)。
[0005]本發(fā)明的作業(yè)調(diào)度系統(tǒng)中包括如下調(diào)度過程:搭建獨立的消息與儲存網(wǎng)絡(luò)構(gòu)架;指定分析軟件與輸入數(shù)據(jù);通過文件系統(tǒng)自動生成指定的分析作業(yè)任務(wù);通過消息傳遞偵聽集群計算結(jié)點負(fù)載狀態(tài),向結(jié)點布署批量任務(wù);在計算結(jié)點里,通過進(jìn)程通迅偵聽任務(wù)狀態(tài),根據(jù)指定負(fù)載要求控制任務(wù)量,并最終完成批量任務(wù)。該作業(yè)調(diào)度系統(tǒng)與現(xiàn)有技術(shù)相t匕,可以實現(xiàn)以大數(shù)據(jù)文件為主要輸入的高通量組學(xué)數(shù)據(jù)分析的任務(wù)自動化,減少結(jié)點間的消息通迅,并形成對數(shù)據(jù)密集型任務(wù)的多層次負(fù)載平衡,充分利用高速網(wǎng)絡(luò)資源進(jìn)行數(shù)據(jù)傳輸。
[0006]具體的,本發(fā)明所述的調(diào)度系統(tǒng)由兩個部分組成:1)搭建消息與儲存網(wǎng)絡(luò)相互獨立的計算機(jī)集群;布署管理、存儲與計算結(jié)點;其中存儲訪問通過一個或多個高速網(wǎng)絡(luò)實現(xiàn);2)作業(yè)調(diào)度包括任務(wù)生成和負(fù)載均衡兩個部分,其中批量任務(wù)由數(shù)據(jù)分析軟件命令模板和數(shù)據(jù)文件類型自動生成,而負(fù)載均衡通過結(jié)點間均衡和結(jié)點內(nèi)均衡的兩層控制實現(xiàn)。
[0007]本發(fā)明中,所述部分1)中通過下述步驟和過程實現(xiàn):
[0008]㈠,在集群中布署獨立的管理結(jié)點、計算結(jié)點和存儲結(jié)點,保證計算和存儲資源分離;
[0009](二),在集群中布署獨立的消息通迅網(wǎng)絡(luò)和存儲傳輸網(wǎng)絡(luò),存儲傳輸網(wǎng)絡(luò)必須使用一組及或多組高速網(wǎng)絡(luò)設(shè)備,確促消息與存儲傳輸?shù)脑O(shè)備獨立。
[0010]本發(fā)明中,所述部分2)中通過下述步驟和過程實現(xiàn):
[0011](-),用戶登錄作業(yè)提交管理結(jié)點,建立分析軟件的命令模板,指定待分析的文件目錄和文件類型,產(chǎn)生批量作業(yè)任務(wù);
[0012]㈡,用戶通過MPICH2建立所有批量作用任務(wù)的任務(wù)隊列消息;
[0013](Ξ), MPICH2同時偵聽計算資源的存儲和計算負(fù)載,向計算結(jié)點分配批量任務(wù);
[0014](Ε),計算結(jié)點通過Python threading逐個運行分配的批量任務(wù),偵聽負(fù)載性情況,并產(chǎn)生并發(fā)的任務(wù)數(shù);
[0015]?,結(jié)點分配的批量任務(wù)完成;返回消息(二 )中產(chǎn)生的任務(wù)隊列,獲取新的任務(wù)直到所有任務(wù)完成。
[0016]更具體的,本發(fā)明的基于高通量測序數(shù)據(jù)的計算機(jī)集群的作業(yè)調(diào)度系統(tǒng),其特征在于,其包括:
[0017]1)搭建計算機(jī)集群構(gòu)架,包括管理結(jié)點、計算結(jié)點和存儲結(jié)點;集群通迅由兩個以上獨立網(wǎng)絡(luò),包括一個消息通迅的以太網(wǎng)絡(luò)和一個以上存儲高速網(wǎng)絡(luò);
[0018]2)指定分析任務(wù)程序和數(shù)據(jù)文件形式,自動生成批量分析作業(yè)任務(wù);
[0019]3)通過消息傳遞偵聽集群計算結(jié)點負(fù)載狀態(tài),對低負(fù)載結(jié)點布署批量任務(wù);
[0020]4)在計算結(jié)點里,通過進(jìn)程通迅偵聽任務(wù)狀態(tài),根據(jù)指定負(fù)載要求控制任務(wù)量,并最終完成批量任務(wù)。
[0021]本發(fā)明提供了一種基于計算機(jī)集群作業(yè)調(diào)度系統(tǒng)調(diào)度的方法,其特征在于,其包括,通過下述步驟和過程實現(xiàn)上述1)的任務(wù):
[0022](1)、布署一臺管理服務(wù)器,管理集群的作業(yè)提交,計算和存儲資源分配;
[0023](2)、管理服務(wù)器同時管理和分離消息通迅和存儲服務(wù)網(wǎng)絡(luò),保證任務(wù)負(fù)載管理與存儲系統(tǒng)獨立,資源管理不受數(shù)據(jù)傳輸壓力影響;
[0024]以及,通過下述步驟和過程實現(xiàn)上述2)的任務(wù);
[0025](3)、指定高通量數(shù)據(jù)分析的軟件與執(zhí)行方式;
[0026](4)、指定待分析文件形式,自動形成批量作業(yè)任務(wù);
[0027](5)、統(tǒng)計計算量和資源比例;
[0028]以及,通過下述步驟和過程實現(xiàn)上述3)的任務(wù);
[0029](6)、基于MPICH2建立基于MPI消息通迅和任務(wù)隊列,并分析結(jié)點負(fù)載;
[0030](7)、通過MPI消息對低負(fù)載結(jié)點布署批量任務(wù);
[0031]以及,通過下述步驟和過程實現(xiàn)上述4)的任務(wù);
[0032](8)、基于Python Threading建立MPI消息任務(wù)隊列的任務(wù)的子線性;
[0033](9)、通過系統(tǒng)管道分析負(fù)載情況,通過Threading控制結(jié)點內(nèi)批量任務(wù)并發(fā)量;
[0034](10)、完成單次批量任務(wù)完成報告,返回MPI消息,返回負(fù)載情況,等待新任務(wù)。
[0035]本發(fā)明的優(yōu)點在于:
[0036]一、通過布署消息通迅和數(shù)據(jù)傳輸網(wǎng)絡(luò),將有限的高速網(wǎng)絡(luò)資源集中用于數(shù)據(jù)傳輸;
[0037]二、通過對消息通迅和數(shù)據(jù)傳輸?shù)挠布蛛x限制,確保通過基于消息通迅的調(diào)度系統(tǒng)不會因大量數(shù)據(jù)傳輸而延遲或中斷;
[0038]三、通過在集群和計算結(jié)點兩個層次進(jìn)行負(fù)載控制,減少通迅量,使非高速網(wǎng)絡(luò)同樣可以滿足消息通迅要求;
[0039]四、基于節(jié)點的負(fù)載監(jiān)聽可以產(chǎn)生批量的任務(wù)完成報告,有效控制不同任務(wù)的數(shù)據(jù)量和數(shù)據(jù)復(fù)雜性差異;
[0040]五、該系統(tǒng)以模板形式和文件為輸入產(chǎn)生批量任務(wù),可用于完成高通量組學(xué)數(shù)據(jù)自動化分析。
【附圖說明】
[0041]圖1示出本發(fā)明設(shè)計的簡化計算機(jī)集群構(gòu)架。
[0042]圖2示出本發(fā)明設(shè)計的調(diào)度系統(tǒng)工作流框架。
[0043]圖3示出本發(fā)明設(shè)計的自動分析作業(yè)生成程序。
[0044]圖4示出本發(fā)明設(shè)計的結(jié)點內(nèi)任務(wù)調(diào)度程序。
[0045]圖5示出本發(fā)明設(shè)計的集群內(nèi)任務(wù)調(diào)度程序。
【具體實施方式】
[0046]下面參照附圖用本發(fā)明的示例性實施例對本發(fā)明進(jìn)行更全面的描述及說明,但并不意味著本發(fā)明僅限于此。
[0047]實施例1
[0048]本發(fā)明提供的數(shù)據(jù)密集型計算集群調(diào)度系統(tǒng)包括下述步驟:
[0049]如圖1所示配置集群:
[0050]一、搭建計算機(jī)集群構(gòu)架,包括管理結(jié)點、計算結(jié)點和存儲結(jié)點,保證計算和存儲資源分離;
[0051 ] 二、在集群中布署獨立的消息通迅網(wǎng)絡(luò)和存儲傳輸網(wǎng)絡(luò),存儲傳輸網(wǎng)絡(luò)必須使用一組及或多組高速網(wǎng)絡(luò)設(shè)備;確促消息與存儲傳輸?shù)脑O(shè)備獨立;
[0052]如圖2所示完成調(diào)度系統(tǒng)的調(diào)度流程:
[0053]三、用戶登錄作業(yè)提交管理結(jié)點,建立分析軟件的命令模板,指定待分析的文件目錄和文件類型,產(chǎn)生所有作業(yè)任務(wù);如圖3run_analysis.sh中變量cmd所示;
[0054]四、用戶通過MPICH2程序,如圖4 runscripts,建立作業(yè)任務(wù)隊列,并管理結(jié)點間的任務(wù)調(diào)度runscripts在集群中可通過常用集群作業(yè)系統(tǒng)運行,提交作業(yè)任務(wù);如天河的 yhrun, slurm 的 srun 或 SGE 的 qsub 等;
[0055]五、計算結(jié)點中,應(yīng)用Python子線程管理,如圖5runscripts.py程序,通過runscripts調(diào)用并接受任務(wù)隊列信息,偵聽負(fù)載性情況,并產(chǎn)生并發(fā)的任務(wù)數(shù);
[0056]六、計算結(jié)點中runscirpts.py將作業(yè)完成情況返回任務(wù)調(diào)度管理程序,并申請新的任務(wù),直至所有作業(yè)完成。
[0057]應(yīng)當(dāng)說明的是:以上實施例僅用以說明本發(fā)明的技術(shù)方案而非對其限制,盡管參照上述實施例對本發(fā)明進(jìn)行了詳細(xì)的說明,所屬領(lǐng)域的普通技術(shù)人員應(yīng)當(dāng)理解:依然可以對本發(fā)明的【具體實施方式】進(jìn)行修改或者等同替換,而未脫離本發(fā)明精神和范圍的任何修改或者等同替換,其均應(yīng)涵蓋在本發(fā)明的權(quán)利要求范圍當(dāng)中。
【主權(quán)項】
1.一種基于高通量測序數(shù)據(jù)的計算機(jī)集群的作業(yè)調(diào)度系統(tǒng),其特征在于,其包括: 1)搭建計算機(jī)集群構(gòu)架,包括管理結(jié)點、計算結(jié)點和存儲結(jié)點;集群通迅由兩個以上獨立網(wǎng)絡(luò),包括一個消息通迅的以太網(wǎng)絡(luò)和一個以上存儲高速網(wǎng)絡(luò); 2)指定分析任務(wù)程序和數(shù)據(jù)文件形式,自動生成批量分析作業(yè)任務(wù); 3)通過消息傳遞偵聽集群計算結(jié)點負(fù)載狀態(tài),對低負(fù)載結(jié)點布署批量任務(wù); 4)在計算結(jié)點里,通過進(jìn)程通迅偵聽任務(wù)狀態(tài),根據(jù)指定負(fù)載要求控制任務(wù)量,并最終完成批量任務(wù)。2.一種基于權(quán)利要求1的作業(yè)調(diào)度系統(tǒng)調(diào)度的方法,其特征在于,其包括步驟: (1)、布署一臺管理服務(wù)器,管理集群的作業(yè)提交,計算和存儲資源分配; (2)、管理服務(wù)器同時管理和分離消息通迅和存儲服務(wù)網(wǎng)絡(luò),保證任務(wù)負(fù)載管理與存儲系統(tǒng)獨立,資源管理不受數(shù)據(jù)傳輸壓力影響。3.一種基于權(quán)利要求1或2的作業(yè)調(diào)度系統(tǒng)調(diào)度的方法,其特征在于,其還包括步驟: (3)、指定高通量數(shù)據(jù)分析的軟件與執(zhí)行方式; (4)、指定待分析文件形式,自動形成批量作業(yè)任務(wù); (5)、統(tǒng)計計算量和資源比例。4.一種基于權(quán)利要求1或2或3的作業(yè)調(diào)度系統(tǒng)調(diào)度的方法,其特征在于,其還包括步驟: (6)、基于MPICH2建立基于MPI消息通迅和任務(wù)隊列,并分析結(jié)點負(fù)載; (7)、通過MPI消息對低負(fù)載結(jié)點布署批量任務(wù)。5.一種基于權(quán)利要求1或2或3或4的作業(yè)調(diào)度系統(tǒng)調(diào)度的方法,其特征在于,其還包括步驟: (8)、基于PythonThreading建立MPI消息任務(wù)隊列的任務(wù)的子線性; (9)、通過系統(tǒng)管道分析負(fù)載情況,通過Threading控制結(jié)點內(nèi)批量任務(wù)并發(fā)量; (10)、完成單次批量任務(wù)完成報告,返回MPI消息,返回負(fù)載情況,等待新任務(wù)。
【專利摘要】本發(fā)明屬計算機(jī)領(lǐng)域,涉及一種基于高通量測序數(shù)據(jù)的計算機(jī)集群的作業(yè)調(diào)度系統(tǒng)。具體涉及針對高通量組學(xué)數(shù)據(jù)的數(shù)據(jù)密集性計算的集群作業(yè)調(diào)度系統(tǒng)。本發(fā)明中包括:搭建獨立的消息與儲存網(wǎng)絡(luò)構(gòu)架;指定分析軟件與輸入數(shù)據(jù);通過文件系統(tǒng)自動生成指定的分析作業(yè)任務(wù);通過消息傳遞偵聽集群計算結(jié)點負(fù)載狀態(tài),向結(jié)點布署批量任務(wù);在計算結(jié)點里,通過進(jìn)程通迅偵聽任務(wù)狀態(tài),根據(jù)指定負(fù)載要求控制任務(wù)量,并最終完成批量任務(wù)。該作業(yè)調(diào)度系統(tǒng)與現(xiàn)有技術(shù)相比,可以實現(xiàn)以大數(shù)據(jù)文件為主要輸入的高通量組學(xué)數(shù)據(jù)分析的任務(wù)自動化,減少結(jié)點間的消息通迅,并形成對數(shù)據(jù)密集型任務(wù)的多層次負(fù)載平衡,充分利用高速網(wǎng)絡(luò)資源進(jìn)行數(shù)據(jù)傳輸。
【IPC分類】G06F9/50, G06F9/48
【公開號】CN105468451
【申請?zhí)枴緾N201410409376
【發(fā)明人】趙琛, 郁穎, 慶濤, 石樂明
【申請人】復(fù)旦大學(xué)
【公開日】2016年4月6日
【申請日】2014年8月19日
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1