Mekkora az emberi genom?
Sokszor kérdezik tőlem ezt a kérdést. Mekkora a genetikai kódunk? Tudod… az a DNS tervrajz dolog… ami több milliárd betűből áll… A-k, G-k, C-k, T-k… jelen van az emberi test összes TRILLIÓD sejtjében… az a dolog, ami téged tesz téged. Mekkora is valójában?
Mindannyiunk genomjában ~3 milliárd bázispár van, de mennyi tárhelyet foglal el egy emberi genom? A válasz természetesen az:
Az attól függ.
Az attól függ, hogy miről beszélünk. Arra az egyetlen betűsorra gondolunk, ami a sejtjeidben van? Vagy a nyers adatra, ami egy genomszekvenálóról jön le, aminek sok “olvasatot” kell tartalmaznia minden egyes pozícióban a megfelelő lefedettséghez, és amihez minőségi adatok társulnak? Vagy talán csak a genomod minden olyan pontjának listájáról beszélünk, ahol eltérsz az úgynevezett “normális” referencia genomtól?
Itt csak néhány a sokféle bontás közül:
1. Egy tökéletes világban (csak a te 3 milliárd betűd): ~700 megabájt
Ha rendelkeznél az emberi genom tökéletes szekvenciájával (ahol nincs technológiai hiba, ami miatt aggódnod kellene, és ezért nem kellene a szekvenciával együtt az adatminőségre vonatkozó információkat is tartalmaznod), akkor csak az emberi genom egy szálát alkotó betűsorra (A, C, G és T) lenne szükséged, és a válasz körülbelül 700 megabájt lenne. Valahogy így nézne ki:
AGCCCCTCAGGAGTCCGGCCCCACATGGAAACTCCTCATTCCCGGAGGTCAGTCAGATTTACCCTCCTCTGGCTCACCTTGGCGTCGCGTCGTCCGGCGGCAAACTAAGAACACCTCGTCTAAATGACTTCTTAAAGTAGAATAGCGTGTTCTCTCTCCTCCTTCCAGCCTCCGAAAAACTCGGACCAAAGATCAGGAGGCTTGTCCGTTCTTCGCTCTGAGTGATGAGACTGCGCGCCTCTCTGTTCGTACAACCAATTTAGGTGAGGTGAGTTCAAACTTCAGGGTCAGGCTGATAATCTACTTACCCAAACATAG
.
A számoláshoz, minden bázispár 2 bitet vesz igénybe (a T, G, C és A esetében a 00, 01, 10 és 11 biteket használhatjuk). Ha ezt megszorozzuk az emberi genomban lévő bázispárok számával, akkor 2 * 3 milliárd = 6 000 000 000 bitet kapunk. És ne feledjük, hogy a megabájtban kifejezett válaszhoz a bitekből a bájtokba kell átmennünk. A bit a digitális információ egyetlen egysége, a bájt viszont bitek (általában 8) sorozata. És mivel a számítógépek bináris matematikával dolgoznak, 1 kilobájt = 1024 (azaz 2 x 2 x 2 x 2 x 2 x 2 x 2 x 2 x 2 x 2 x 2 x 2 x 2 x 2 = 1024). 1 gigabájt = 1024 megabájt = 1048576 kilobájt = 1073741824 bájt. Tehát fogjuk az 5,800,000,000 bitet és osszuk el 8-cal, hogy 750,000,000 bájtot kapjunk. Ha ezt elosztjuk 1024-gyel, akkor 732,422 kilobájtot kapunk. Oszd el még egyszer 1024-gyel, és máris 715 megabájt marad. Igen, ez nagyjából elférne egy CD-romon, nem mintha bárki is használna már ilyeneket.
2. A való világban, közvetlenül a genomszekvenálóról: ~200 gigabájt
A valóságban egy teljes emberi genom szekvenálásához egy csomó rövid “olvasatot” kell generálni (~100 bázispár, platformtól függően), majd “igazítani” őket a referencia genomhoz. Ezt nevezik lefedettségnek is. Például egy 30-szoros lefedettséggel szekvenált teljes genom azt jelenti, hogy a genom minden egyes bázisát átlagosan 30 szekvenálási leolvasás fedte le. Az Illumina újgenerációs szekvenálói például óránként több millió rövid, 100bp-s olvasatot képesek előállítani, és ezeket gyakran FASTQ-ban tárolják. Ezek a fájlformátumok nemcsak az egyes bázispozíciók betűjelét tárolják, hanem sok más információt is, például a minőséget. Így néz ki egy FASTQ fájl.
@SEQ_ID
GATTTGGGGTTCTCAAAGCAGTATCGATCAAATCAAATAGTAAATCCATTTGTTCAACTCACACAGTTT
+
!”*((((***+))%%%++)(%%%%).1***-+*”))**55CCF>>>>>>>>CCCCCCCCC65
Ez a minőségi adat nem olyan egyszerű, mint az ACGT, mivel számos különböző betűt és szimbólumot használnak. Ezért ebben az esetben minden egyes betűt bájtnak tekintünk, nem pedig bitnek. Néhány gyors & piszkos, leegyszerűsített matematikával a számok így néznek ki: Feltételezve, hogy az emberi genom hossza 3 milliárd betű, és az átlagos lefedettségi mélység 30×, 90 milliárd betűt kapnánk, ami nagyjából 90 gigabájtnyi lemezterületet foglalna el, ha egy karaktert egy bájthoz rendelnénk. Figyelembe véve, hogy egy tipikus FASTQ-fájl rövid olvasatokat és minőségi pontszámokat is tartalmaz, a teljes méret körülbelül 180 gigabájt lenne (a vezérlő sorokat és a kocsivégzéseket figyelmen kívül hagyva). Ez széles skálán mozog, de nevezzük 200 gigabájtnak.
3. Mint variánsfájl, csak a mutációk listájával: ~125 megabájt
A genomnak csak körülbelül 0,1%-a különbözik az egyének között, ami körülbelül 3 millió variánsnak (más néven mutációnak) felel meg egy átlagos emberi genomban. Ez azt jelenti, hogy készíthetünk egy “diff fájlt” csak azokról a helyekről, ahol egy adott egyed eltér a normál “referencia” genomtól. A gyakorlatban ez általában .VCF fájlformátumban történik, ami a legegyszerűbb formában valahogy így néz ki:
chr20 14370 rs6054257 G A 29 PASS 0|0
Ahol minden sor ~45 byte-ot használ, és ha ezt megszorozzuk az adott genom ~3 millió variánsával, akkor egy .VCF fájl mérete körülbelül 135.000.000 byte vagy ~125 megabájt.
Ezzel megvan. Néhány a genom tárolási méretének számos módja közül. Gyakorlatilag az #1 nem igazán alkalmazható, mert soha nem kapsz tökéletes stringet a teljes emberi genomról. A #3 a leghatékonyabb, és ez az, amit az emberek gyakran továbbadnak, és amivel a későbbi elemzéshez és interprezentációhoz foglalkoznak. De a #2 az, ahogyan a genomokat általában tárolják, mert a szekvenálás még mindig tökéletlen tudomány, ahogyan a variánsmeghatározás is. Tehát tényleg meg kell őrizni a nyers szekvenálási leolvasásokat és a kapcsolódó minőségi adatokat, hogy szükség esetén a későbbiekben finomítani lehessen az adatelemzési paramétereket.
Azt jelenti, hogy mindannyiunknak jobb, ha felkészülünk a genomikai adatok nagy áradatára. Az 1000 genom projekt adatai például már elérhetőek az AWS felhőben, és >200 terabájtból állnak az 1700 résztvevő esetében. Ahogy a teljes genom szekvenálás költségei tovább csökkennek, egyre nagyobb és nagyobb szekvenálási tanulmányok kerülnek bevezetésre. Gondoljunk csak a 10K Autism Genome projekt tárolási igényeire, vagy az Egyesült Királyság 100k Genome projektjére….., vagy akár… gasp… a Million Human Genomes projektre. A számítási igények elképesztőek, és a nagy kérdés az, hogy az adatelemzés lépést tud-e tartani, és mit fogunk tanulni az A-k, T-k, G-k és C-k áradatából….?
.