本發(fā)明屬于生物信息工程領(lǐng)域,涉及生物信息技術(shù)和計(jì)算機(jī)應(yīng)用技術(shù),具體地說(shuō),涉及生物信息分析任務(wù)運(yùn)行監(jiān)控系統(tǒng)。
背景技術(shù):
隨著高通量測(cè)序技術(shù)的不斷發(fā)展,生物數(shù)據(jù)的產(chǎn)出速度變得很快,據(jù)統(tǒng)計(jì),全世界二代測(cè)序技術(shù)的數(shù)據(jù)產(chǎn)出速度為每年13Pbp,并且還在不斷加速中,生物信息學(xué)研究已經(jīng)正式進(jìn)入大數(shù)據(jù)時(shí)代。生物信息分析除了需要大量的計(jì)算資源之外,本身是一個(gè)非常復(fù)雜的過(guò)程。因此,大部分科研工作者會(huì)選擇將成熟的分析需求交由專(zhuān)業(yè)的生物信息分析公司進(jìn)行,分為多個(gè)分析過(guò)程。在每個(gè)分析過(guò)程完成之后,需要工作人員將結(jié)果帶至下一過(guò)程的分析設(shè)備處進(jìn)行分析,從而使得整個(gè)分析過(guò)程太過(guò)繁瑣。而且,分析完成后,用戶會(huì)得到一份紙質(zhì)的或word版的結(jié)題報(bào)告,用戶任務(wù)的界面體驗(yàn)較差。另外,現(xiàn)有技術(shù)缺少對(duì)分析過(guò)程的監(jiān)控,使得相關(guān)人員無(wú)法獲知分析任務(wù)的狀態(tài)。
技術(shù)實(shí)現(xiàn)要素:
針對(duì)現(xiàn)有技術(shù)的缺陷,本發(fā)明提供一種生物信息分析任務(wù)運(yùn)行監(jiān)控系統(tǒng)。
本發(fā)明實(shí)施例提出一種生物信息分析任務(wù)運(yùn)行監(jiān)控系統(tǒng),包括:
WEB圖形化用戶界面模塊、任務(wù)準(zhǔn)備投遞模塊、任務(wù)掃描監(jiān)控模塊、任務(wù)推送反饋模塊;其中,
所述WEB圖形化用戶界面模塊,用于實(shí)時(shí)呈現(xiàn)任務(wù)的運(yùn)行相關(guān)信息,并供用戶選擇任務(wù)參數(shù),進(jìn)行任務(wù)投遞;
所述任務(wù)準(zhǔn)備投遞模塊,用于將用戶通過(guò)所述WEB圖形化用戶界面模塊投遞的任務(wù)放入投遞隊(duì)列,通過(guò)隊(duì)列調(diào)度將所述投遞隊(duì)列中的任務(wù)投遞到預(yù)設(shè)的任務(wù)運(yùn)行集群中運(yùn)行,并在預(yù)設(shè)的數(shù)據(jù)庫(kù)中記錄所述投遞隊(duì)列中的任務(wù)的運(yùn)行相關(guān)信息,將所述運(yùn)行相關(guān)信息實(shí)時(shí)推送至所述WEB圖形化用戶界面模塊進(jìn)行呈現(xiàn);
所述任務(wù)掃描監(jiān)控模塊,用于將投遞到所述任務(wù)運(yùn)行集群中的任務(wù)放入掃描隊(duì)列,通過(guò)隊(duì)列調(diào)度對(duì)所述掃描隊(duì)列中的任務(wù)的運(yùn)行狀態(tài)進(jìn)行監(jiān)控,將運(yùn)行完畢的任務(wù)放入推送隊(duì)列,并在所述數(shù)據(jù)庫(kù)中記錄所述掃描隊(duì)列中的任務(wù)的運(yùn)行相關(guān)信息,選擇部分信息實(shí)時(shí)推送至所述WEB圖形化用戶界面模塊進(jìn)行呈現(xiàn);
所述任務(wù)推送反饋模塊,用于通過(guò)隊(duì)列調(diào)度將所述推送隊(duì)列中成功運(yùn)行完畢的任務(wù)的運(yùn)行結(jié)果推送給所述WEB圖形化用戶界面模塊進(jìn)行呈現(xiàn)。
本發(fā)明實(shí)施例提供的生物信息分析任務(wù)運(yùn)行監(jiān)控系統(tǒng),用戶可以通過(guò)WEB圖形化用戶界面模塊進(jìn)行任務(wù)投遞,便于無(wú)信息學(xué)、計(jì)算機(jī)語(yǔ)言儲(chǔ)備知識(shí)的使用者直觀操作,在任務(wù)投遞后,通過(guò)所述任務(wù)準(zhǔn)備投遞模塊將任務(wù)投遞到預(yù)設(shè)的任務(wù)運(yùn)行集群中運(yùn)行,通過(guò)所述任務(wù)掃描監(jiān)控模塊監(jiān)控任務(wù)的運(yùn)行狀態(tài),并通過(guò)所述任務(wù)推送反饋模塊將成功運(yùn)行完畢的任務(wù)的運(yùn)行結(jié)果推送給所述WEB圖形化用戶界面模塊進(jìn)行呈現(xiàn),能夠?qū)崿F(xiàn)任務(wù)的一鍵投遞、全自動(dòng)運(yùn)行,而且所述任務(wù)準(zhǔn)備投遞模塊、任務(wù)掃描監(jiān)控模塊和任務(wù)推送反饋模塊會(huì)將任務(wù)的運(yùn)行相關(guān)信息實(shí)時(shí)推送至所述WEB圖形化用戶界面模塊進(jìn)行呈現(xiàn),便于用戶查看運(yùn)行相關(guān)信息,實(shí)現(xiàn)任務(wù)的全程監(jiān)控。
附圖說(shuō)明
圖1為本發(fā)明生物信息分析任務(wù)運(yùn)行監(jiān)控系統(tǒng)一實(shí)施例的結(jié)構(gòu)示意圖;
圖2為本發(fā)明生物信息分析任務(wù)運(yùn)行監(jiān)控系統(tǒng)另一實(shí)施例所涉及的部分流程示意圖;
圖3為本發(fā)明生物信息分析任務(wù)運(yùn)行監(jiān)控系統(tǒng)又一實(shí)施例所涉及的部分流程示意圖;
圖4為本發(fā)明生物信息分析任務(wù)運(yùn)行監(jiān)控系統(tǒng)又一實(shí)施例所涉及的部分流程示意圖。
具體實(shí)施方式
為使本發(fā)明實(shí)施例的目的、技術(shù)方案和優(yōu)點(diǎn)更加清楚,下面將結(jié)合本發(fā)明實(shí)施例中的附圖,對(duì)本發(fā)明實(shí)施例中的技術(shù)方案進(jìn)行清楚地描述,顯然,所描述的實(shí)施例是本發(fā)明一部分實(shí)施例,而不是全部的實(shí)施例?;诒景l(fā)明中的實(shí)施例,本領(lǐng)域普通技術(shù)人員在沒(méi)有做出創(chuàng)造性勞動(dòng)前提下所獲得的所有其他實(shí)施例,都屬于本發(fā)明保護(hù)的范圍。
參看圖1,本實(shí)施例公開(kāi)一種生物信息分析任務(wù)運(yùn)行監(jiān)控系統(tǒng),包括:
WEB圖形化用戶界面模塊1、任務(wù)準(zhǔn)備投遞模塊2、任務(wù)掃描監(jiān)控模塊3、任務(wù)推送反饋模塊4;其中,
所述WEB圖形化用戶界面模塊1,用于實(shí)時(shí)呈現(xiàn)任務(wù)的運(yùn)行相關(guān)信息,并供用戶選擇任務(wù)參數(shù),進(jìn)行任務(wù)投遞;
具體地,所述WEB圖形化用戶界面模塊1可以采用jsp+javascript/jqury技術(shù)開(kāi)發(fā),所述運(yùn)行相關(guān)信息可以包括任務(wù)的詳情、運(yùn)行狀態(tài)、運(yùn)行日志、事件信息以及運(yùn)行結(jié)果信息。所述任務(wù)參數(shù)具體可以包括導(dǎo)入的任務(wù)原始數(shù)據(jù)文件、運(yùn)行結(jié)果路徑、腳本參數(shù)等等。例如如下的部分參數(shù)列表:
{"expectedTime":"2016-02-1918:50:09","inputFileList":"+a/liug/aa a.fasta","outputPath":"+a/liug/tools/a20160219182009","taskType":"soft","taskPutType":"qsub","executeJobName":"a20160219182009","shellC ode:"share/nas2/genome/toolkits/fa_toolsCxS.pl-t S–i+a/liug/aaa.fasta–o+a/liug/tools/a20160219182009/aaa.fasta_fasta_lower.fasta","userCla ss":"silver_user","permData":{"s":1}}
每個(gè)參數(shù)都有自己的含義,expectedTime表示任務(wù)預(yù)期完成時(shí)間,inputFileList表示輸入文件,outputPath表示任務(wù)輸出路徑,taskType表示該分析任務(wù)類(lèi)型(soft代表運(yùn)行時(shí)間較短,占用資源較少,功能較單一的任務(wù)project代表運(yùn)行時(shí)間較長(zhǎng),占用資源較大,流程完整的一套分析任務(wù)),taskPutType任務(wù)的投遞類(lèi)型(qsub代表需要申請(qǐng)資源來(lái)運(yùn)行該任務(wù),ssh代表之際在頭節(jié)點(diǎn)上運(yùn)行該任務(wù),不需要申請(qǐng)計(jì)算資源,一般用于計(jì)算量極小的任務(wù)),executeJobName任務(wù)名稱(chēng),shellCode代表該任務(wù)的原始執(zhí)行腳本,userClass代表用戶等級(jí),permData表示任務(wù)所需資源,其后括號(hào)中的“"s":1”表示s型號(hào)的資源申請(qǐng)1個(gè)。
另外,需要說(shuō)明的是,所述WEB圖形化用戶界面模塊通過(guò)restFul接口供用戶進(jìn)行啟動(dòng)、任務(wù)投遞、終止、暫停、繼續(xù)操作,實(shí)現(xiàn)用戶對(duì)任務(wù)的管理。對(duì)于終止操作,會(huì)將相應(yīng)的任務(wù)的運(yùn)行過(guò)程終止;對(duì)于暫停操作,則會(huì)將相應(yīng)的任務(wù)的運(yùn)行過(guò)程掛起,當(dāng)用戶選擇繼續(xù)操作后,則恢復(fù)相應(yīng)的任務(wù)的運(yùn)行。
所述任務(wù)準(zhǔn)備投遞模塊2,用于將用戶通過(guò)所述WEB圖形化用戶界面模塊1投遞的任務(wù)放入投遞隊(duì)列,通過(guò)隊(duì)列調(diào)度將所述投遞隊(duì)列中的任務(wù)投遞到預(yù)設(shè)的任務(wù)運(yùn)行集群中運(yùn)行,并在預(yù)設(shè)的數(shù)據(jù)庫(kù)中記錄所述投遞隊(duì)列中的任務(wù)的運(yùn)行相關(guān)信息,將所述運(yùn)行相關(guān)信息實(shí)時(shí)推送至所述WEB圖形化用戶界面模塊1進(jìn)行呈現(xiàn);
在具體實(shí)施例中,任務(wù)準(zhǔn)備投遞模塊2所涉及的流程可以參照?qǐng)D2所示,對(duì)于用戶投遞的任務(wù),任務(wù)準(zhǔn)備投遞模塊2會(huì)維護(hù)一個(gè)投遞隊(duì)列,將所述用戶投遞的任務(wù)放到該隊(duì)列中,同時(shí),任務(wù)準(zhǔn)備投遞模塊2會(huì)定時(shí)遍歷所述投遞隊(duì)列中的任務(wù),對(duì)于遍歷到的每個(gè)任務(wù),根據(jù)對(duì)應(yīng)的任務(wù)參數(shù),對(duì)該任務(wù)進(jìn)行任務(wù)腳本組裝,為該任務(wù)準(zhǔn)備資源,在資源到位后,運(yùn)行相應(yīng)腳本將其投遞到所述任務(wù)運(yùn)行集群中運(yùn)行,并將所述投遞到預(yù)設(shè)的任務(wù)運(yùn)行集群中的任務(wù)從所述投遞隊(duì)列中移除。另外,需要說(shuō)明的是,對(duì)于每一個(gè)用戶帳戶,任務(wù)準(zhǔn)備投遞模塊2可以為該帳戶分配一個(gè)頭節(jié)點(diǎn)以進(jìn)行資源分配。此外,任務(wù)準(zhǔn)備投遞模塊2會(huì)在預(yù)設(shè)的數(shù)據(jù)庫(kù)中記錄投遞所述投遞隊(duì)列中的任務(wù)的運(yùn)行相關(guān)信息,將所述運(yùn)行相關(guān)信息實(shí)時(shí)推送至所述WEB圖形化用戶界面模塊1進(jìn)行呈現(xiàn)。其中,所述運(yùn)行相關(guān)信息包括任務(wù)詳情、任務(wù)運(yùn)行狀態(tài)、運(yùn)行日志以及事件記錄信息。進(jìn)入投遞隊(duì)列的任務(wù)的運(yùn)行狀態(tài)為投遞階段,投遞到所述任務(wù)運(yùn)行集群中的任務(wù)的運(yùn)行狀態(tài)為掃描階段。
所述任務(wù)掃描監(jiān)控模塊3,用于將投遞到所述任務(wù)運(yùn)行集群中的任務(wù)放入掃描隊(duì)列,通過(guò)隊(duì)列調(diào)度對(duì)所述掃描隊(duì)列中的任務(wù)的運(yùn)行狀態(tài)進(jìn)行監(jiān)控,將運(yùn)行完畢的任務(wù)放入推送隊(duì)列,并在所述數(shù)據(jù)庫(kù)中記錄所述掃描隊(duì)列中的任務(wù)的運(yùn)行相關(guān)信息,選擇部分信息實(shí)時(shí)推送至所述WEB圖形化用戶界面模塊1進(jìn)行呈現(xiàn);
在具體實(shí)施例中,任務(wù)掃描監(jiān)控模塊3所涉及的部分流程可以參照?qǐng)D3所示,所述任務(wù)掃描監(jiān)控模塊3,具體用于定時(shí)遍歷所述掃描隊(duì)列中的任務(wù),對(duì)于遍歷到的每個(gè)任務(wù),獲取該任務(wù)的運(yùn)行狀態(tài),若所述運(yùn)行狀態(tài)顯示該任務(wù)運(yùn)行完畢,則將該任務(wù)從所述掃描隊(duì)列中移除,放入推送隊(duì)列。之后,任務(wù)掃描監(jiān)控模塊3會(huì)判斷該任務(wù)是否是所述掃描隊(duì)列中的最后一個(gè)任務(wù),若是所述掃描隊(duì)列中的最后一個(gè)任務(wù),則判斷用戶是否有其它任務(wù)正在運(yùn)行,若用戶沒(méi)有其它任務(wù)正在運(yùn)行,則回收為用戶投遞的任務(wù)分配的資源。而若所述運(yùn)行狀態(tài)顯示該任務(wù)未運(yùn)行完畢,則將該任務(wù)放回掃描隊(duì)列,等待下次掃描。需要說(shuō)明的是,對(duì)于一個(gè)任務(wù),該任務(wù)運(yùn)行完畢包括兩種情況:第一種情況是該任務(wù)成功運(yùn)行完畢,另一種情況是該任務(wù)運(yùn)行錯(cuò)誤。對(duì)于正在運(yùn)行和成功運(yùn)行完畢的任務(wù),任務(wù)掃描監(jiān)控模塊3會(huì)在所述數(shù)據(jù)庫(kù)中記錄這些任務(wù)的運(yùn)行相關(guān)信息,并將除成功運(yùn)行完畢的任務(wù)的運(yùn)行結(jié)果外的信息實(shí)時(shí)推送給所述WEB圖形化用戶界面模塊1進(jìn)行呈現(xiàn)。其中,運(yùn)行相關(guān)信息包括任務(wù)詳情、任務(wù)運(yùn)行狀態(tài)、運(yùn)行日志以及事件記錄信息。正在運(yùn)行的任務(wù)的運(yùn)行狀態(tài)為正在運(yùn)行,進(jìn)入推送隊(duì)列的任務(wù)的運(yùn)行狀態(tài)為推送階段。對(duì)于運(yùn)行錯(cuò)誤的任務(wù),任務(wù)掃描監(jiān)控模塊3會(huì)在所述數(shù)據(jù)庫(kù)中記錄該任務(wù)的運(yùn)行相關(guān)信息,并將該任務(wù)的運(yùn)行相關(guān)信息推送給管理員,以使管理員采取相應(yīng)的處理措施,確保該任務(wù)重新運(yùn)行成功。
所述任務(wù)推送反饋模塊4,用于通過(guò)隊(duì)列調(diào)度將所述推送隊(duì)列中成功運(yùn)行完畢的任務(wù)的運(yùn)行結(jié)果推送給所述WEB圖形化用戶界面模塊1進(jìn)行呈現(xiàn)。
在具體實(shí)施例中,所述任務(wù)推送反饋模塊4所涉及的流程可以參照?qǐng)D4所示,所述任務(wù)推送反饋模塊4,具體用于定時(shí)遍歷所述推送隊(duì)列中的任務(wù),對(duì)于遍歷到的每個(gè)任務(wù),判斷該任務(wù)是否成功運(yùn)行完畢,若成功運(yùn)行完畢,則將該任務(wù)的運(yùn)行結(jié)果推送給所述WEB圖形化用戶界面模塊1進(jìn)行呈現(xiàn),否則,若運(yùn)行錯(cuò)誤,則向管理員發(fā)送通知消息,以使管理員采取相應(yīng)的處理措施,確保該任務(wù)重新運(yùn)行成功。此外,需要說(shuō)明的是,所述任務(wù)推送反饋模塊4會(huì)在所述數(shù)據(jù)庫(kù)中記錄所述推送隊(duì)列中的任務(wù)的運(yùn)行相關(guān)信息,將成功運(yùn)行完畢的任務(wù)的運(yùn)行結(jié)果推送給所述WEB圖形化用戶界面模塊1進(jìn)行呈現(xiàn),而將運(yùn)行錯(cuò)誤的任務(wù)的運(yùn)行相關(guān)信息作為通知消息的內(nèi)容發(fā)送給管理員。
本發(fā)明實(shí)施例提供的生物信息分析任務(wù)運(yùn)行監(jiān)控系統(tǒng),用戶可以通過(guò)WEB圖形化用戶界面模塊進(jìn)行任務(wù)投遞,便于無(wú)信息學(xué)、計(jì)算機(jī)語(yǔ)言儲(chǔ)備知識(shí)的使用者直觀操作,在任務(wù)投遞后,通過(guò)所述任務(wù)準(zhǔn)備投遞模塊將任務(wù)投遞到預(yù)設(shè)的任務(wù)運(yùn)行集群中運(yùn)行,通過(guò)所述任務(wù)掃描監(jiān)控模塊監(jiān)控任務(wù)的運(yùn)行狀態(tài),并通過(guò)所述任務(wù)推送反饋模塊將成功運(yùn)行完畢的任務(wù)的運(yùn)行結(jié)果推送給所述WEB圖形化用戶界面模塊進(jìn)行呈現(xiàn),能夠?qū)崿F(xiàn)任務(wù)的一鍵投遞、全自動(dòng)運(yùn)行,而且所述任務(wù)準(zhǔn)備投遞模塊、任務(wù)掃描監(jiān)控模塊和任務(wù)推送反饋模塊會(huì)將任務(wù)的運(yùn)行相關(guān)信息實(shí)時(shí)推送至所述WEB圖形化用戶界面模塊進(jìn)行呈現(xiàn),便于用戶查看運(yùn)行相關(guān)信息,實(shí)現(xiàn)任務(wù)的全程監(jiān)控。
雖然結(jié)合附圖描述了本發(fā)明的實(shí)施方式,但是本領(lǐng)域技術(shù)人員可以在不脫離本發(fā)明的精神和范圍的情況下做出各種修改和變型,這樣的修改和變型均落入由所附權(quán)利要求所限定的范圍之內(nèi)。