Format Atlas

对比

BAM vs CRAM

BAM是BGZF压缩的比对表示。CRAM利用与参考序列的差异等编码方式,信息保留取决于写入设置。

应该选择哪种格式?

重视广泛工具兼容性可选BAM;能管理参考序列解析和保留设置、希望节省容量时可考虑CRAM。

适用于 BAM

以二进制形式保存和交换大规模读段比对数据 · 通过索引按区域查询坐标排序的数据

  • 压缩保存与SAM兼容的头部、记录和标签
  • 使用BGZF及BAI/CSI索引进行区域读取

适用于 CRAM

利用参考序列压缩保存和交换比对数据 · 选择质量值和其他字段的保留策略

  • 能够识别并获取精确参考序列的工作流
  • 记录压缩及数据保留设置的归档

基本信息

项目BAMCRAM
扩展名.bam.cram
MIME 类型application/octet-stream
常见用途以二进制形式保存和交换大规模读段比对数据 · 通过索引按区域查询坐标排序的数据利用参考序列压缩保存和交换比对数据 · 选择质量值和其他字段的保留策略
打开方式使用支持SAM/BAM的软件。检查头部中的参考名称、长度和标识、排序顺序、读段数量、FLAG/CIGAR、质量及标签。区域查询时,使用针对该BAM文件和排序状态生成的BAI/CSI索引。使用支持CRAM的软件。检查参考名称、长度、校验和或版本、创建工具以及记录的数据保留设置。必要时从本地或可信注册表获取匹配的参考序列。区域查询应使用与该文件对应的CRAI索引。
导出或转换将BAM转为SAM可读性更好但文件可能明显增大。SAM转回BAM时核对字段、标签和顺序。CRAM转换可能依赖参考序列和质量保留设置,应保存所需参考数据。CRAM转为BAM或SAM时,正确解析参考并验证质量值、标签和读段名称是否保留。保留源CRAM,并比较记录数、统计信息和代表性记录。BAM/SAM转CRAM时,明确选择参考版本以及是否接受有损质量压缩。

按用途选择

压缩保存与SAM兼容的头部、记录和标签

以二进制形式保存和交换大规模读段比对数据 · 通过索引按区域查询坐标排序的数据

BAM

使用BGZF及BAI/CSI索引进行区域读取

以二进制形式保存和交换大规模读段比对数据 · 通过索引按区域查询坐标排序的数据

BAM

能够识别并获取精确参考序列的工作流

利用参考序列压缩保存和交换比对数据 · 选择质量值和其他字段的保留策略

CRAM

记录压缩及数据保留设置的归档

利用参考序列压缩保存和交换比对数据 · 选择质量值和其他字段的保留策略

CRAM

关键点 1

解码BAM通常不需要外部参考序列碱基。

进一步了解差异

关键点 2

CRAM支持依赖参考序列的编码和内嵌参考序列。

进一步了解差异

进一步了解差异

先确定必须保留的质量值和标签,再用实际数据验证往返转换和分析结果。CRAM不一定总是更小或更快。

  • 依赖参考序列的CRAM解码需要正确的参考。应区分外部管理、内嵌和无参考设置;仅交付文件未必足够。
  • CRAM可采用无损或有损保留策略。区域访问需要适当排序及工具要求的索引,例如CRAI。

常见问题

CRAM一定会保留全部信息吗?

不一定。取决于写入设置和工具。请验证质量值、可选标签、参考信息和记录数,验证完成前保留原始数据。

了解详情

相关用途与检查步骤

按流程选择测序文件

参考资料与规范