Illumina输出文件详解
Illumina輸出文件詳解
- Illumina測序原理(next-seq-550)
- 基本過程
- 基本概念
- BCL文件(Base Call Files)
- BCI文件(Base Call Index Files)
- BGZF文件(Block GNU ZIP File)
- BGZF.BCI(Block Compress Index,可能叫這個名字)
- FILTER文件(簇過濾信息文件)
- LOCS文件 (簇位置信息文件)
- Fastq格式文件 (Illumina)
Illumina測序原理(next-seq-550)
基本過程
Illumina測序包裹文庫制備、簇生成、測序、數(shù)據(jù)分析四個過程。
- 文庫制備:主要是制作一些碎片化的核酸序列,并將這些碎片化的序列和接頭序列連接起來。接頭序列包括一段與測序芯片上的寡聚核苷酸(oligo)反向互補的一小段序列,同時如果需要也可以通過PCR插入一段index序列用于標記序列所屬的樣本。
- 簇生成:該過程主要是橋式PCR的過程。在芯片上有兩種寡聚核苷酸,首先被測序的單鏈DNA的接頭與其中一種寡聚核苷酸識別互補,隨后以被測序的單鏈DNA作為模板合成反向互補的DNA序列。合成完畢以后,進行核酸變性,洗去被測序的單鏈DNA。而后,被合成的DNA序列由于在3‘段的接頭序列中存在與第二種寡聚核苷酸的互補序列,因此可以與第二種寡聚核苷酸序列識別。識別以后,會根據(jù)模板連生成一段反向互補序列。重復上述過程,完成簇生成。最后會切去第二種寡聚核苷酸延伸出的單鏈DNA。
- 測序的過程即加入引物進行測序,核苷酸可以通過合成發(fā)出的熒光確定。具體原理參考illumina手冊。雙端測序則會在該過程結(jié)束后重新進行橋式PCR并切去第一種寡聚核苷酸延伸的單鏈DNA,并重新執(zhí)行測序過程。
- 數(shù)據(jù)分析過程,使用illumina專用的Sequencing Analysis Viewer分析生成BCL、圖像等原始文件,再通過bcl2fastq即可獲得fastq序列并繼續(xù)后續(xù)分析。
基本概念
- 流動槽(flow Cell):該名稱為Illumina的官方術(shù)語,也稱作芯片,為一次性用品。其表面遍布寡聚核苷酸。
- 泳道(lane):一個流動槽有4個泳道。泳道指帶有專用輸入輸出端口的物理通道。
- 表面(surface):流動槽會在頂面和底面兩個表面成像。一個小區(qū)的頂面成像后,該小區(qū)的底面會接著成像,之后會移至下一個小區(qū)。
- 每泳道測繪帶數(shù)(swaths per lane):測繪帶是泳道中的一列小區(qū)。
- 相機片段(camera segments):儀器使用6個相機對流動槽成像,為每個泳道成像3個片段。
- 每個相機片段的的每測繪帶小區(qū)數(shù)(tiles per swath per camera segment):小區(qū)是流動槽上的區(qū)域,相機將其視為一個圖像。
- 小區(qū)(tile):小區(qū)是流動槽上以相機的視野定義的小成像區(qū)域。
| 泳道 | 4 | 4 |
| 表面 | 2 | 2 |
| 每泳道測繪帶數(shù) | 3 | 1 |
| 相機片段 | 3 | 3 |
| 每個相機片段的每測繪帶小區(qū)數(shù) | 12 | 12 |
| 成像小區(qū)總計 | 864(相乘) | 288(相乘) |
注:泳道1和3(泳道對A)同時成像。泳道2和4(泳道對B)再泳道對A完成后成像。
注:相機編號為1-6。相機1-3對泳道1成像。相機4-6對泳道3成像。對泳道1和3成像后,成像模塊會沿x軸方向移動,以便對泳道2和4成像。
BCL文件(Base Call Files)
BCL文件是由Illumina測序儀生成的測序文件,包含測序的信息。包括簇數(shù)和堿基信息。
- 簇數(shù):無符號32位整數(shù)(unsigned int, 4 Byte)表示。由開頭的4個字節(jié)存儲。
- 堿基信息:無符號8位整數(shù)(unsigned char, 1Byte)表示。低位0-1比特位(bit)表示堿基(00-A,01-C,10-G,11-T),2-7比特表示堿基的質(zhì)量分數(shù),向右移2位即表示為該堿基的質(zhì)量分數(shù)。
注:整數(shù)在內(nèi)存中表示時從高地址向低地址表示。18 18 AA 08(16進制)實際表示為08 AA 18 18,即需要倒序為真實整數(shù)。
注:bit位由左向右為7-0。
例:
| 0x00000000-0x00000003 | 18 18 AA 08 | 145365016(08AA1818,簇數(shù)) |
| 0x00000004 | 81(1000 0001) | 01 -> C,1000 00 -> 32 |
| 0x00000005 | 80(1000 0000) | 00 -> A,1000 00 -> 32 |
| 0x0000000C | 55(0101 0101) | 01 -> C,0101 01 -> 21 |
| 0x0000000F | 3B(0011 1011) | 11 -> T,0011 10 -> 14 |
| …… | …… | …… |
BCI文件(Base Call Index Files)
本文件與bcl.bgzf.bci文件不同。本文件主要表征的是每個泳道中的每個小室中簇的數(shù)量,每個簇即對應一條Read。每條記錄由兩個無符號32位整數(shù)表示。其中低32位標識tile的編號,高32位標識小室中的簇的數(shù)量。
例:
| 0x00000000-0x00000007 | 5D 2B 00 00 / 35 EE 09 00 | 11101(小室編號)/ 650805(簇數(shù)量) |
| 0x00000008-0x0000000F | 5E 2B 00 00 / D8 DF 09 00 | 11102 / 647128 |
| 0x00000010-0x00000017 | 5F 2B 00 00 / 00 BE 09 00 | 11103 / 638464 |
| 0x000006B8-0x000006BF | 10 5B 00 00 / 60 3A 0A 00 | 23312 / 670304 |
| …… | …… | …… |
小室編號規(guī)則:
- 表面:1表示頂面,2表示底面
- 測繪帶:1、2或3
- 相機:1、2、3、4、5或6
- 小區(qū):01、02、03、04、05、06、07、08、09、10、11、12
- 如:小區(qū)編號12508表示頂面、測繪帶2、相機5和小區(qū)8
BGZF文件(Block GNU ZIP File)
該文件是BCL文件的壓縮文件,壓縮格式為BGZF格式,該格式與gzip格式兼容,可以使用gunzip命令或者7z解壓。該文件實際上由按照序列排列的GNU ZIP壓縮塊組成,每個壓縮塊均可表示一個獨立的gzip文件。即將gzip文件拼接成1個文件即是bgzf文件,擁有快速隨機讀寫的能力。每個gzip壓縮前后均不超過64KB。
- 每一個gzip塊的開頭序列為:1F 8B 08 04 00 00 00 00 00 FF 06 00 42 43 02 00;
- 每一個gzip塊的結(jié)束序列為:1f 8b 08 04 00 00 00 00 00 ff 06 00 42 43 02 00 1b 00 03 00 00 00 00 00 00 00 00 00;
開頭信息為:
主要:
| ID1 | gzip IDentifier1 | uint8_t | 31 |
| ID2 | gzip IDentifier2 | uint8_t | 139 |
| CM | gzip Compression Method | uint8_t | 8 |
| FLG | gzip FLaGs | uint8_t | 4 |
| MTIME | gzip Modification TIME | uint32_t | |
| XFL | gzip eXtra FLags | uint8_t | |
| OS | gzip Operating System | uint*_t | |
| XLEN | gzip eXtra LENgth | uint16_t |
附加1:
| SI1 | Subfield Identifier1 | uint8_t | 66 |
| SI2 | Subfield Identifier2 | uint8_t | 67 |
| SLEN | Subfield LENgth | uint16_t | 2 |
| BSIZE | total Block SIZE minus 1 | uint16_t |
附加2:
| CDATA | Compressed DATA by zlib::deflate() | uint8_t[BSIZE-XLEN-19] | |
| CRC32 | CRC-32 | uint32_t | |
| ISIZE | Input SIZE (length of uncompressed data) | uint32_t |
本文件的任意壓縮塊均包含上面的全部內(nèi)容。
BGZF.BCI(Block Compress Index,可能叫這個名字)
需要注意的是這個文件與bci(Base Call Index Files)文件是不同的,本文件為BGZF壓縮文件的索引文件。但本文件與bci(Base Call Index Files)文件是存在對應關(guān)系的。與bci文件相同的是,本文件的總記錄數(shù)量與bci(Base Call Index Files)文件的記錄數(shù)量是相同的,每一條記錄均表示為一個小室(Tile)。由頭信息與記錄組成。
需要值得注意且極其重要的是,每一條記錄都對應的都是一個小室,且每個小室都由不止一個gz塊組成。每條記錄的低16位與高48位組成,高48位即本小室開始的gz塊在整個bgzf文件中地址。低16位表示該gz塊解壓后的數(shù)據(jù)塊中本小室開始的地址。
如:04 00 / 00 00 00 00 00 00,表示第一小室(如泳道1的編號11101小室)的起始gz塊的地址在整個bgzf文件中為0x00 00 00 00 00 00,04表示本小室在第一塊gz塊解壓后的地址0x04開始。
如:39 EE / B2 E3 02 00 00 00為第二條記錄,表示第二個小室的起始gz塊的地址在整個bgzf文件中為0x00 00 00 02 E3 B2,39 EE表示第二小室在這個gz塊解壓后的數(shù)據(jù)的地址0xEE 39開始。
例:
| 0x00000000-0x00000003 | 00 00 00 00 | 0(頭信息) |
| 0x00000004-0x00000007 | D8 00 00 00 | 216 (頭信息,小室數(shù)量) |
| 0x00000008-0x0000000F | 04 00 / 00 00 00 00 00 00 | 4 / 0(記錄) |
| 0x00000010-0x00000017 | 39 EE / B2 E3 02 00 00 00 | 60985 / 189362 |
| …… | …… | …… |
FILTER文件(簇過濾信息文件)
本文件主要包含的是每個簇的是否被過濾的信息。其中0-12 Byte表示該文件的頭信息,包括頭、版本、簇數(shù)。后面信息則為記錄,每條記錄為1 Byte。
例:
| 0x00000000-0x00000003 | 00 00 00 00 | 0(頭信息) |
| 0x00000004-0x00000007 | 03 00 00 00 | 3(文件版本號) |
| 0x00000008-0x0000000B | 18 18 AA 08 | 145365016(08AA1818,簇數(shù)) |
| 0x0000000C | 00 | False 未通過過濾,在Fastq的頭中用Y表示 |
| 0x00000130 | 01 | True 通過過濾,在Fastq的頭中用N表示 |
| …… | …… | …… |
LOCS文件 (簇位置信息文件)
本文件主要記錄的是每個簇所在的位置信息。其中0-12 Byte表示該文件的頭信息。后面每8 Byte為一條記錄,每條記錄包括x軸位置信息和y軸位置信息。
例:
| 0x00000000-0x00000003 | 01 00 00 00 | 1 (Uint32) 頭信息 |
| 0x00000004-0x00000007 | 00 00 80 3F | 1.0(Float32)頭信息 |
| 0x00000008-0x0000000B | EF E1 2F 02 | 36692463(022FE1EF,簇數(shù)) |
| 0x0000000C-0x00000013 | 32 92 5B 43/21 EC 03 40 | 219.57(Float32,x軸坐標)/ 2.06 (Float32, y軸坐標) |
坐標信息轉(zhuǎn)換到Fastq文件中時需要進行一定的轉(zhuǎn)換,具體轉(zhuǎn)換公式如下:
_pos = (Uint32)record_pos*10+1000.5
Fastq格式文件 (Illumina)
| @ | 每一條記錄的開始 |
| instrument | 設(shè)備號 |
| run ID | 系統(tǒng)運行編號 |
| flow cell ID | 流動槽編號 |
| lane | 泳道編號 |
| tile | 小區(qū)編號 |
| x_pos | x軸坐標 |
| y_pos | y軸坐標 |
| UMI | [Optional] The UMI sequence (A, G, C, T, and N). When the sample sheet specifies UMIs, a plus sign separates the Read 1 and Read 2 sequences.[后接一個空格] |
| read | 1/2分別表示單端或雙端中序列1或序列2,單端測序僅有1,雙端存在1和2 |
| is filtered | Y-表示被過濾,N-表示未被過濾 |
| control number | 0—Control bits are not turned on.* |
| index sequence or sample number | [可選]接頭序列或者樣本的編號 |
第二行為堿基序列;
第三行為注釋,一般為+;
第四行為質(zhì)量信息,為phred33格式表示。
總結(jié)
以上是生活随笔為你收集整理的Illumina输出文件详解的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Ubuntu16.04更改新加卷名称
- 下一篇: 使用Docker构建服务(6)