Ile danych (np plików) można zmieścić w 1 miligramie DNA?

Ile razy mieliście do czynienia z sytuacją, w której kończyło się Wam miejsce na dysku twardym komputera? Co wtedy robicie? A gdyby tak mieć nośnik, którego pojemność wystarczyła by na długo bez szybkiego całkowitego zapełnienia? Naukowcy z Harvardu pracują nad technologią pozwalającą archiwizować (zapisywać) dane przy użyciu DNA. Jak wydajna jest ta technologia? Ile danych da się zmieścić w 1 gramie DNA?

Zapisywanie informacji w DNA

Naukowcy z Harvardu od dawna pracują nad technologią zapisu informacji w DNA, która ma dwie główne zalety – niesamowicie dużą gęstość danych i niesamowicie długą ich żywotność.

Według ostatnich informacji, udało im się upakować 5.49e15 bitów w jednym milimetrze sześciennym. 5.49e15 bitów, to 5,49 biliarda bitów, co w jednostkach informatycznych daje 5,49 Pb (petabitów). Tak, wiem, że Wam to niewiele mówi :) Po przeliczeniu na bardziej znane jednostki, bajty, daje to nieco ponad 686 TB (terabajtów) – tyle samo, co zawartość 343 dysków twardych o pojemności 2 TB, 13720 dwuwarstwowych płyt Blu-ray (27440 jednowarstwowych), czy 980000 (980 tysiecy) płyt CD o pojemności 700 MB. Imponująca liczba? A 1 mm³ to zaledwie 1 mg (jedna tysięczna grama). No to jeszcze jedna imponująca liczba – DNA jest w stanie przetrwać dziesiątki, czy nawet setki tysięcy lat bez potrzeby zapewniania mu szczególnych warunków przechowywania. Trzeba tylko dopilnować, aby nie zostało zanieczyszczone.

Teoretycznie upakowanie danych nadal może być jeszcze większe – w przybliżeniu 65 tysięcy razy większe (4,5 * 10^20 bajtów na gram). Na razie naukowcom udało się osiągnąć i tak bardzo imponujący wynik. Niestety nie znalazłem tylko informacji, ile czasu trwa „zapisywanie” i „odczytywanie” danych. Do najszybszych zapewne nie należy, ale jeśli potraktować DNA jak mechanizm kopii zapasowych, najszybsze być nie musi, raczej musi zapewniać bezpieczne i długie przechowywanie dużych ilości danych, co udało się osiągnąć (o tym w dalszej części wpisu).

W źródłach poniżej znajdziecie informację w języku angielskim na portalu ExtremeTech, w której moim zdaniem wkradł się błąd – autor napisał tam, że owe prawie 700 TB danych zostało zmieszczone w 1 gramie DNA, a nie 1 miligramie, co wynika z moich wyliczeń z informacji zawartych suplemencie (tabela S2).

Ale jak to się robi

O DNA

Tu od razu zaznaczę, że DNA to zupełnie nie mój zakres wiedzy, mam nadzieję, że czegoś nie przekręcę :) Nie mam zamiaru też cytować całej Wikipedii, bo ani to ciekawe, ani zrozumiałe dla większości z nas :) Dla zainteresowanych – DNA.

Wystarczy tutaj tylko wspomnieć, czym jest DNA, aby lepiej zrozumieć cały proces. DNA to (za Wikipedią) wielkocząsteczkowy organiczny związek chemiczny należący do kwasów nukleinowych. Ten liniowy, nierozgałęziony polimer składa się z nukleotydów. Nukleotydy zaś to deoskryboza połączona z jedną z czterech zasad azotowych: adeniną A i guaniną G oraz cytozyną C i tyminą T. I to właśnie te zasady azotowe (A, G, C i T) są tu nośnikiem informacji.

I nieco bardziej dla oka:

Dane do eksperymentu

Naukowcy, aby przeprowadzić eksperyment na prawdziwych danych, wzięli książkę jednego z nich, zamienili na format HTML i osadzili 11 czarno-białych obrazków w kodzie (inline przy użyciu base64). Tak przygotowany (jeden) plik został zamieniony na sekwencję bitów, którym przypisano nukleotydy A lub C dla wartości binarnej 0 (zero) i T lub G dla wartości 1. Sekwencja bitów została podzielona na 12 bajtowe bloki (96 bitów) z dodatkowymi 19 bitami danych adresowych (każdy blok ma swoje id, aby było wiadomo, w jakiej kolejności później z powrotem dane poskładać w jeden plik). W tym procesie wykorzystano skrypt napisany w perlu (znajduje się w suplemencie).

Magia związana z DNA

I w tym momencie zaczyna się magia, czyli synteza i amplifikacja w celu otrzymania DNA z danymi, czyli tworzenie łańcuchów DNA z odpowiednimi nukleotydami w odpowiedniej kolejności – tego niestety Wam nie wytłumaczę, bo wykracza to poza zakres mojej wiedzy :) Posiadając gotowe DNA, aby „odzyskać” z niego dane, trzeba je poddać sekwencjonowaniu (tutaj ten proces przebiega podobnie jak przy odczytywaniu każdego innego DNA), którego wynikiem jest informacja o ciągu nukleotydów, a więc zakodowanych wcześniej zer i jedynek binarnych.

Cały proces wygląda tak:

Popatrzmy jeszcze raz na przykład – u góry widać barcode czyli indeks bloków i 12 zakodowanych bajtów, które po zakodowaniu stają się ciągiem reprezentującym sekwencję nukleotydów. Następnie w wyniku syntezy tworzone jest DNA, z którego przez sekwencjonowanie otrzymujemy ponownie ciągi sekwencji nukleotydów, będące po zdekodowaniu kolejnymi bitami bloków danych.

Sekwencjonowanie DNA w wyniku daje informacje, które mogą wyglądać tak (oczywiście mogą być też zapisane w komputerze i poddane dalszej obróbce przez odpowiednie oprogramowanie):

Dekodowanie danych do postaci pliku

Naukowcy utworzyli kolejny skrypt w perlu, który zamienia ciągi nukleotydów na bity, odczytuje numer ze słownika (pierwsze 19 bitów) i składa wszystkie dane w całość z konwersją do ich reprezentacji bajtowej (numer ze słownika jest informacją o kolejności składania danych).

Oczywiście nie było tu sytuacji, w której każdy łańcuch DNA (zawierający każdy blok informacji) istniał tylko raz – każdy z nich powtarzał się wielokrotnie, co wynika ze sposobu syntezy DNA (reakcje chemiczne), oraz zapewnia odzyskania wszystkich danych (jeśli jeden łańcuch ulegnie uszkodzeniu, nadal jest jeszcze wiele jego kopii).

Błędy

Tutaj dochodzimy do kolejnej ciekawej informacji. W procesie sekwencjonowania naukowcy znaleźli błędy w… 22 sekwencjach,  z czego tylko 10 spowodowało zamianę bitów, a co za tym idzie przekłamanie informacji. Przez błędy rozumiemy tu porównanie odkodowanych danych z ich oryginałami. Ponieważ każda sekwencja istnieje wiele razy, można powiedzieć, że cały mechanizm posiada od razu system korekcji błędów (odczytanie wielu łańcuchów z tą samą sekwencja i porównanie wyników ze sobą).

 

Podsumowanie

Niejednokrotnie słyszeliśmy już o różnych związkach organicznych, które z większym lub mniejszym powodzeniem były wykorzystywane podczas prób stworzenia nośników danych, czy procesorów. To osiągniecie jednak pokazuje, czego możemy się spodziewać w nieco dalszej przyszłości – raczej nie szybko, o ile w ogóle zobaczymy pamięci tego typu produkowane na masową skalę – każdy napęd z DNA zamiast krzemu czy innych pierwiastków musiał by posiadać także minilaboratoriom do syntezy i sekwencjonowania DNA :)

 

Źródła: Extremetech, Sciencemag, Wikipedia
Obrazki: [1], [2]

Ten wpis został opublikowany w kategorii Różne, Technologie i oznaczony tagami , , , , , , , . Dodaj zakładkę do bezpośredniego odnośnika.

Dodaj komentarz

Musisz się zalogować (także Facebook, Google+, Twitter), aby móc dodać komentarz.