Hur stort är det mänskliga genomet?
Jag får ofta den här frågan. Hur stor är vår genetiska kod? Du vet… den där DNA-blåkopian… som består av miljarder bokstäver… A:s, G:s, C:s, T:s… som finns i alla TRILLIONER av celler i människokroppen… det som gör dig till dig. Hur stort är det egentligen?
Vi har var och en ~3 miljarder baspar i våra genom, men hur mycket lagringsutrymme tar ett mänskligt genom upp? Svaret är naturligtvis:
Det beror på.
Det beror på vad vi pratar om. Menar vi den enda bokstavssträngen inuti dina celler? Eller de rådata som kommer från en genomsekvenser, som måste ha många ”läsningar” på varje position för att få tillräcklig täckning, och som har kvalitetsdata kopplade till sig? Eller kanske talar vi bara om listan över varje plats i ditt genom där du skiljer dig från det så kallade ”normala” referensgenomet?
Här är bara några av de många sätt att dela upp det på:
1. I en perfekt värld (bara dina 3 miljarder bokstäver): ~700 megabyte
Om du hade en perfekt sekvens av det mänskliga genomet (utan tekniska brister att oroa sig för, och därför inte behöver inkludera information om datakvalitet tillsammans med sekvensen), skulle allt du behöver vara den bokstavssträng (A, C, G och T) som utgör en sträng av det mänskliga genomet, och svaret skulle vara ungefär 700 megabyte. Det skulle se ut ungefär så här:
AGCCCCTCCTCAGGAGTCCGGCCACATGGAAACTCCTCATTCATTCCAGGGAGGTCAGTCAGATTTACCCTGGCTCACCTTGGCGTCGCGTCCCGGCGGCGGCCAAACTAAGAACACGTCGTCGTCTAAATGATAATGACTTCTTCTTAAAGTAAGTAGAAGCGTGGTGGTGTTCTCTCTCCTTCTCCCAGCCTCCTGACCGAAAAACTCGACAAAGATCAGATCAGGCTCTGTCTCTGGTCTTCTTGCTTGCGCTGCTGTTGTTGCTACTAGAACCAACCAACTAGGTGAGGTGAGTTTTCAGTTCAAACTTCTTCAGGGTGTAGCCAGAGGCTCTATAGATAATCTACTCTACCACACAACATATAG
För att räkna, Varje baspar tar 2 bitar (du kan använda 00, 01, 10 och 11 för T, G, C och A). Multiplicera detta med antalet baspar i det mänskliga genomet och du får 2 * 3 miljarder = 6 000 000 000 000 bitar. Kom ihåg att du måste gå från bitar till bytes för att få ett svar i megabyte. En bit är bara en enda enhet digital information, men en byte är en sekvens av bitar (vanligtvis 8). Och eftersom datorer arbetar med binär matematik är 1 kilobyte = 1024 (dvs. 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 x 2 x 2 = 1024). 1 gigabyte = 1024 megabyte = 1048576 kilobyte = 1073741824 byte. Man tar alltså 5 800 000 000 000 bitar och delar dem med 8 för att få 750 000 000 000 bytes. Dividerar du det med 1024 får du 732 422 kilobyte. Dividerar du det med 1024 en gång till får du 715 megabyte. Ja, det skulle kunna rymmas på en cd-rom, men ingen använder dem längre.
2. I den verkliga världen, direkt från genomsekvensatorn: ~200 gigabyte
För att kunna sekvensera ett helt mänskligt genom måste man i verkligheten generera en massa korta ”läsningar” (~100 baspar, beroende på plattformen) och sedan ”anpassa” dem till referensgenomet. Detta är också känt som täckning. Ett helt genom som sekvenserats med 30x täckning innebär till exempel att varje bas på genomet i genomsnitt täcktes av 30 sekvenseringsavläsningar. Illuminas nästa generations sekvenserare kan t.ex. producera miljontals korta 100 bp-avläsningar per timme, och dessa lagras ofta i FASTQ. I dessa filformat lagras inte bara bokstaven för varje basposition, utan även en hel del annan information, t.ex. kvalitet. Så här ser en FASTQ-fil ut:
@SEQ_ID
GATTTGGGGTTCAAAGCAGTATCGATCGATCAAATAGTAAATCCATTTGTTCAACTCACACAGTTT
+
!”*((((***+))%%%%++)(%%%%).1***-+*”))**55CCF>>>>>>>CCCCCCCCC65
Denna kvalitetsdata är inte lika enkel som ACGT, eftersom det finns en mängd olika bokstäver och symboler som används. Så i det här fallet betraktar vi varje bokstav som en byte snarare än en bit. Med hjälp av lite snabb & smutsig, förenklad matematik ser siffrorna ut så här: Om vi antar att det mänskliga genomet har en längd på 3 miljarder bokstäver och ett genomsnittligt täckningsdjup på 30×, skulle vi få 90 miljarder bokstäver, som ungefär upptar 90 gigabyte diskutrymme, om vi mappar ett tecken till en byte. Med tanke på att en typisk FASTQ-fil innehåller både kortläsningar och kvalitetspoäng skulle den totala storleken vara cirka 180 gigabyte (om man bortser från kontrollrader och vagnreturer). Det varierar kraftigt, men låt oss kalla det 200 gigabyte.
3. Som en variantfil, med bara listan över mutationer: ~125 megabyte
Bara cirka 0,1 % av genomet skiljer sig åt mellan individer, vilket motsvarar cirka 3 miljoner varianter (även kallade mutationer) i det genomsnittliga mänskliga genomet. Detta innebär att vi kan göra en ”diff-fil” med bara de ställen där en viss individ skiljer sig från det normala ”referensgenomet”. I praktiken görs detta vanligtvis i ett .VCF-filformat, som i sitt enklaste format ser ut ungefär så här:
chr20 14370 rs6054257 G A 29 PASS 0|0
Varvid varje rad använder ~45 byte, och om man multiplicerar detta med ~3 miljoner varianter i ett visst genom får man en .VCF-filstorlek på ungefär 135 000 000 byte eller ~125 megabyte.
Så där har du det. Några av de många olika sätten att se på storleken på lagringsutrymmet för genomer. Praktiskt sett gäller nr 1 egentligen inte, eftersom man aldrig får en perfekt sträng av ett helt mänskligt genom. #3 är det mest effektiva, och det är det som folk ofta skickar vidare och hanterar för analys och interpretering i efterföljande led. Men nr 2 är hur genomer vanligtvis lagras, eftersom sekvensering fortfarande är en ofullständig vetenskap, liksom variantbestämning. Så man måste verkligen hålla fast vid de råa sekvenseringsavläsningarna och tillhörande kvalitetsdata, så att man i framtiden kan justera dataanalysparametrarna vid behov.
Vad detta innebär är att vi alla borde förbereda oss för en stor flodvåg av genomiska data. Data från 1000 genomes-projektet, till exempel, finns nu tillgängliga i AWS-molnet och består av >200 terabyte för de 1700 deltagarna. I takt med att kostnaden för sekvensering av hela genomet fortsätter att sjunka rullas allt större sekvenseringsstudier ut. Tänk bara på lagringsbehovet för detta 10 000 autismgenombrottsprojekt, eller Storbritanniens 100 000 genombrottsprojekt….. eller till och med… gasp… detta miljonprojekt för mänskliga genomer. Datakraven är svindlande, och den stora frågan är: Kan dataanalysen hålla jämna steg, och vad kommer vi att lära oss av denna flodvåg av A:s, T:s, G:s och C:s….?