比对结果文件 Bam 文件格式介绍

bam文件格式是生物信息最常用的文件格式,主要用于记录序列比对情况。一般测序下机数据的比对结果,均以该格式进行存储。而用于序列比对的工具,如blast也提供了bam格式的输出形式。因此可以说,对生物信息学工具的优化和开发,几乎不可避免地需要对bam处理,对于基础用户而言,可能经常用到samtools来进行。


1. SAM 格式详解

要说明bam文件的内容,需要首先介绍sam文件的内容。上一篇内容中已经介绍了,sam文件是记录比对信息的标准结构化文件,从总体上可以分为两个部分

1.1 SAM 文件头部

sam 文件头部信息以@ 作为开头,对比对结果的meta信息进行记录,主要涵盖了文件标准格式版本(VN)、比对中使用的参考序列信息(SQ)、测序数据分组信息(RG)、比对或后期处理使用的程序信息(PG)等。上述内容是sam文件标准规定的,因此一般sam文件中必须存在。 不仅如此,用户也可以根据后期分析需要自定义一系列自定义的信息,最为常用的就是UMI标签信息,在此就不展开描述了,关于sam文件头部信息的细节可以参考其格式说明手册


1.2 SAM 文件中比对信息

sam文件的比对信息中,每一行是由固定的11列的组成的。其信息内容见下表:

列编号 列名称 类型 说明
1 QNAME String query序列名称
2 FLAG Int FLAG标签,主要记录比对的基本情况,取值为2的整数次幂
3 RNAME String 比对至参考序列的名称,例如:chr1
4 POS Int 比对至参考序列的位置
5 MAPQ Int 比对质量,不同的比对软件对其定义不尽相同
6 CIGAR String 比对的CIGAR字符串,下文有详细说明
7 RNEXT String 对于illumina平台的数据而言,该部分指read2比对到的参考序列位置名称,例如:chr2
8 PNEXT Int 与RNEXT类似,表示read2比对的参考序列位置
9 TLEN Int 比对序列对应的模板(Template)长度
10 SEQ String query序列
11 QUAL String query序列的碱基质量Phred值

sam-file-demo

上述11列信息,是SAM文件必要的组成部分。除此之外,每行可以追加可选信息。该部分信息以TAG:TYPE:VALUE 形式存储。详细介绍可参考官方文档。值得注意的是,追加信息标签(TAG)的标准定义是一直在不断更新的,基本上每年都会有新增标签加入。


2. 压缩概览

由于本人背景知识有限,因此只能简要描述一下数据压缩相关内容。 对于测序数据这种本质上含有大量冗余的数据而言,如果单纯对每个信息进行记录则会造成非常大的存储资源的浪费。由于数据存在着重复信息,因此一个比较直接的思路就是,对数据中多次出现的部分进行编码,然后对于第一此出现该信息以外的部分,以一定的标识进行替代。当然,被替代的信息长度,应该大于标记信息长度。这样,当压缩软件和解压软件遵守同一套标准的前提下,数据在存储设备上就可以以相对较小的空间,记录完整的信息。

data-compression


3. BAM 文件

bam文件作为sam文件的压缩版本,记录的信息本质上是一样的。但是对其进行了BGZF压缩。该压缩的目的,在减少存储消耗的前提下,提供在有索引的前提下,提供快速的随机访问的功能。

在存储介质上,BGZF文件是由一系列BGZF块(BGZF block)组成的,每个块大小不超过64Kb,每个块的组成见下图

bgzf-block

以块数据为基本单位,bam文件记录如下:

bam-file-demo

上述表格中基本信息与sam文件的内容存在对应关系,但其每个记录的类型存在转化关系,以seq信息为例,在sam文件中是以字符串形式存储的,在bam文件中,该项则是将字符串集转化为了[0,15]的整数进行存储。

因此,一般的linux字符处理工具(如cat、head)是无法直接处理bam文件的读取、修改、查询的。在实际处理过程中,经常使用samtoolshtslib提供的接口对bam文件进行处理。目前生信分析常用的主流语言中基本上都涵盖了处理bam文件的扩展,例如python语言中的pysam,R中的Rsamtools等。

小结

sambam文件是处理测序数据接触的相对较为复杂的第一个文件结构。对于sam文件为平面文件,相对而言易于查看和处理,但是由于其占用存储空间过大,因此在实际使用中不保存。bam文件作为sam文件的压缩版本,采用的压缩方式为BGZF压缩格式,该格式在介质上的存储单位为64Kb 的block。bam文件记录的信息与sam相同,但存储空间占用却小很多。

关于bam文件的索引及后续内容,今后也会陆续分享给大家。欢迎各位读者持续关注 :D

Powered by XTAO TechnologyLast Modified On:2021 2023-03-24 09:05:27

results matching ""

    No results matching ""