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

基因組核酸片段數量的快速計數算法

文檔序號:6638134閱讀:739來源:國知局
基因組核酸片段數量的快速計數算法【專利摘要】本發(fā)明公開了一種快速統(tǒng)計基因組核酸片段數量的算法。該算法針對基因組核酸片段高倍數的特點,將不同的核酸片段合理地分配到內存和硬盤。該算法總是優(yōu)先將倍數最高的一些核酸片段放置于內存中,而將倍數較低的核酸片段存儲在硬盤上。通過本發(fā)明提出的算法,任何基因組核酸片段數量的計數都可在有限內存的限制下完成?!緦@f明】基因組核酸片段數量的快速計數算法【
技術領域
】[0001]本研究主要涉及到生物信息數據處理,生物大數據挖掘,基因組分析與全基因組拼接?!?br>背景技術
】[0002]k-mer,即為kilomer,指的是將一條基因序列,連續(xù)切割,挨個堿基劃動得到的一序列長度為K的核苷酸片段。在生物信息學項目的研究中,對k-核酸片段的計量是解讀基因組信息的重要環(huán)節(jié),我們可以通過k-核酸片段了解到基因組的大小,深度,頻率,同時,k_核酸片段計量廣泛應用于基因組拼裝拼接,評估基因組測序覆蓋度,測序數據的糾錯,多序列比對,重復序列檢測等研究中。[0003]近年來,隨著生物信息學的發(fā)展,國外研究出了一些此類算法,如Jellyfish,BFCounter等。Jellyfish,-種已有的k-核酸片段計量算法,采用了并行無鎖哈希表(lock-freehashtable)數據結構,在速率上比較高效,但需要非常大的內存和硬盤空間(在處理160G的人類基因組數據需要70G內存和21IG硬盤),這嚴重阻礙了在沒有小型機等大型計算設備的普通實驗室環(huán)境下的數據處理。BFCounter,采用概率型數據結構Bloom_filter,使其不需要硬盤操作,完全使用內存即可實現計量。但其消耗內存過大(處理上述數據需要56G內存),而且速率過慢(處理上述數據時間超過40小時)所以,在有限的內存和硬盤空間限制下,尚未有可合理權衡上述要求的高效算法。同時,在數據處理中,現有方法并沒有深刻發(fā)掘基因組本身信息,如頻率,深度,而這些信息可以幫助我們去合理處理重復基因和錯誤基因,從而極大的提升算法效率?!?br/>發(fā)明內容】[0004]本發(fā)明是為了解決現有技術中的問題,而提供了一種快速、低內存需求、低硬盤需求的k-核酸片段S計量算法。[0005]本發(fā)明為解決公知技術中存在的技術問題所采用的技術方案包括:合理分配內存和硬盤空間,采用合理的數據結構來表示k_核酸片段s,優(yōu)化k_核酸片段s的索引結構和排序。算法具體步驟如下:[0006]1)讀取原始數據文件,設定參數,包括要統(tǒng)計k-核酸片段的長度k,限定硬盤空間D(bits),內存空間M(bits),數據深度(depth)。[0007]2)遍歷數據文件一次,將文件利用位運算壓縮成二進制,并且建立長度為8-核酸片段的索引index。同時,獲得k-核酸片段的總個數【權利要求】1.一種快速統(tǒng)計基因組核酸片段數量的算法,該方法可在有限內存的限制條件下完成核酸片段數量的統(tǒng)計。本發(fā)明總是優(yōu)先將高倍數的核酸片段放置于內存,而將低倍數的核酸不斷移除到硬盤中。通過不斷排序與迭代上述過程,盡可能地提高在內存中計算的比例。其期特征在于,(1)讀取原始數據文件,設定參數,包括要統(tǒng)計k-核酸片段(表示長度為k的核酸片段)的長度k,限定硬盤空間D(bits),內存空間M(bits),數據深度(depth)。(2)遍歷數據文件一次,將文件利用位運算壓縮成二進制,并且建立長度為8-核酸片段的索引index。同時,獲得k-核酸片段的總個數N。(3)劃分迭代次數和k-核酸片段區(qū)段。(4)遍歷8-核酸片段索引一次,等量分配每一個區(qū)段內的k-核酸片段個數。(5)按照不同的數據結構初始化兩種存儲存儲空間,分配在內存,硬盤中,用于存儲和計算k-核酸片段。(6)根據迭代順序開始計量工作。(7)按照索引區(qū)index[i](ie(劃分段)讀取壓縮文件至內存R,直到內存R使用量達到設定內存空間的40%為止。(8)快速排序已存于R的k-核酸片段,并合并相同的k-核酸片段,進行計量,得出的結果存儲于Lx(xG1,2,3..)中。(9)迭代7,8操作,直到已使用內存超過60%。合并LI...n中的k-核酸片段,并且建立次數索引(10)遍歷已統(tǒng)計的k-核酸片段,根據基因組的深度劃分正確基因和錯誤基因,將重復次數少的寫入硬盤,次數多的保存在內存Lx中。每次寫入硬盤的文件必須按照劃分段來標記,同時,通過遍歷索引找到相應的k-核酸片段寫入的最低次數,保證寫入k-核酸片段至硬盤必須釋放60%的內存。(11)迭代7-10操作,直到所有文件讀完。(12)此時所有的k-核酸片段都已經存儲于內存(計量次數多的k-核酸片段)和硬盤(次數少的k-核酸片段)中。根據劃分段,將內存和硬盤中處于同一區(qū)段的k-核酸片段進行合并排序,合并排序的順序遵循哈弗曼編碼方法。(13)完成所有的迭代次數,完成計量工作?!疚臋n編號】G06F19/24GK104361264SQ201410757812【公開日】2015年2月18日申請日期:2014年12月11日優(yōu)先權日:2014年12月11日【發(fā)明者】陳科,黃煥舟,厲國強申請人:天津工業(yè)大學
網友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1