Jump to content

CRAM (формат файла)

CRAM
Расширение имени файла
.набрать
Разработано Маркус Си-Янг Фриц и др .; Вадим Залунин; Джеймс Бонфилд
Тип формата Биоинформатика
Открытый формат ? да
Веб-сайт www .ga4gh .org / зубрить / , www .семья .uk / Вот этот /программное обеспечение /Cram-инструментарий

Сжатая карта ориентированного на ссылку выравнивания (CRAM) — это формат сжатого столбчатого файла для хранения биологических последовательностей, выровненных по эталонной последовательности , первоначально разработанный Маркусом Си-Янгом Фрицем и др . [1]

CRAM был разработан как эффективная альтернатива форматам файлов Sequence Alignment Map (SAM) и Binary Alignment Map (BAM) на основе ссылок. Он необязательно использует геномную ссылку для описания различий между выровненными фрагментами последовательности и эталонной последовательностью, что снижает затраты на хранение. Кроме того, каждый столбец в формате SAM разделяется на отдельные блоки, что повышает степень сжатия. Файлы CRAM обычно на 30–60 % меньше файлов BAM, в зависимости от данных, содержащихся в них.

Реализации CRAM существуют в htsjdk, [2] хтслиб , [3] JОбзор , [4] и Скрэмбл. [5]

Спецификация формата файла поддерживается Глобальным альянсом по геномике и здоровью (GA4GH). [6] со спецификацией, доступной на странице набора инструментов EBI. [7]

Формат файла [ править ]

Базовая структура файла CRAM представляет собой серию контейнеров, первый из которых содержит сжатую копию заголовка SAM. Последующие контейнеры состоят из заголовка сжатия контейнера, за которым следует серия фрагментов, которые, в свою очередь, содержат сами записи выравнивания, отформатированные как серия блоков.

CRAM-файл:

Магическое число Контейнер
(заголовок SAM)
Контейнер
(Данные)
... Контейнер
(Данные)
Контейнер
(ЭОФ)

Контейнер:

Контейнер
Заголовок
Сжатие
Заголовок
Срез ... Срез

Срез:

Срез
Заголовок
Блокировать Блокировать ... Блокировать

CRAM создает записи из набора рядов данных, описывающих компоненты выравнивания. Заголовок сжатия контейнера указывает, какая серия данных в каком блоке кодируется, какой кодек будет использоваться, а также метаданные, специфичные для кодека (например, таблица длин кодов символов Хаффмана ). Хотя ряды данных можно смешивать в одном блоке, их разделение обычно улучшает сжатие и обеспечивает возможность эффективного выборочного декодирования там, где требуются только некоторые типы данных.

Выборочный доступ к файлу CRAM предоставляется через индекс (с суффиксом имени файла «.crai»). В данных, отсортированных по хромосомам и позициям, это указывает, какая область покрывается каждым срезом. В несортированных данных индекс можно использовать для простой выборки N й контейнер. Выборочное декодирование также может быть достигнуто с использованием заголовка сжатия для пропуска определенных серий данных, если требуются частичные записи.

История [ править ]

Год Версия(и) Примечания
2010-11 до CRAM Первоначальный документ, описывающий справочный формат. Он не использовал имя CRAM, а назывался mzip. Это программное обеспечение было реализовано на Python в качестве прототипа и демонстрации основных концепций. [1]
2011-12 0.3–0.86 Вадим Залунин из Европейского института биоинформатики (EBI) разработал первую реализацию под названием CRAM в виде пакета CRAMtools. [8] написан на языке программирования Java .
2012 1.0 [9] Реализовано в Java CRAMtools. [10]
2013 Реализация C добавлена ​​в Scramble [11] [5] инструмент, разработанный Джеймсом Бонфилдом из Института Уэлкома Сэнгера .
2013 2.0 Изменения включали поддержку более одной ссылки на срез (полезно для сильно фрагментированных сборок), лучшее кодирование вспомогательных тегов SAM, разделение программного клипа и вставленных баз на отдельные серии данных, метаданные для отслеживания количества записей и баз. на каждый срез и поправки к ряду данных BF (флаг BAM).
2013 Добавлен в htslib (0.2.0).
2014 2.1 [12] Добавлены блоки EOF, чтобы помочь идентифицировать усеченные файлы.
2014 Добавлен в htsjdk (1.127).
2014 3.0 [13] Включение кодеков lzma и rans для сжатия блоков, а также нескольких контрольных сумм для обеспечения целостности данных.
2018 Реализация JavaScript как часть JBrowse [4] (1.15.0), Роб Бьюлс.
2021 Реализация Rust в Noodles [14]
2023 3.1 [15] Официально принят. (Проект от 2019 г.)

CRAM версии 4.0 существует в качестве прототипа в Scramble. [5] Первоначально продемонстрирован в 2015 году, но еще не принят в качестве стандарта.

См. также [ править ]

Ссылки [ править ]

  1. Перейти обратно: Перейти обратно: а б Си-Ян Фриц, Маркус; Лейнонен, Раско; Кокрейн, Гай; Бирни, Юэн (май 2011 г.). «Эффективное хранение данных высокопроизводительного секвенирования ДНК с использованием эталонного сжатия» . Геномные исследования . 21 (5): 734–740. дои : 10.1101/гр.114819.110 . ISSN   1549-5469 . ПМК   3083090 . ПМИД   21245279 .
  2. ^ «Хтсйдк от Института Броуда» . samtools.github.io . Проверено 14 октября 2018 г.
  3. ^ «Самтулс» . www.htslib.org . Проверено 14 октября 2018 г.
  4. Перейти обратно: Перейти обратно: а б «JBrowse · Быстрый встраиваемый геномный браузер, созданный с использованием HTML5 и JavaScript» . jbrowse.org . Проверено 14 октября 2018 г.
  5. Перейти обратно: Перейти обратно: а б с Бонфилд, Джеймс К. (14 июня 2014 г.). «Инструмент преобразования Scramble» . Биоинформатика . 30 (19): 2818–2819. doi : 10.1093/биоинформатика/btu390 . ISSN   1460-2059 . ПМК   4173023 . ПМИД   24930138 .
  6. ^ «ГА4ГХ» . www.ga4gh.org . Проверено 14 октября 2018 г.
  7. ^ ЭМБЛ-ЭБИ. «Набор инструментов CRAM <Программное обеспечение <Европейский архив нуклеотидов <EMBL-EBI» . www.ebi.ac.uk. ​Проверено 14 октября 2018 г.
  8. ^ «Вадимзалунин/зубитель» . Гитхаб . 08.08.2017 . Проверено 14 октября 2018 г.
  9. ^ «Спецификация CRAM 1.0» (PDF) .
  10. ^ "enasequence/cramtools" . Гитхаб . 02.10.2018 . Проверено 14 октября 2018 г.
  11. ^ "jkbonfield/io_lib" . Гитхаб . 16.10.2018 . Проверено 14 октября 2018 г.
  12. ^ «Спецификация CRAM 2.1» (PDF) .
  13. ^ «Спецификация CRAM 3.0» (PDF) .
  14. ^ https://github.com/zaeleus/noodles/
  15. ^ «Спецификация CRAM 3.1» (PDF) .
Arc.Ask3.Ru: конец переведенного документа.
Arc.Ask3.Ru
Номер скриншота №: 107bac60fcaf5870b438f307f46730be__1714074420
URL1:https://arc.ask3.ru/arc/aa/10/be/107bac60fcaf5870b438f307f46730be.html
Заголовок, (Title) документа по адресу, URL1:
CRAM (file format) - Wikipedia
Данный printscreen веб страницы (снимок веб страницы, скриншот веб страницы), визуально-программная копия документа расположенного по адресу URL1 и сохраненная в файл, имеет: квалифицированную, усовершенствованную (подтверждены: метки времени, валидность сертификата), открепленную ЭЦП (приложена к данному файлу), что может быть использовано для подтверждения содержания и факта существования документа в этот момент времени. Права на данный скриншот принадлежат администрации Ask3.ru, использование в качестве доказательства только с письменного разрешения правообладателя скриншота. Администрация Ask3.ru не несет ответственности за информацию размещенную на данном скриншоте. Права на прочие зарегистрированные элементы любого права, изображенные на снимках принадлежат их владельцам. Качество перевода предоставляется как есть. Любые претензии, иски не могут быть предъявлены. Если вы не согласны с любым пунктом перечисленным выше, вы не можете использовать данный сайт и информация размещенную на нем (сайте/странице), немедленно покиньте данный сайт. В случае нарушения любого пункта перечисленного выше, штраф 55! (Пятьдесят пять факториал, Денежную единицу (имеющую самостоятельную стоимость) можете выбрать самостоятельно, выплаичвается товарами в течение 7 дней с момента нарушения.)