[發明專利]一種基于Hadoop的基因序列并行比對方法在審
| 申請號: | 201910293732.7 | 申請日: | 2019-04-12 |
| 公開(公告)號: | CN110070911A | 公開(公告)日: | 2019-07-30 |
| 發明(設計)人: | 馮曉龍;高靜 | 申請(專利權)人: | 內蒙古農業大學 |
| 主分類號: | G16B20/30 | 分類號: | G16B20/30;G16B30/00 |
| 代理公司: | 成都信博專利代理有限責任公司 51200 | 代理人: | 王沙沙 |
| 地址: | 010010 內蒙古自*** | 國省代碼: | 內蒙古;15 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 基因序列 比對 分區數據 工作節點 并行 分布式計算環境 格式化 比對算法 并行計算 參考序列 基因對比 基因數據 計算效率 結果文件 任務腳本 數據文件 讀入 多路 分發 存儲 分區 輸出 傳遞 合并 部署 統一 | ||
1.一種基于Hadoop的基因序列并行比對方法,其特征在于,包括以下步驟:
步驟1:在Hadoop集群中,將基因對比軟件、參考序列和任務腳本部署到各工作節點,短讀序列存儲到HDFS中;
步驟2:采用多路輸入的方法進行數據輸入,同時讀入多個數據文件,形成以位置偏移量為key,序列內容為value的鍵值對;
步驟3:在Map函數中對輸入的鍵值對進行所屬端的標記;
步驟4:通過分區算法按照鍵值對中的key值對數據進行分區,分區數據分發到Hadoop集群的工作節點上,一個數據分區對應一個工作節點;
步驟5:在Reduce函數中通過多路輸出的方法將分區數據本地化然后傳遞給比對算法,在各工作節點上分別調用比對算法;實現各數據分區的分布式計算;
步驟6:收集分布到各節點上的結果文件,合并統一后存儲于HDFS中,即完成基因序列的比對。
2.根據權利要求1所述的一種基于Hadoop的基因序列并行比對方法,其特征在于,所述步驟2輸入過程中對數據文件中的短讀序列進行格式化讀取,方法如下:
定義用于基因格式化輸入的類,在該類中包含用于創建基因記錄的方法;
定義基因記錄類,用于對基因記錄格式的抽象和基因記錄的格式化讀取;
定義用于緩存控制的類,使Hadoop中緩存控制機制適應基因記錄的格式化讀取;緩存控制機制由基因記錄格式化讀取方法觸發;
定義基因數據讀取的輔助類,用于配合新的緩存控制機制協同工作。
3.根據權利要求2所述的一種基于Hadoop的基因序列并行比對方法,其特征在于,所述數據讀取過程采用的基因記錄的格式化讀取方法如下:
S11:初始化變量;
S12:累積讀取數據行,判斷數據行是否為有效行;若是則提取新行特征并更新舊行內容;否則轉入步驟S13;
S13:判斷是否符合基因記錄的首行特征,若是則更改緩存清空標記,否則轉入步驟S14;
S14:判斷是否符合基因記錄的尾行特征,若是則單條基因記錄讀取完畢;否則轉入步驟S12。
4.根據權利要求2所述的一種基于Hadoop的基因序列并行比對方法,其特征在于,所述數據讀取過程采用的基因記錄的格式化讀取方法如下:
循環讀取指定行數的數據行作為一條基因記錄,在此過程中記錄首行讀取前更新緩存,記錄首行讀取后停止更新緩存,直至一條基因記錄的所有數據行讀取完畢。
5.根據權利要求1所述的一種基于Hadoop的基因序列并行比對方法,其特征在于,所述步驟2中的基因序列的多路輸入通過Hadoop中的FileInputFormat類實現,通過其提供的addInputPath將輸入文件的多個路徑以數組的形式傳入。
6.根據權利要求1所述的一種基于Hadoop的基因序列并行比對方法,其特征在于,所述步驟3中的Map函數如下:
S21:輸入鍵值對(key,value);
S22:判斷value是否為雙端序列;若是則轉入步驟S23,若否則轉入步驟S24;
S23:判斷value是否為左端序列,若是則為value添加左端標記,若否則添加右端標記;
S24:對value不做標記;
S25:輸出標記完成的鍵值對。
7.根據權利要求1所述的一種基于Hadoop的基因序列并行比對方法,其特征在于,所述步驟4中數據分區按照以下過程進行:
通過輸入文件的大小和數據分區的數量將位置偏移量等分為與節點數量相等的區間段,以鍵值對中的key值所屬區間段確定其數據分區編號;對數據混洗、排序、分組,具有相同key值的鍵值對被分配到同一數據分區。
8.根據權利要求1所述的一種基于Hadoop的基因序列并行比對方法,其特征在于,所述步驟5中Reduce函數如下:
S31:遍歷步驟4中的value集合;
S32:判斷value是否具有雙端序列標記,若否則將其寫入本地文件;若是則轉入步驟S33;
S33:value是否具有右端標記,若是則將其多路輸出至右端文件,若否則將其多路輸出至左端文件;
S34:判斷是否value集合遍歷完畢,若否則轉入步驟S32,若是則結束遍歷。
S35:所有集合遍歷完畢后,在工作節點啟動基因比對任務。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于內蒙古農業大學,未經內蒙古農業大學許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201910293732.7/1.html,轉載請聲明來源鉆瓜專利網。





