本發(fā)明涉及生物信息學(xué)技術(shù)領(lǐng)域,具體地,涉及二代測序dna突變檢測的生物信息學(xué)分析的方法及系統(tǒng)。
背景技術(shù):
生物信息學(xué)分析,用于二代測序數(shù)據(jù)的突變檢測,是通過一系列的生物信息分析,從上百萬條乃至更多的dna短序列測序數(shù)據(jù),檢測出可能造成某些生物學(xué)表型(遺傳病、腫瘤、藥物代謝等)的相關(guān)突變。主要方法是通過計算機軟硬件技術(shù),對樣本的測序獲得的大量dna的堿基序列進(jìn)行生物信息分析處理,從而得到與參考基因組不一致的位點以及這些位點的相關(guān)信息。
生物信息學(xué)從科研到生產(chǎn)應(yīng)用的過程中,需要對生物信息分析流程腳本和軟件進(jìn)行工程化改造,使其可靠性、可維護(hù)性、產(chǎn)品質(zhì)量穩(wěn)定性從手工作坊的水平提升至大規(guī)模并行化工業(yè)生產(chǎn)水準(zhǔn)。并更進(jìn)一步,實現(xiàn)從工業(yè)化到自動化,降低生產(chǎn)流水線人力需求、管理成本,減少生產(chǎn)環(huán)節(jié),提高生產(chǎn)效率。最后還要實現(xiàn)自動化到信息化,實現(xiàn)分布式計算加快產(chǎn)品部署、縮短分析周期;提供不同層級的信息共享和數(shù)據(jù)挖掘支持等。本發(fā)明就是一種專門為云計算這種特定的應(yīng)用場景設(shè)計的生物信息分析流程的系統(tǒng)和實施方法。
目前應(yīng)用的生物信息分析流程自動化系統(tǒng),國外開源軟件比如galaxy,國內(nèi)業(yè)界軟件比如華大云計算等。
其中g(shù)alaxy的設(shè)計與開發(fā)的主要目標(biāo)是為了適應(yīng)種類繁多、相互之間差異較大、不同類目的科學(xué)研究分析要求,因此在系統(tǒng)復(fù)雜度、軟件可靠性、計算性能上做出了較大的妥協(xié)。其特點是,將流程按照分析先后順序,分成了不同的模塊,每個模塊可配置性極高,但是整個系統(tǒng)的穩(wěn)定性和可維護(hù)性很低。對于基因組dna突變檢測的臨床生產(chǎn)應(yīng)用這種分析種類相對固定但穩(wěn)定性要求極高、可維護(hù)性要求中上的業(yè)務(wù)來說,并不適用。
華大云計算這一類的軟件,也是主要為了科研分析而設(shè)計的,與galaxy相比為了提高分析流程的穩(wěn)定性,降低出錯的幾率,是以極大的降低流程配置的靈活性為代價,來減少系統(tǒng)復(fù)雜度而達(dá)成的,每一個流程幾乎都是需要經(jīng)過專門針對該系統(tǒng)進(jìn)行過培訓(xùn)的專業(yè)人員單獨編寫的。然而對于基因組dna突變檢測的臨床生產(chǎn)應(yīng)用來說,生物信息分析模塊的可維護(hù)性要求較高,流程的建立和參數(shù)的調(diào)整,需要便捷而且可控的方式進(jìn)行。
技術(shù)實現(xiàn)要素:
針對現(xiàn)有技術(shù)中的缺陷,本發(fā)明的目的是提供一種二代測序dna突變檢測的生物信息學(xué)分析的方法及系統(tǒng)。
根據(jù)本發(fā)明提供的二代測序dna突變檢測的生物信息學(xué)分析的系統(tǒng),包括如下模塊:
生物信息分析模塊:用于提供滿足不同要求的生物分析流程,通過所述生物分析流程對生物信息進(jìn)行分析;
中間數(shù)據(jù)轉(zhuǎn)換模塊:用于對生物信息分析模塊產(chǎn)生的數(shù)據(jù)進(jìn)行格式轉(zhuǎn)換,提供符合要求的生物分析數(shù)據(jù)源;
運行環(huán)境配置模塊:用于配置不同生物分析流程運行時所有輸入文件、輸出文件、配置文件、數(shù)據(jù)文件、臨時文件、日志記錄、腳本及應(yīng)用程序的相對路徑或絕對路徑以及運行相關(guān)環(huán)境變量;其中,相對路徑是指相對于當(dāng)前工作路徑的文件路徑;絕對路徑是指:相對于操作系統(tǒng)根目錄的文件路徑。
優(yōu)選地,所述生物信息分析模塊包括:
檢測子模塊:用于檢查xml中參數(shù)和運行環(huán)境是否滿足要求;
分析代碼包裝子模塊:用于生成被包裝的生物信息數(shù)據(jù)分析代碼名稱以及輸入輸出格式,并合成命令行等待調(diào)度執(zhí)行。
優(yōu)選地,所述中間數(shù)據(jù)轉(zhuǎn)換模塊還用于調(diào)用對應(yīng)的中間數(shù)據(jù)轉(zhuǎn)換腳本或代碼,對指定類型的數(shù)據(jù)進(jìn)行數(shù)據(jù)格式轉(zhuǎn)換或信息抽提。
優(yōu)選地,所述運行環(huán)境配置模塊還用于讀取運行環(huán)境配置的xml文件,并初始化所有環(huán)境配置,具體地包括:創(chuàng)建文件夾、設(shè)置環(huán)境變量、拷貝必要數(shù)據(jù)。
根據(jù)本發(fā)明提供的二代測序dna突變檢測的生物信息學(xué)分析的方法,應(yīng)用上述中任一項所述的二代測序dna突變檢測的生物信息學(xué)分析的系統(tǒng),包括如下步驟:
步驟1:按照被包裝生物信息分析代碼的要求,撰寫對應(yīng)的xml配置文件,通過xml文件描述生物信息分析模塊的基本輸入輸出和運行參數(shù);
步驟2:通過jvm語言創(chuàng)建中間數(shù)據(jù)轉(zhuǎn)換模塊;
步驟3:通過xml文件描述生物信息分析流程運行環(huán)境配置,指定運行的環(huán)境變量、文件路徑。
優(yōu)選地,所述步驟1包括:通過組合參數(shù)、輸入輸出數(shù)據(jù)、包裝的代碼或腳本生成生物信息分析執(zhí)行方案。
優(yōu)選地,所述步驟2包括:通過中間數(shù)據(jù)轉(zhuǎn)換模塊直接獲取一個或多個輸入數(shù)據(jù),并產(chǎn)生一個或多個轉(zhuǎn)換結(jié)果。
根據(jù)本發(fā)明提供的二代測序dna突變檢測的生物信息學(xué)分析的方法,包括如下步驟:
基礎(chǔ)模塊搭建步驟:撰寫用于包裝生物信息分析基本單元的生物信息分析模塊配置文件,生物信息分析基本單元包括:生物信息分析代碼或腳本;并撰寫中間數(shù)據(jù)轉(zhuǎn)換模塊的代碼或腳本;
生物信息分析流程創(chuàng)建步驟:創(chuàng)建生物信息分析流程配置文件,按照生物信息分析模塊銜接需要,添加必要的中間數(shù)據(jù)轉(zhuǎn)換模塊,并根據(jù)生物信息分析模塊和中間數(shù)據(jù)轉(zhuǎn)換模塊配置必須的運行環(huán)境配置模塊。
優(yōu)選地,所述生物信息分析流程創(chuàng)建步驟中創(chuàng)建生物信息分析流程配置文件的方法如下:
1)定義生物信息分析模塊;
2)配置生物信息分析模塊的執(zhí)行順序、并行條件。
根據(jù)本發(fā)明提供的二代測序dna突變檢測的生物信息學(xué)分析的方法,應(yīng)用上述中任一項所述的二代測序dna突變檢測的生物信息學(xué)分析的系統(tǒng),包括如下步驟:
步驟1:檢查是否有滿足當(dāng)前提交的生物信息分析模塊或中間數(shù)據(jù)轉(zhuǎn)換模塊運行的執(zhí)行隊列;若滿足,則進(jìn)行步驟2;若不滿足,則返回狀態(tài)隊列錯誤;
步驟2:在對應(yīng)執(zhí)行隊列中添加當(dāng)前提交的生物信息分析模塊或中間數(shù)據(jù)轉(zhuǎn)換模塊;
步驟3:檢查執(zhí)行狀態(tài)以及返回結(jié)果;
步驟4:返回用戶執(zhí)行結(jié)果或錯誤信息。
根據(jù)本發(fā)明提供的生物信息分析系統(tǒng)和生物信息分析流程的構(gòu)建方法與現(xiàn)有技術(shù)相比,本發(fā)明具有如下的有益效果:
1、本發(fā)明中的方法和系統(tǒng)只針對dna突變檢測這一個具體生物信息分析流程進(jìn)行設(shè)計,避免引入不必要的功能,提高了系統(tǒng)的可維護(hù)性、穩(wěn)定性。
2、本發(fā)明中的方法把生物信息分析流程拆分成三種基本功能模塊:生物信息分析模塊、中間數(shù)據(jù)轉(zhuǎn)換模塊、運行環(huán)境配置模塊。在保證系統(tǒng)穩(wěn)定性的前提下,實現(xiàn)了流程搭建的靈活性最大化。
附圖說明
通過閱讀參照以下附圖對非限制性實施例所作的詳細(xì)描述,本發(fā)明的其它特征、目的和優(yōu)點將會變得更明顯:
圖1為本發(fā)明的方法流程圖;
圖2顯示了運行調(diào)度的具體流程;
圖3顯示了模塊執(zhí)行調(diào)度的具體流程;
圖4為本發(fā)明系統(tǒng)的模塊原理結(jié)構(gòu)類圖。
具體實施方式
下面結(jié)合具體實施例對本發(fā)明進(jìn)行詳細(xì)說明。以下實施例將有助于本領(lǐng)域的技術(shù)人員進(jìn)一步理解本發(fā)明,但不以任何形式限制本發(fā)明。應(yīng)當(dāng)指出的是,對本領(lǐng)域的普通技術(shù)人員來說,在不脫離本發(fā)明構(gòu)思的前提下,還可以做出若干變化和改進(jìn)。這些都屬于本發(fā)明的保護(hù)范圍。
根據(jù)本發(fā)明提供的二代測序dna突變檢測的生物信息學(xué)分析的系統(tǒng),包括如下模塊:
生物信息分析模塊:用于提供生物分析流程基本組成單元,完成生物信息分析基本功能;
中間數(shù)據(jù)轉(zhuǎn)換模塊:用于對生物信息分析模塊產(chǎn)生的數(shù)據(jù)進(jìn)行格式轉(zhuǎn)換,提供符合要求的生物分析數(shù)據(jù)源和結(jié)果;
運行環(huán)境配置模塊:用于配置不同生物分析流程運行時所有輸入文件、輸出文件、配置文件、數(shù)據(jù)文件、臨時文件、日志記錄、腳本及應(yīng)用程序的相對路徑或絕對路徑以及運行相關(guān)環(huán)境變量;其中,相對路徑是指相對于當(dāng)前工作路徑的文件路徑;絕對路徑是指:相對于操作系統(tǒng)根目錄的文件路徑。
所述生物信息分析模塊包括:
檢測子模塊:用于檢查xml中參數(shù)和運行環(huán)境是否滿足要求;
分析代碼包裝子模塊:用于包裝生物信息數(shù)據(jù)分析代碼或腳本、填充實際參數(shù)及輸入輸出,并拼接并合成命令行等待調(diào)度執(zhí)行。
所述中間數(shù)據(jù)轉(zhuǎn)換模塊還用于調(diào)用對應(yīng)的中間數(shù)據(jù)轉(zhuǎn)換腳本或代碼,對指定類型的數(shù)據(jù)進(jìn)行數(shù)據(jù)格式轉(zhuǎn)換或信息抽提。
所述運行環(huán)境配置模塊還用于讀取運行環(huán)境配置的xml文件,并初始化所有環(huán)境配置,具體地包括:創(chuàng)建文件夾、設(shè)置環(huán)境變量、拷貝必要數(shù)據(jù)等。
根據(jù)本發(fā)明提供的二代測序dna突變檢測的生物信息學(xué)分析的方法,包括如下步驟:
步驟1:按照被包裝生物信息分析代碼的要求,撰寫對應(yīng)的xml配置文件,通過該xml文件描述生物信息分析模塊的基本輸入輸出和運行參數(shù);
步驟2:通過jvm語言創(chuàng)建中間數(shù)據(jù)轉(zhuǎn)換模塊;
步驟3:按照所建立的生物信息分析流程的要求,撰寫對應(yīng)的xml配置文件,通過該xml文件描述生物信息分析流程運行環(huán)境配置,指定運行的環(huán)境變量、文件路徑。
所述步驟1包括:通過組合參數(shù)、輸入輸出數(shù)據(jù)、包裝的代碼或腳本生成生物信息分析執(zhí)行方案。
所述步驟2包括:通過中間數(shù)據(jù)轉(zhuǎn)換模塊直接獲取一個或多個輸入數(shù)據(jù),并產(chǎn)生一個或多個轉(zhuǎn)換結(jié)果。
本發(fā)明提供的二代測序dna突變檢測的生物信息學(xué)分析的方法,包括如下步驟:
基礎(chǔ)模塊搭建步驟:撰寫用于包裝生物信息分析基本單元的生物信息分析模塊配置文件,生物信息分析基本單元包括:生物信息分析代碼或腳本;并撰寫中間數(shù)據(jù)轉(zhuǎn)換模塊的代碼或腳本;
生物信息分析流程創(chuàng)建步驟:創(chuàng)建生物信息分析流程配置文件;按照生物信息分析模塊銜接需要,添加必要的中間數(shù)據(jù)轉(zhuǎn)換模塊;并根據(jù)生物信息分析模塊和中間數(shù)據(jù)轉(zhuǎn)換模塊,創(chuàng)建必須的運行環(huán)境配置模塊。
所述生物信息分析流程創(chuàng)建步驟中創(chuàng)建生物信息分析流程配置文件的方法如下:
1)列舉所有生物信息分析模塊;
2)定義生物信息分析模塊的執(zhí)行順序、并行條件。
圖1展示了本發(fā)明實例提供的一種基于二代測序的基因組dna突變檢測的生物信息學(xué)分析的方法的流程圖。包括:
s1:收到調(diào)用指定生物信息分析流程的外部指令
s2:在指定位置查找該流程配置的xml文件,并讀取該配置文件
s3:判斷當(dāng)前計算機軟硬件系統(tǒng)是否符合該生物信息分析流程的要求。如果符合要求,則進(jìn)入數(shù)據(jù)分析階段,按照流程的配置依次調(diào)用各種模塊,對數(shù)據(jù)進(jìn)行分析;反之則返回用戶流程執(zhí)行(失敗)狀態(tài)
s4:模塊的調(diào)度。后面通過圖2進(jìn)行詳細(xì)說明。
s5:循環(huán)檢查當(dāng)前流程是否所有模塊都執(zhí)行結(jié)束(無論成功與否),如未完成,則繼續(xù)執(zhí)行;如已完成則返回用戶流程執(zhí)行(成功/失敗)狀態(tài)。
圖2展示了本發(fā)明實例提供的模塊的調(diào)度流程圖。
s201:進(jìn)入模塊調(diào)度;
s202:檢查流程模塊列表中是否存在還沒有運行過的模塊,如果存在,按執(zhí)行順序選取同一并行級別下所有模塊;如果不存在,則模塊運行完畢,執(zhí)行最后一步s206返回。
s203:判斷當(dāng)前選中的所有模塊是否滿足如下條件:
1.所依賴的模塊是否都執(zhí)行完畢;
2.所依賴的數(shù)據(jù)或文件是否都已經(jīng)準(zhǔn)備就緒;
如果條件滿足,則執(zhí)行步驟s204;如果不滿足,則選取同一并行級別的其他模塊進(jìn)行判斷,直至所有模塊都執(zhí)行完畢;
s204:判斷上一步給出模塊,是否有滿足條件的執(zhí)行隊列接收,如果沒有,則將其返回給s203進(jìn)行繼續(xù)輪詢判斷,如果有,則放入執(zhí)行隊列;
s205:模塊的運行(后面通過圖3進(jìn)行詳細(xì)說明);
s206:返回每一個模塊的執(zhí)行狀態(tài)。
圖3展示了本發(fā)明實例提供的模塊的運行流程圖。
s301:進(jìn)入指定模塊運行;
s302:在指定位置查找該流程配置的xml文件,并讀取該配置文件;
s303:檢查當(dāng)前執(zhí)行環(huán)境是否滿足模塊運行需求,如果是,則執(zhí)行下一步的進(jìn)行數(shù)據(jù)分析;反之則返回用戶模塊執(zhí)行(失敗)狀態(tài);
s304:當(dāng)前模塊的數(shù)據(jù)分析;
s305:返回用戶流程執(zhí)行(成功/失敗)狀態(tài)。
圖4展示了本發(fā)明實例提供的一種基于二代測序的基因組dna突變檢測的生物信息學(xué)分析的系統(tǒng)的類圖。包括:生物信息分析模塊、中間數(shù)據(jù)轉(zhuǎn)換模塊、運行環(huán)境配置模塊、生物信息分析流程類模塊、平臺任務(wù)調(diào)度模塊;其中:
生物信息分析流程類模塊用于將生物信息分析模塊、中間數(shù)據(jù)轉(zhuǎn)換模塊組織成為完整的生物信息分析流程。
平臺任務(wù)調(diào)度模塊用于生物信息分析流程的調(diào)度執(zhí)行。
本領(lǐng)域技術(shù)人員知道,除了以純計算機可讀程序代碼方式實現(xiàn)本發(fā)明提供的系統(tǒng)及其各個裝置以外,完全可以通過將方法步驟進(jìn)行邏輯編程來使得本發(fā)明提供的系統(tǒng)及其各個裝置以邏輯門、開關(guān)、專用集成電路、可編程邏輯控制器以及嵌入式微控制器等的形式來實現(xiàn)相同功能。所以,本發(fā)明提供的系統(tǒng)及其各項裝置可以被認(rèn)為是一種硬件部件,而對其內(nèi)包括的用于實現(xiàn)各種功能的裝置也可以視為硬件部件內(nèi)的結(jié)構(gòu);也可以將用于實現(xiàn)各種功能的裝置視為既可以是實現(xiàn)方法的軟件模塊又可以是硬件部件內(nèi)的結(jié)構(gòu)。
以上對本發(fā)明的具體實施例進(jìn)行了描述。需要理解的是,本發(fā)明并不局限于上述特定實施方式,本領(lǐng)域技術(shù)人員可以在權(quán)利要求的范圍內(nèi)做出各種變化或修改,這并不影響本發(fā)明的實質(zhì)內(nèi)容。在不沖突的情況下,本申請的實施例和實施例中的特征可以任意相互組合。