為什么上傳GEO前需要校驗(yàn)fastq文件正確性,并使用md5值驗(yàn)證文件完整性?
GEO數(shù)據(jù)庫
Gene Expression Omnibus(GEO)是美國NCBI開發(fā)的一個大型綜合數(shù)據(jù)庫,它存儲了超過500萬個樣品的芯片/測序原始數(shù)據(jù)文件。因?yàn)閿?shù)據(jù)一般可公開獲得且免費(fèi)使用,所以GEO已經(jīng)成為生物醫(yī)學(xué)研究者最喜愛的網(wǎng)站之一。芯片或/和測序原始數(shù)據(jù)上傳GEO,分配GEO號,以保證數(shù)據(jù)的可重復(fù)性,幾乎是發(fā)文必備。
圖1. GEO數(shù)據(jù)庫
Fastq文件
Fastq文件是二代測序的下機(jī)原始文件,以文本文件格式存儲了每條測序read的堿基和測序質(zhì)量分?jǐn)?shù)。如圖2所示:每4行為一條read,第一行以@開頭,描述了測序儀編號、flowcell號,lane號,tile號,cluster的X/Y坐標(biāo)等信息;第二行為所測read的堿基;第三行為其他描述信息,一般為+;第4行為堿基質(zhì)量分?jǐn)?shù)。
圖2. Fastq文件格式
校驗(yàn)Fastq文件正確性及驗(yàn)證文件完整性
隨著測序成本的降低和讀長的增加,一次測序往往產(chǎn)生數(shù)億條reads,導(dǎo)致fastq文件越來越大,每個文件高達(dá)幾GB甚至幾十GB。這么大的數(shù)據(jù)一般通過網(wǎng)絡(luò)或者快遞硬盤傳輸,然而由于網(wǎng)絡(luò)延遲、中斷,硬盤讀寫、插拔等非人為或者人為原因,會造成fastq文件損壞、不完整。這給數(shù)據(jù)分析人員帶來了極大困難 -- 文件損壞就無法分析,無法上傳GEO,相當(dāng)于這個樣品的測序結(jié)果無效,錢白花了。因此我們迫切需要對fastq文件進(jìn)行校驗(yàn),并驗(yàn)證測序儀下機(jī)文件與你收到的文件是否一致。
seqkit是沈偉老師開發(fā)的一款fasta/fastq文件處理“瑞士軍刀”軟件。這里,我們使用子命令stats統(tǒng)計(jì)fastq文件的reads數(shù)、堿基數(shù)、Q30等信息,以完成對fastq文件的校驗(yàn)。命令:seqkit stats -a sample_R1.fastq.gz -T -j 4參數(shù)說明:-a 指定待校驗(yàn)的fastq文件(支持gzip壓縮)-T 結(jié)果以制表符(\t)分割-j 使用的CPU數(shù),默認(rèn)4
圖3. seqkit校驗(yàn)結(jié)果
來自GEO工作人員的常見報(bào)錯反饋包括:invalid compressed data--format violated,無效的壓縮數(shù)據(jù) – 違反格式invalid compressed data--crc error,無效的壓縮數(shù)據(jù) – 循環(huán)冗余校驗(yàn)碼 (CRC)出錯invalid compressed data--length error,無效的壓縮數(shù)據(jù) – 長度錯誤
md5值
我們一般使用文件的md5值來驗(yàn)證文件的完整性,以判斷文件是否被篡改。MD5是報(bào)文摘要算法5(Message-Digest Algorithm 5)的縮寫,該算法對任意長度的信息逐位進(jìn)行計(jì)算,產(chǎn)生一個二進(jìn)制長度為128位(十六進(jìn)制長度就是32位)的“指紋”(或稱“報(bào)文摘要”),不同的文件產(chǎn)生相同的報(bào)文摘要的可能性非常小。
一般情況下,下機(jī)fastq文件的md5值會與原始fastq文件一起返回給用戶,因此,如果下機(jī)文件的md5值和你重新計(jì)算的md5值完全匹配,則說明你收到的文件跟下機(jī)文件是一致的。如果兩者不一致,則說明你收到的文件可能出錯了,需要立即找原始數(shù)據(jù)提供者重新提供。一般會有一個緩沖期(例如1個月),過了緩沖期才會刪掉數(shù)據(jù)。
計(jì)算md5值
我們可以借助第三方軟件,或者使用系統(tǒng)命令來計(jì)算文件的md5值。
Win10系統(tǒng):Certutil -hashfile sample.fastq.gz md5
Linux系統(tǒng):md5sum sample.fastq.gz
Mac系統(tǒng):md5 sample.fastq.gz
注意:
1)md5sum 是校驗(yàn)文件內(nèi)容,與文件名是否相同無關(guān)
2)md5sum值逐位校驗(yàn),所以文件越大,校驗(yàn)時(shí)間越長
圖4. Fastq文件及md5值
情況1:左側(cè)的fastq文件有效,且左右兩側(cè)md5值相等,確定右側(cè)的fastq也有效
情況2:左側(cè)的fastq文件無效,雖然左右兩側(cè)md5值相等,但兩側(cè)的fastq均無效
情況3:左側(cè)的fastq文件有效,左右兩側(cè)的md5值不相等,確定右側(cè)的fastq無效
因此,我們在拿到原始數(shù)據(jù),或者將原始數(shù)據(jù)上傳GEO數(shù)據(jù)庫前,首先需要校驗(yàn)fastq文件的正確性(即文件是否符合fastq文件的標(biāo)準(zhǔn))并驗(yàn)證文件的完整性(從上游數(shù)據(jù)提供者那里拿到的數(shù)據(jù)是否完整)。這樣雙重保險(xiǎn),避免文件損壞,實(shí)驗(yàn)白做。
微生信助力高分文章,用戶74000+,引用1000+