Biotech platforma ispod haube

Saveti 28. sep. 2021

Bioinformatika je mlada nauka, za većinu IT zajednice strana i magična disciplina koja deluje kao nešto izašlo iz naučno-fantastičnog štiva. Samim time i banalno objašnjenje da je “bioinformatička platforma proizvod koji omogućava naučnicima ove oblasti da lakše sarađuju i brže dođu do novih otkrića” ne otkriva baš mnogo.

U ovom tekstu pokušaćemo da rasvetlimo za vas bar deo te misterije, jer se vrlo brzo, kada zagrebemo ispod površine, nalazimo na mnogo poznatijem terenu klasičnih problema kojima se bave računarske nauke.

Kratka istorija bioinformatike

Ali pre toga, jedan vrlo kratak osvrt na bitne stvari iz istorijata i razlog zašto je ova disciplina doživela procvat u poslednje vreme i privukla velike kompanije koje ulažu u njen razvoj.

Genetika, nauka koja proučava gene, nije toliko nova stvar. Gregor Mendel je eksperimentisao sa graškom pre gotovo 2 veka, ali holistički pogled na ceo ljudski genom nam je bio nedokučiv sve do početka 2000ih godina. Tada je u Human Genome projektu prvi put sekvenciran gotovo čitav genom. Dugi niz od oko 3 milijarde baznih parova (ACTG) koje čine čovečiji DNK lanac mapiran je na grupe od preko 20 hiljada gena.

Taj projekat je bio basnoslovno skup, ali je napredak u različitim naukama (od molekularne biologije do računarstva) doveo do toga da je poslednjih desetak godina za neku priuštivu svotu novca od par stotina, do par hiljada dolara moguće očitati genom jednog čoveka. S obzirom da ovakve analize već sada nalaze primenu u medicini, a imaju ogroman potencijal za budućnost i predmet su brojnih cutting-edge istraživanja, prirodno je da su ovakva očitavanja (sekvenciranja) postala sve učestalija i podaci su počeli da se generišu uz eksponencijalni rast.

Sada je bitno napomenuti da je rezultat sekvenciranja jednog uzorka tekstualni fajl veličine par stotina GB i baš taj skok u količini informacija koje želimo obraditi izrodio je potrebu za razvoj bioinformatičke nauke. U ovoj oblasti, iako se još uvek može reći da je u ranoj fazi, mi se susrećemo sa petabajtima genomskih podataka, a u ne tako dalekoj budućnosti čekaju nas egzabajti.

Šta je onda bioinformatička platforma?

Posao bioinformatičke platforme jeste da olakša analizu ove velike količine podataka, da to uradi na siguran način prateći stroge standarde o bezbednosti - jer pričamo o podacima izuzetno osetljive prirode, da omogući ponovljivost i proverljivost analiza koja je bitna za svako naučno istrazivanje, pretragu i vizuelizaciju rezultata procesiranja i da obezbedi skalabilnost potrebnu za neometani rad više klijenata na jednom okruženju.

Srž jedne bioinformatičke platforme je svakako komputacija - podrška za izvršavanje raznorodnih analiza, koje su zapravo razgranata sekvenca različitih alata iz domena bioinformatičkih nauka, izvršenih nad skupom podataka i konfiguracija. Bioinformatičke analize su zahtevne, jer rade nad velikim količinama podataka, ali su često i vrlo kompleksne jer se mogu sastojati iz velikog broja međuzavisnih koraka koji su opisani nekim usmerenim grafom izvršavanja. Bioinformatički alati zahtevaju veliku procesorsku moć i druge resurse (memorija / disk / mreža), pa je zato platforma zadužena za orkestriranje izvršavanja ovog posla. Platforma u ime korisnika dinamički potražuje desetine hiljada CPU jezgara od Cloud Provider-a potrebnih za izvršavanje nekog skupa analiza, koristi ih u tu svrhu par sati ili par dana, koliko god je potrebno da se one završe i na kraju dealocira sve iznajmljene resurse, čuvajući samo krajnje rezultate obrade.

Ako pogledamo sa malo veće razdaljine, možemo na ovaj aspekt platforme da gledamo kao na standardan MapReduce sistem, modifikovan i specijalizovan za potrebe domena u kojem radi, ali i dalje potpuno ograničen IT zajednici mnogo poznatijim zakonistima distribuiranih sistema. Rad na optimizacijama efikasnosti i skalabilnosti ovog dela sistema je beskonačan izvor izazova čisto računarske prirode.

Razvoj Cloud tehnologija je bio esencijalan okidač koji je omogućio praktičnost i efikasnost platforme, dozvoljava nam upravljanje resursima tačno odgovarajuće veličine samo onoliko koliko su nam potrebni i samim time pruža otpornost na raznorodnost analiza koje se izvršavaju. Cloud Computing na malo je danas lak za korišćenje i vrlo udoban, ali na velikom scale-u je postaje komplikovan i nosi sa sobom specifične izazove korišćenja. Cloud provider-i nisu navikli na toliko odsečne promene u potraživanjima i upotrebi različitih resursa, gde u roku od par desetina minuta povećamo upotrebu par hiljada puta u odnosu na ono što nam je potrebno u toku "mirnih" perioda. Održavanje stabilnosti ovog dela sistema je disciplina za sebe. Ako u priču ubacimo i to da su naši klijenti i sami korisnici različitih cloud tehnologija od više vendora (AWS, Google, Azure, Aliyun...) za koje su vezani, posao platforme jeste i da pomiri i unifikuje mogućnosti i ponudi udobnost i ujednačen kvalitet rada za kojeg god vendora se korisnik odluči.

Ništa bez big data-e

Rezultati pojedinačnih analiza bitni su za pojedinačni slučaj i otključavaju različite primene sa pogledom na pojedinca. Sa druge strane postoji velika potreba za obradu nad podacima veće grupe ljudi (kohorte) koji iskazuju osobine koje su interesantne za neko istraživanje. Kada stavimo u perspektivu koja je sirova količina bajtova vezana za jednog pojedinca, analiza kohorte zahteva primenu drugačijih tehnika istraživanja iz prostog razloga ograničenosti današnjih tehnologija, u slučajevima gde baratamo sa desetinama ili stotinama terabajta “živih” podataka iz kojih želimo da izvedemo neki zaključak, idealno u što kraćem vremenskom periodu i što je jeftinije moguće.

Za ovakva istraživanja potrebno je pružiti korisnicima više različitih interfejsa, programskih i vizuelnih, preko kojih je moguće na živo eksperimentisati sa podacima i brzo proveravati različite hipoteze. Ovde uveliko stupamo na uvek popularni BigData teren, gde je poznavanje optimizacionih tehnika i novih tehnologija imperativ da bi se uspešno uhvatili u koštac sa ovim problemom, koji prevazilazi domen.

Da li je to sve?

Na kraju platforma nije samo alat za obradu podataka na mikro i makro nivou, već i ekosistem. Potrebno je obezbediti sve one stvari koje čine da neki proizvod bude kompletan. Mogućnosti za kolaboraciju više naučnika / istraživača, deljenje i objavu radova i rezultata, razvijanje i testiranje novih alata, praćenje metrika analiza, naplata resursa, održavanje prava pristupa, omogućavanje udobnog i sveobuhvatnog programskog pristupa platformi, tu je na desetine proizvoda uklopljenih u jednu celinu.

Sa druge strane firewall-a, one koja nije vidljiva korisnicima, tu je nadgledanje kompleksne arhitekture koju čine stotine mikroservisa, borba sa sigurnosnim prohtevima koji su prožeti kroz čitav sistem, unapređivanje performansi kako bi podržali nove klijente i potpuno drugačije i inovativne načine obrade podataka.

Zaključak je da iako je domen ono što čini naš posao interesantnim, to je uveliko zbog same prirode posla i problema koje domen donosi. Ne moraš da se razumeš u genomiku, nije nužno (mada je korisno) da te interesuje biologija - ako voliš distribuirane sisteme, kompleksne arhitekture, algoritamske probleme, data science, cloud computing, optimizacije upita nad bazama, kompleksne frontend vizuelizacije, unapređivanje inženjerskih veština kroz metodičan rad, sigurno ćes naći neki deo platforme u kojem ćes moći da iskažes svoj talenat, radiš nešto što te ispunjava i pomogneš nam da zajedno kodiramo za zdravije sutra.

Pogledajte sve otvorene pozicije u kompaniji Seven Bridges na ovom linku.

Tagovi

Seven Bridges

Kompanija Seven Bridges pomaže i ubrzava razvoj personalizovane medicine razvojem cloud platforme za obradu i analizu genomskih podataka.

Tvoja prijava je uspešno sačuvana!
Odlično! Da bi imao pristup kompletnom sadržaju bloga potrebno je da završiš proces plaćanja.
Tvoja prijava je uspešna!
Tvoj nalog je aktiviran, sada imaš pristup kompletnom sadržaju bloga.