| ファイル名拡張子 |
。詰め込む |
|---|---|
| 開発者 | マルクス・シー・ヤン・フリッツら;ヴァディム・ザルニン。ジェームズ・ボンフィールド |
| フォーマットの種類 | バイオインフォマティクス |
| オープンフォーマット? | はい |
| Webサイト | www.ga4gh.org/cram/、www.ebi.ac.uk/ena/software/cram-toolkit |
圧縮参照指向アライメントマップ(CRAM)は、参照配列にアライメントされた生物学的配列を保存するための圧縮された列ファイル形式であり、Markus Hsi-Yang Fritzらによって最初に考案されました。[1]
CRAM は、シーケンス アライメント マップ(SAM) およびバイナリ アライメント マップ(BAM) ファイル形式に代わる効率的な参照ベースの代替として設計されました。オプションでゲノム参照を使用して、アライメントされたシーケンス フラグメントと参照シーケンスの違いを記述し、ストレージ コストを削減します。さらに、SAM 形式の各列は独自のブロックに分割されるため、圧縮率が向上します。CRAM ファイルは、その中に保持されるデータに応じて、通常 BAM よりも 30 ~ 60% 小さくなります。
CRAMの実装はhtsjdk、[2] htslib、[3] JBrowse、[4] Scrambleに存在します。[5]
ファイル形式の仕様は、Global Alliance for Genomics and Health (GA4GH) [6]によって管理されており、仕様書はEBIのcramツールキットページから入手できます。[7]
ファイル形式
CRAM ファイルの基本構造は一連のコンテナで構成され、最初のコンテナには SAM ヘッダーの圧縮コピーが保持されます。後続のコンテナは、コンテナ圧縮ヘッダーと、それに続く一連のスライスで構成され、スライスには一連のブロックとしてフォーマットされたアライメント レコード自体が保持されます。
CRAM ファイル:
容器:
スライス:
CRAM は、一連のデータ シリーズからレコードを構築し、アラインメントのコンポーネントを記述します。コンテナーの圧縮ヘッダーは、どのデータ シリーズがどのブロックにエンコードされるか、どのコーデックが使用されるか、コーデック固有のメタデータ (ハフマンシンボル コード長のテーブルなど) を指定します。データ シリーズは同じブロック内に混在させることができますが、通常は別々にしておくと圧縮率が向上し、一部のデータ タイプのみが必要な場合に効率的な選択的デコードが可能になります。
CRAM ファイルへの選択的アクセスは、インデックス (ファイル名のサフィックスは「.crai」) を介して許可されます。染色体と位置でソートされたデータでは、これは各スライスでカバーされる領域を示します。ソートされていないデータでは、インデックスを使用して N番目のコンテナーを簡単に取得できます。部分的なレコードが必要な場合、圧縮ヘッダーを使用して指定されたデータ シリーズをスキップすることで、選択的なデコードを実現することもできます。
歴史
CRAMバージョン4.0はScrambleのプロトタイプとして存在し、[5] 2015年に最初に実証されましたが、まだ標準として採用されていません。
参照
参考文献
- ^ ab Hsi-Yang Fritz, Markus; Leinonen, Rasko; Cochrane, Guy; Birney, Ewan (2011 年 5 月). 「参照ベースの圧縮を使用した高スループット DNA シーケンス データの効率的な保存」. Genome Research . 21 (5): 734–740. doi :10.1101/gr.114819.110. ISSN 1549-5469. PMC 3083090. PMID 21245279 .
- ^ 「Htsjdk by Broad Institute」。samtools.github.io 。 2018年10月14日閲覧。
- ^ "Samtools". www.htslib.org . 2018年10月14日閲覧。
- ^ ab 「JBrowse · HTML5とJavaScriptで構築された高速で埋め込み可能なゲノムブラウザ」。jbrowse.org 。2018年10月14日閲覧。
- ^ abc Bonfield, James K. (2014-06-14). 「スクランブル変換ツール」.バイオインフォマティクス. 30 (19): 2818–2819. doi :10.1093/bioinformatics/btu390. ISSN 1460-2059. PMC 4173023. PMID 24930138 .
- ^ "GA4GH". www.ga4gh.org . 2018年10月14日閲覧。
- ^ EMBL-EBI. 「CRAM ツールキット < ソフトウェア < 欧州ヌクレオチドアーカイブ < EMBL-EBI」。www.ebi.ac.uk 。2018年 10 月 14 日閲覧。
- ^ "vadimzalunin/crammer". GitHub . 2017-08-08 . 2018-10-14閲覧。
- ^ 「CRAM 1.0仕様」(PDF)。
- ^ "enaseqence/cramtools". GitHub . 2018-10-02 . 2018-10-14に取得。
- ^ "jkbonfield/io_lib". GitHub . 2018-10-16 . 2018-10-14に閲覧。
- ^ 「CRAM 2.1仕様」(PDF)。
- ^ 「CRAM 3.0仕様」(PDF)。
- ^ https://github.com/zaeleus/noodles/ [裸のURL ]
- ^ 「CRAM 3.1仕様」(PDF)。
