«Заложено природой»: Система хранения данных на основе ДНК
/ фото MIKI Yoshihito CC
В нашем блоге на Хабре мы регулярно делимся с вами последними новостями из мира IaaS. Например, недавно мы говорили о том, какие изменения ждут дата-центры в будущем. Мы также рассказывали, как крупные интернет-компании хранят свои данные. Сегодня нам бы вновь хотелось обратиться к теме хранения данных и рассказать о перспективной разработке — хранилищах на основе ДНК.
Жесткие диски, которые широко используются в дата-центрах мира для хранения данных, не славятся своей долговечностью. Команда Backblaze провела исследование и выяснила, что HDD хранят информацию всего лишь 10 лет.
К сожалению, это современные реалии — запоминающие устройства не могут служить вечно. По этой причине исследователи со всего мира стараются найти способ хранить данные как можно дольше — в идеале бесконечно.
И они его нашли. Считается, что ответ на все вопросы лежит в ДНК — она обладает высокой плотностью записи (1 эксабайт на 1 мм3) и долговечностью (установленный период распада составляет более 500 лет).
Размеры «цифровой вселенной» превысят 16 зеттабайт к 2017 году. Значительная доля этих данных хранится в виде архивов. К примеру, компания Facebook недавно построила отдельный дата-центр для «холодного» хранения 1 эксабайта данных. Такое же количество информации способно уместиться в 1 мм3 ДНК.
Сохранение данных в ДНК проходит в три этапа: преобразование цифровых данных в последовательность нуклеотидов ДНК, синтез молекул ДНК и, непосредственно, хранение данных. Чтобы данные считать, необходимо выделить требуемую последовательность из молекулы ДНК и преобразовать её в первоначальный вид.
Стоит отметить, что в работе с ДНК-хранилищами есть свои сложности, например, имеются вопросы касательно стоимости шифрования данных, однако исследователи уверены — по мере развития медицинских технологий, она будет снижаться.
Так и происходит. Время на проведение синтеза и секвенирования уменьшается экспоненциально, а рост их эффективности следует закону Мура.
Тренды в ДНК-синтезе в сравнении с ростом количества транзисторов на кристалле
Более того, стоимость подобной процедуры также падает. Раньше стоимость расшифровки генома человека составляла миллионы долларов, а сегодня она снизилась до нескольких сотен.
Эти положительные тренды привели к тому, что ученые из Вашингтонского университета начали разработку системы хранения данных типа «ключ-значение» на основе ДНК. Они хотят изучить возможность применения таких систем в современных архитектурах.
Процесс кодирования информацииДНК содержит четыре типа нуклеотидов: аденин (A), цитозин ©, гуанин (G) и тимин (T). Нить ДНК представляет собой линейную последовательность этих нуклеотидов. Таким образом, у нас есть четыре кодовых символа (A, C, G и T), поэтому очевидным подходом к хранению двоичных данных будет их кодирование в четверичной системе счисления, например, 0=A, 1=C, 2=G, и 3=T. Однако стоит учитывать, что синтез и секвенирование подвержены ошибкам.
Вероятность ошибок можно снизить, если закодировать двоичную информацию не в четверичной, а в троичной системе счисления, как показано на рисунке ниже. Чтобы избежать неэффективного преобразования исходных двоичных данных в троичную систему счисления, используется код Хаффмана.
Сопоставление двоичных данных и нуклеотидов ДНК
Каждая из трех цифр соотносится с нуклеотидом ДНК в соответствии с таблицей (ниже), причем нуклеотиды в цепочке не повторяются, что приводит к снижению ошибки секвенирования.
Таблица кодирования нуклеотидов
Чтобы обеспечить возможность произвольного доступа к данным, ученые оганизовали перевод ключей в уникальные последовательности праймеров. Праймеры — это короткие синтетические нити, определяющие начало и конец области, которую необходимо амплифицировать.
Праймеры обеспечивают произвольный доступ с помощью полимеразной цепной реакции, которая генерирует множество копий ДНК в решении. Цепи конкретного объекта имеют общий праймер, а разные цепи с одним и тем же праймером различаются по адресам.
«Контролируя последовательности, которые используются как праймеры для полимеразной цепной реакции (ПЦР), мы можем указать, какие нити в решении будут проходить амплификацию. Для того чтобы считать значение ключа в решении, мы просто проводим ПЦР, используя соответствующий этому ключу праймер», — говорят ученые.
Система хранения на базе ДНКСистема хранения на базе ДНК состоит из синтезатора ДНК, кодирующего данные, контейнера для хранения данных и секвенатора ДНК, который считывает последовательности ДНК и транслирует их обратно в «цифру».
Процесс считывания и записи данных в краткой форме приведен на схеме ниже.
Работа СХД на базе ДНК
Во время считывания образцы ДНК извлекаются из пула, снижая объем ДНК, доступной для последующих операций. Но ДНК легко копируется, поэтому при необходимости пулы могут без труда восполнить недостающие фрагменты. Если возникают трудности при последовательной амплификации, в пуле можно заново провести синтез ДНК после считывания.
ЗаключениеВ будущем такие системы потенциально позволят сохранить огромное количество данных на микроскопических носителях. Представьте себе «флешку» объемом 100 мм3, способную хранить порядка 100 000 ПБайт данных.
Однако пока что самым крупным препятствием к внедрению подобных технологий остается время. Расшифровка и чтение молекулы ДНК занимает многие часы. Поэтому такой тип хранилищ вряд ли подойдет для содержания часто используемых данных, однако способен первернуть наше представление о долговременных хранилищах в дата-центрах.
P.S. Другие материалы по теме из нашего блога на Хабре:
- ДНК и решение проблемы хранения данных
- Хранение данных: Какое будущее нас ждет
- Ученые опять «ломают голову»: Возможен ли апгрейд мозга и что стоит от него ожидать
- Работа с данными: Как это делают крупные компании
P.P. S. Мы подготовили ссылки на практические руководства на случай, если на выходных у вас будет время познакомиться с нашим IaaS-провайдером 1cloud и протестировать его возможности:
- Настройка OpenVPN-сервера с туннелированием интернет-трафика на Ubuntu 12.04 / Debian 7
- Базовая настройка безопасности Linux-систем
- Установка ISPmanager 5 Lite/Business на Linux-сервер
- Дополнительные возможности OpenVPN по обеспечению безопасности виртуальной частной сети
- Рекомендации по обеспечению безопасности Windows Server 2008/2012